1616 timeout-minutes : 10
1717 needs :
1818 - unit-tests
19- - test-slurm
2019 # Important: the next line MUST be `if: always()`.
2120 # Do not change that line.
2221 # That line is necessary to make sure that this job runs even if tests fail.
@@ -25,13 +24,11 @@ jobs:
2524 steps :
2625 - run : |
2726 echo unit-tests: ${{ needs.unit-tests.result }}
28- echo test-slurm: ${{ needs.test-slurm.result }}
2927 - run : exit 1
3028 # The last line must NOT end with ||
3129 # All other lines MUST end with ||
3230 if : |
33- (needs.unit-tests.result != 'success') ||
34- (needs.test-slurm.result != 'success')
31+ (needs.unit-tests.result != 'success')
3532 unit-tests :
3633 runs-on : ubuntu-latest
3734 timeout-minutes : 20
5148 with :
5249 version : ${{ matrix.version }}
5350 - uses : julia-actions/julia-runtest@v1
54- test-slurm :
55- runs-on : ubuntu-latest
56- timeout-minutes : 20
57- strategy :
58- fail-fast : false
59- matrix :
60- version :
61- # Please note: You must specify the full Julia version number (major.minor.patch).
62- # This is because the value here will be directly interpolated into a download URL.
63- # - '1.2.0' # minimum Julia version supported in Project.toml
64- - ' 1.6.7' # previous LTS
65- - ' 1.10.7' # current LTS
66- - ' 1.11.2' # currently the latest stable release
67- steps :
68- - uses : actions/checkout@v4
69- with :
70- persist-credentials : false
71- - name : Print Docker version
72- run : |
73- docker --version
74- docker version
75- # This next bit of code is taken from:
76- # https://github.com/kleinhenz/SlurmClusterManager.jl
77- # Original author: Joseph Kleinhenz
78- # License: MIT
79- - name : Setup Slurm inside Docker
80- run : |
81- docker version
82- docker compose version
83- docker build --build-arg "JULIA_VERSION=${MATRIX_JULIA_VERSION:?}" -t slurm-cluster-julia -f ci/Dockerfile .
84- docker compose -f ci/docker-compose.yml up -d
85- docker ps
86- env :
87- MATRIX_JULIA_VERSION : ${{matrix.version}}
88- - name : Print some information for debugging purposes
89- run : |
90- docker exec -t slurmctld pwd
91- docker exec -t slurmctld ls -la
92- docker exec -t slurmctld ls -la ClusterManagers
93- - name : Instantiate package
94- run : docker exec -t slurmctld julia --project=ClusterManagers -e 'import Pkg; @show Base.active_project(); Pkg.instantiate(); Pkg.status()'
95- - name : Run tests without a Slurm allocation
96- run : docker exec -t slurmctld julia --project=ClusterManagers -e 'import Pkg; Pkg.test(; test_args=["slurm"])'
97- - name : Run tests inside salloc
98- run : docker exec -t slurmctld salloc -t 00:10:00 -n 2 julia --project=ClusterManagers -e 'import Pkg; Pkg.test(test_args=["slurm"])'
99- - name : Run tests inside sbatch
100- run : docker exec -t slurmctld ClusterManagers/ci/run_my_sbatch.sh
0 commit comments