diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 05016be..78ad007 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -23,6 +23,23 @@ jobs: - name: Run tests run: just test + build-extension: + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, macos-latest, windows-latest] + steps: + - uses: actions/checkout@v4 + - name: Setup Rust + uses: actions-rs/toolchain@v1 + with: + toolchain: stable + - name: Setup just + uses: extractions/setup-just@v1 + - name: Build native extension + run: just build-extension + nix: runs-on: ubuntu-latest steps: @@ -34,3 +51,15 @@ jobs: experimental-features = nix-command flakes - name: Run tests via Nix run: nix develop -c just test + + nix-build-extension: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: cachix/install-nix-action@v27 + with: + nix_path: nixpkgs=channel:nixos-24.05 + extra_nix_config: | + experimental-features = nix-command flakes + - name: Build extension via Nix + run: nix develop -c just build-extension diff --git a/flake.nix b/flake.nix index 6a1e556..4d913f8 100644 --- a/flake.nix +++ b/flake.nix @@ -19,8 +19,9 @@ rustc cargo libiconv # required as a dependency when building the rb-sys Rust crate - + # For build automation + libclang # required for building the rb-sys-env build tools just git-lfs ];