Bind a MEOS scalar at the width its ABI defines #20
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: | |
| pull_request: | |
| jobs: | |
| build: | |
| name: Regenerate, build and smoke-test against MEOS | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: '8.0.x' | |
| - name: Provision MEOS (build libmeos + generate catalog) | |
| id: provision | |
| # Derive the MEOS catalog (meos-idl.json) and the libmeos build from upstream | |
| # MobilityDB master through the shared provision-meos action. Tracking master | |
| # (not a pinned commit) keeps the source, the catalog and the native library the | |
| # binding is generated against all moving together. | |
| uses: MobilityDB/MEOS-API/.github/actions/provision-meos@master | |
| with: | |
| mobilitydb-ref: master | |
| build-libmeos: "true" | |
| - name: Regenerate bindings | |
| run: python3 tools/codegen.py "${{ steps.provision.outputs.catalog-path }}" | |
| - name: Report binding drift | |
| run: git --no-pager diff --stat -- MEOS.NET/Internal || true | |
| - name: Build solution | |
| run: dotnet build MEOS.NET.sln -c Release | |
| - name: Run tests | |
| run: dotnet test MEOS.NET.sln -c Release --no-build | |
| - name: Smoke-test the FFI | |
| run: dotnet run --project ExampleApp/ExampleApp.csproj -c Release --no-build | |
| env: | |
| LD_LIBRARY_PATH: ${{ steps.provision.outputs.libmeos-prefix }}/lib |