Backport PR #3816 on branch 1.4.x (Fix: list of metrics to be recorded in autotune as well as removal of MLX from CUDA installation) #5277
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: test (macos) | |
| on: | |
| pull_request: | |
| branches: [main, "[0-9]+.[0-9]+.x"] | |
| types: [labeled, synchronize, opened] | |
| schedule: | |
| - cron: "0 10 * * *" # runs at 10:00 UTC (03:00 PST) every day | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| test: | |
| # if PR has label "macos tests" or "all tests" or if scheduled or manually triggered or on push | |
| if: >- | |
| ( | |
| contains(github.event.pull_request.labels.*.name, 'macos tests') || | |
| contains(github.event.pull_request.labels.*.name, 'all tests') || | |
| (contains(github.event_name, 'schedule') && github.repository == 'scverse/scvi-tools') || | |
| contains(github.event_name, 'workflow_dispatch') || | |
| contains(github.event_name, 'push') | |
| ) | |
| runs-on: ${{ matrix.os }} | |
| defaults: | |
| run: | |
| shell: bash -e {0} # -e to fail on error | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [macos-14] | |
| python: ["3.12", "3.13", "3.14"] | |
| name: integration | |
| env: | |
| OS: ${{ matrix.os }} | |
| PYTHON: ${{ matrix.python }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ matrix.python }} | |
| cache: "pip" | |
| cache-dependency-path: "**/pyproject.toml" | |
| - name: Install dependencies | |
| run: | | |
| python -m pip install --upgrade pip wheel uv | |
| python -m uv pip install --system "scvi-tools[tests] @ ." | |
| python -m pip install mlx | |
| python -m pip install mlx-metal | |
| - name: Run pytest | |
| env: | |
| MPLBACKEND: agg | |
| PLATFORM: ${{ matrix.os }} | |
| DISPLAY: :42 | |
| COLUMNS: 120 | |
| PYTORCH_MPS_HIGH_WATERMARK_RATIO: 0.0 | |
| PYTORCH_ENABLE_MPS_FALLBACK: 1.0 | |
| run: | | |
| coverage run -m pytest -v --color=yes | |
| coverage report | |
| - uses: codecov/codecov-action@v4 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| flags: macos |