ci: add GitHub Actions CI for Linux/macOS/Windows #6
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| build-linux: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install Xlings | |
| env: | |
| XLINGS_NON_INTERACTIVE: 1 | |
| run: | | |
| curl -fsSL https://raw.githubusercontent.com/d2learn/xlings/refs/heads/main/tools/other/quick_install.sh | bash | |
| echo "XLINGS_HOME=$HOME/.xlings" >> "$GITHUB_ENV" | |
| echo "$HOME/.xlings/subos/current/bin" >> "$GITHUB_PATH" | |
| - name: Install dependencies | |
| run: xlings install | |
| - name: Build | |
| run: xmake build -a -y -vvD | |
| - name: Test | |
| run: | | |
| xmake run test_types -y -vvD | |
| xmake run test_serialization -y -vvD | |
| xmake run test_coro -y -vvD | |
| xmake run test_client -y -vvD | |
| xmake run test_openai_serialize -y -vvD | |
| xmake run test_anthropic_serialize -y -vvD | |
| xmake run test_llmapi_integration -y -vvD | |
| build-macos: | |
| runs-on: macos-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install Xlings | |
| env: | |
| XLINGS_NON_INTERACTIVE: 1 | |
| run: | | |
| curl -fsSL https://raw.githubusercontent.com/d2learn/xlings/refs/heads/main/tools/other/quick_install.sh | bash | |
| echo "XLINGS_HOME=$HOME/.xlings" >> "$GITHUB_ENV" | |
| echo "$HOME/.xlings/subos/current/bin" >> "$GITHUB_PATH" | |
| - name: Install dependencies | |
| run: xlings install | |
| - name: Configure xmake | |
| run: xmake f --toolchain=llvm --sdk="$HOME/.xlings/data/xpkgs/xim-x-llvm/20.0.7" -y -vvD | |
| - name: Build | |
| run: xmake build -a -y -vvD | |
| - name: Test | |
| run: | | |
| xmake run test_types -y -vvD | |
| xmake run test_serialization -y -vvD | |
| xmake run test_coro -y -vvD | |
| xmake run test_client -y -vvD | |
| xmake run test_openai_serialize -y -vvD | |
| xmake run test_anthropic_serialize -y -vvD | |
| xmake run test_llmapi_integration -y -vvD | |
| build-windows: | |
| runs-on: windows-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install Xlings | |
| env: | |
| XLINGS_NON_INTERACTIVE: "1" | |
| shell: pwsh | |
| run: | | |
| irm https://raw.githubusercontent.com/d2learn/xlings/refs/heads/main/tools/other/quick_install.ps1 | iex | |
| echo "XLINGS_HOME=$env:USERPROFILE\.xlings" >> $env:GITHUB_ENV | |
| echo "$env:USERPROFILE\.xlings\subos\current\bin" >> $env:GITHUB_PATH | |
| - name: Install dependencies | |
| run: xlings install | |
| - name: Build | |
| run: xmake build -a -y -vvD | |
| - name: Test | |
| run: | | |
| xmake run test_types -y -vvD | |
| xmake run test_serialization -y -vvD | |
| xmake run test_coro -y -vvD | |
| xmake run test_client -y -vvD | |
| xmake run test_openai_serialize -y -vvD | |
| xmake run test_anthropic_serialize -y -vvD | |
| xmake run test_llmapi_integration -y -vvD |