Use Pixi + other tooling changes #187
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: GH Actions CI | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| branches: | |
| - main | |
| schedule: | |
| # nightly tests, between US and AUS working hours | |
| - cron: "0 3 * * *" | |
| workflow_dispatch: | |
| env: | |
| OE_LICENSE: ${{ github.workspace }}/oe_license.txt | |
| jobs: | |
| main_tests: | |
| name: CI (${{ matrix.os }}, env ${{ matrix.environment }}) | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: true | |
| matrix: | |
| os: [macOS-latest, ubuntu-latest] | |
| environment: | |
| - py311 | |
| - py311openeye | |
| - py312 | |
| - py312openeye | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Set up virtual environment | |
| uses: prefix-dev/setup-pixi@v0.9.5 | |
| with: | |
| pixi-version: v0.66.0 | |
| environments: ${{ matrix.environment }} | |
| frozen: true | |
| - name: License OpenEye Toolkits | |
| if: ${{ contains(matrix.environment, 'openeye') }} | |
| run: | | |
| echo "${SECRET_OE_LICENSE}" > ${OE_LICENSE} | |
| pixi run -e ${{ matrix.environment }} python -c "from openeye import oechem; assert oechem.OEChemIsLicensed()" | |
| env: | |
| SECRET_OE_LICENSE: ${{ secrets.OE_LICENSE }} | |
| - name: Run type-checker | |
| run: pixi run -e ${{ matrix.environment }} run_mypy | |
| - name: Run tests | |
| run: pixi run -e ${{ matrix.environment }} run_tests | |
| - name: codecov | |
| uses: codecov/codecov-action@v5 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| files: ./coverage.xml | |
| verbose: True |