release: v0.3.1 — fix CAG nested-departure form #48
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: | |
| workflow_dispatch: | |
| jobs: | |
| build-linux: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| # FetchContent clones glaze/googletest anonymously; GitHub | |
| # rate-limits anonymous clones under load (intermittent 403). | |
| # Rewriting to the workflow token makes the clone authenticated | |
| # (much higher limit) and removes the recurring flake. | |
| - name: Authenticate git for FetchContent | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| run: | | |
| git config --global url."https://x-access-token:${GH_TOKEN}@github.com/".insteadOf "https://github.com/" | |
| - name: Install dependencies | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y --no-install-recommends \ | |
| build-essential cmake pkg-config clang-format \ | |
| libcurl4-openssl-dev | |
| - name: Build | |
| run: make build | |
| - name: Test | |
| run: make test | |
| - name: Lint | |
| run: make lint | |
| build-macos: | |
| runs-on: macos-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Authenticate git for FetchContent | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| run: | | |
| git config --global url."https://x-access-token:${GH_TOKEN}@github.com/".insteadOf "https://github.com/" | |
| - name: Install dependencies | |
| run: | | |
| brew install pkg-config curl clang-format | |
| echo "CMAKE_PREFIX_PATH=$(brew --prefix curl)" >> "$GITHUB_ENV" | |
| - name: Build | |
| run: make build | |
| - name: Test | |
| run: make test | |
| - name: Lint | |
| run: make lint | |
| build-windows: | |
| runs-on: windows-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Authenticate git for FetchContent | |
| shell: pwsh | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| run: | | |
| git config --global url."https://x-access-token:$env:GH_TOKEN@github.com/".insteadOf "https://github.com/" | |
| - name: Install dependencies (vcpkg) | |
| shell: pwsh | |
| run: | | |
| & "$env:VCPKG_INSTALLATION_ROOT/vcpkg.exe" install ` | |
| openssl:x64-windows curl:x64-windows | |
| "VCPKG_TARGET_TRIPLET=x64-windows" | Out-File -FilePath $env:GITHUB_ENV -Append | |
| "CMAKE_TOOLCHAIN_FILE=$env:VCPKG_INSTALLATION_ROOT/scripts/buildsystems/vcpkg.cmake" | Out-File -FilePath $env:GITHUB_ENV -Append | |
| - name: Build | |
| shell: pwsh | |
| run: | | |
| cmake -S . -B build -DCMAKE_BUILD_TYPE=Release ` | |
| "-DCMAKE_TOOLCHAIN_FILE=$env:CMAKE_TOOLCHAIN_FILE" ` | |
| "-DVCPKG_TARGET_TRIPLET=$env:VCPKG_TARGET_TRIPLET" | |
| cmake --build build --config Release -j | |
| - name: Test | |
| shell: pwsh | |
| run: ctest --test-dir build --output-on-failure -C Release | |
| markdown-lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: DavidAnson/markdownlint-cli2-action@v23 |