refactor: Migrate to cpp based duckdb layout #19
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: | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }}-${{ github.head_ref || '' }}-${{ github.base_ref || '' }}-${{ github.ref != 'refs/heads/main' || github.sha }} | |
| cancel-in-progress: true | |
| jobs: | |
| rust-check: | |
| name: Rust checks | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - name: Install Protoc | |
| uses: arduino/setup-protoc@v3 | |
| with: | |
| repo-token: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Check formatting | |
| run: cargo fmt -- --check | |
| - name: Run clippy | |
| run: cargo clippy --all-targets --all-features -- -D warnings | |
| test: | |
| name: Test on ${{ matrix.os }} | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest, macos-latest, windows-latest] | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - name: Install Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.11" | |
| - name: Install Protoc | |
| uses: arduino/setup-protoc@v3 | |
| with: | |
| repo-token: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Install DuckDB Python | |
| run: | | |
| python -m pip install duckdb==1.3.2 | |
| - name: Install Ninja | |
| shell: bash | |
| run: | | |
| if [ "$RUNNER_OS" == "Linux" ]; then | |
| sudo apt-get update && sudo apt-get install -y ninja-build | |
| elif [ "$RUNNER_OS" == "macOS" ]; then | |
| brew install ninja | |
| elif [ "$RUNNER_OS" == "Windows" ]; then | |
| choco install ninja | |
| fi | |
| - name: Setup Ccache | |
| uses: hendrikmuhs/ccache-action@v1 | |
| continue-on-error: true | |
| with: | |
| key: ${{ github.job }}-${{ matrix.os }}-duckdb-v1.3.2 | |
| - name: Build and test | |
| shell: bash | |
| run: | | |
| GEN=ninja make debug | |
| GEN=ninja make test_debug |