@@ -3,7 +3,11 @@ name: Pipeline
33on :
44 push :
55 branches : [ main ]
6+ paths-ignore :
7+ - ' docs/**'
68 pull_request :
9+ paths-ignore :
10+ - ' docs/**'
711
812jobs :
913 black :
@@ -98,6 +102,18 @@ jobs:
98102 pip install . --no-deps --no-build-isolation
99103 pip check
100104
105+ uv_check :
106+ needs : [black]
107+ runs-on : ubuntu-latest
108+ steps :
109+ - uses : actions/checkout@v4
110+ - uses : astral-sh/setup-uv@v7
111+ - name : Install the project and pip check
112+ shell : bash -l {0}
113+ run : |
114+ uv sync --all-extras --dev
115+ pip check
116+
101117 benchmark :
102118 needs : [black]
103119 runs-on : ${{ matrix.operating-system }}
@@ -149,7 +165,7 @@ jobs:
149165 - name : Setup Mambaforge
150166 uses : conda-incubator/setup-miniconda@v3
151167 with :
152- python-version : " 3.12 "
168+ python-version : " 3.13 "
153169 miniforge-version : latest
154170 channels : conda-forge
155171 conda-remove-defaults : " true"
@@ -164,7 +180,7 @@ jobs:
164180 papermill notebooks/1-single-node.ipynb notebooks/1-single-node-out.ipynb -k python3
165181 flux start papermill notebooks/2-hpc-cluster.ipynb notebooks/2-hpc-cluster-out.ipynb -k python3
166182 flux start papermill notebooks/3-hpc-job.ipynb notebooks/3-hpc-job-out.ipynb -k python3
167- papermill notebooks/4 -developer.ipynb notebooks/4 -developer-out.ipynb -k python3
183+ papermill notebooks/5 -developer.ipynb notebooks/5 -developer-out.ipynb -k python3
168184
169185 notebooks_integration :
170186 needs : [black]
@@ -174,7 +190,7 @@ jobs:
174190 - name : Setup Mambaforge
175191 uses : conda-incubator/setup-miniconda@v3
176192 with :
177- python-version : " 3.12 "
193+ python-version : " 3.13 "
178194 miniforge-version : latest
179195 channels : conda-forge
180196 conda-remove-defaults : " true"
@@ -186,8 +202,8 @@ jobs:
186202 shell : bash -l {0}
187203 timeout-minutes : 20
188204 run : |
189- flux start papermill notebooks/5 -1-gpaw.ipynb notebooks/5 -1-gpaw-out.ipynb -k python3
190- flux start papermill notebooks/5 -2-quantum-espresso.ipynb notebooks/5 -2-quantum-espresso-out.ipynb -k python3
205+ flux start papermill notebooks/4 -1-gpaw.ipynb notebooks/4 -1-gpaw-out.ipynb -k python3
206+ flux start papermill notebooks/4 -2-quantum-espresso.ipynb notebooks/4 -2-quantum-espresso-out.ipynb -k python3
191207
192208 unittest_flux_mpich :
193209 needs : [black]
@@ -202,7 +218,7 @@ jobs:
202218 cat .ci_support/environment-mpich.yml
203219 - uses : conda-incubator/setup-miniconda@v3
204220 with :
205- python-version : ' 3.12 '
221+ python-version : ' 3.13 '
206222 miniforge-version : latest
207223 channels : conda-forge
208224 conda-remove-defaults : " true"
@@ -218,7 +234,7 @@ jobs:
218234 timeout-minutes : 5
219235 run : >
220236 flux start
221- python -m unittest tests/test_fluxpythonspawner .py tests/test_fluxjobexecutor_plot .py tests/test_fluxjobexecutor .py tests/test_fluxclusterexecutor .py;
237+ python -m unittest tests/unit/task_scheduler/interactive/test_spawner_flux .py tests/unit/executor/test_flux_job_plot .py tests/unit/executor/test_flux_job .py tests/unit/executor/test_flux_cluster .py;
222238
223239 unittest_flux_openmpi :
224240 needs : [black]
@@ -233,7 +249,7 @@ jobs:
233249 cat .ci_support/environment-openmpi.yml
234250 - uses : conda-incubator/setup-miniconda@v3
235251 with :
236- python-version : ' 3.12 '
252+ python-version : ' 3.13 '
237253 miniforge-version : latest
238254 channels : conda-forge
239255 conda-remove-defaults : " true"
@@ -249,7 +265,7 @@ jobs:
249265 timeout-minutes : 5
250266 run : >
251267 flux start
252- coverage run -a -m unittest tests/test_fluxpythonspawner .py tests/test_fluxjobexecutor_plot .py tests/test_fluxjobexecutor .py tests/test_fluxclusterexecutor .py;
268+ coverage run -a -m unittest tests/unit/task_scheduler/interactive/test_spawner_flux .py tests/unit/executor/test_flux_job_plot .py tests/unit/executor/test_flux_job .py tests/unit/executor/test_flux_cluster .py;
253269 coverage report;
254270 coverage xml
255271 env :
@@ -289,11 +305,11 @@ jobs:
289305 timeout-minutes : 5
290306 run : |
291307 pip install . --no-deps --no-build-isolation
292- cd tests
308+ cd tests/unit
293309 sinfo -o "%n %e %m %a %c %C"
294310 srun --mpi=list
295- python -m unittest test_slurmjobexecutor .py
296- python -m unittest test_slurmclusterexecutor .py
311+ python -m unittest executor/test_slurm_job .py
312+ python -m unittest executor/test_slurm_cluster .py
297313
298314 unittest_mpich :
299315 needs : [black]
@@ -436,7 +452,7 @@ jobs:
436452 GH_TOKEN : ${{secrets.GITHUB_TOKEN}}
437453
438454 uml :
439- needs : [unittest_slurm_mpich, unittest_old, unittest_win, unittest_openmpi, unittest_mpich, unittest_flux_openmpi, unittest_flux_mpich, notebooks, benchmark, minimal, pip_check, mypy]
455+ needs : [uv_check, unittest_slurm_mpich, unittest_old, unittest_win, unittest_openmpi, unittest_mpich, unittest_flux_openmpi, unittest_flux_mpich, notebooks, benchmark, minimal, pip_check, mypy]
440456 runs-on : ubuntu-latest
441457 steps :
442458 - uses : actions/checkout@v4
0 commit comments