Skip to content

.github/workflows/full_cluster_tests.yml #4

.github/workflows/full_cluster_tests.yml

.github/workflows/full_cluster_tests.yml #4

# Run integration tests on a self-hosted runner using all slurm clusters.
on:
push:
branches: "master" # every time a push is made to `master`, OR
schedule:
- cron: "30 6 * * 1" # every Monday at 6:30 AM UTC (2:30 AM Montreal time) OR
workflow_dispatch: # when the workflow is manually triggered
# https://stackoverflow.com/a/72408109/6388696
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-concurrency-to-cancel-any-in-progress-job-or-run
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
real-slurm-integration-tests:
name: integration tests with a real SLURM cluster
strategy:
max-parallel: 5
fail-fast: false
matrix:
# TODO: Setup self-hosted runners inside Mac and Windows VMs.
python-version: ['3.11']
cluster: ['mila', 'narval', 'beluga', 'cedar', 'graham']
uses: ./.github/workflows/testing.yml
with:
cluster: ${{ matrix.cluster }}
python-version: ${{ matrix.python-version }}
timeout-minutes: 60
secrets:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}