Custom dataloader registry support #23
This file contains 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 (custom dataloaders) | |
on: | |
push: | |
branches: [main, "[0-9]+.[0-9]+.x"] | |
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 "custom_dataloader" or "all tests" or if scheduled or manually triggered | |
if: >- | |
( | |
contains(github.event.pull_request.labels.*.name, 'custom_dataloader') || | |
contains(github.event.pull_request.labels.*.name, 'all tests') || | |
contains(github.event_name, 'schedule') || | |
contains(github.event_name, 'workflow_dispatch') | |
) | |
runs-on: ${{ matrix.os }} | |
defaults: | |
run: | |
shell: bash -e {0} # -e to fail on error | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest] | |
python: ["3.11"] | |
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 tiledbsoma | |
python -m pip install s3fs | |
python -m pip install torchdata | |
python -m pip install psutil | |
- name: Install Specific Branch of Repository | |
env: | |
GH_TOKEN: ${{ secrets.GH_TOKEN }} | |
run: | | |
git config --global url."https://${GH_TOKEN}:[email protected]/".insteadOf "https://github.com/" | |
git clone --single-branch --branch ebezzi/census-scvi-datamodule https://github.com/ori-kron-wis/cellxgene-census.git | |
- name: Run specific custom dataloader pytest | |
env: | |
MPLBACKEND: agg | |
PLATFORM: ${{ matrix.os }} | |
DISPLAY: :42 | |
COLUMNS: 120 | |
run: | | |
coverage run -m pytest tests/dataloaders/test_custom_dataloader.py -v --color=yes --custom-dataloader-tests | |
coverage report | |
- uses: codecov/codecov-action@v4 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} |