Skip to content

ci: add GitHub Actions CI for Linux/macOS/Windows #6

ci: add GitHub Actions CI for Linux/macOS/Windows

ci: add GitHub Actions CI for Linux/macOS/Windows #6

Workflow file for this run

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