@@ -40,39 +40,10 @@ jobs:
4040 files : ./cmake/ ./CMakeLists.txt ./docs/ ./README.md ./common/ ./fft/ ./examples/ ./install_test/
4141 config : ./.typos.toml
4242
43- # check if Docker images should be recreated
44- check_docker_files :
45- uses : ./.github/workflows/__check_docker_files.yaml
46-
47- with :
48- event_name : ${{ github.event_name }}
49-
50- # build Docker images if necessary
51- build_base :
52- needs : check_docker_files
53-
54- if : ${{ needs.check_docker_files.outputs.docker_files_have_changed == 'true' }}
55-
56- uses : ./.github/workflows/__build_base.yaml
57- permissions :
58- contents : read
59- packages : write
60-
61- with :
62- image_suffix : ${{ needs.check_docker_files.outputs.image_suffix }}
63- image_tag : ${{ needs.check_docker_files.outputs.image_tag }}
64-
6543 # build project
6644 build :
6745 runs-on : ubuntu-latest
6846
69- needs :
70- - check_docker_files
71- - build_base
72-
73- # run this job even if build_base did not run
74- if : ${{ ! cancelled() && (needs.build_base.result == 'success' || needs.build_base.result == 'skipped') }}
75-
7647 strategy :
7748 matrix :
7849 backend :
@@ -203,7 +174,7 @@ jobs:
203174
204175 - name : Configure
205176 run : |
206- docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}_${{ needs.check_docker_files.outputs.image_suffix }}:${{ needs.check_docker_files.outputs.image_tag }} \
177+ docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}:latest \
207178 cmake -B build \
208179 -DCMAKE_BUILD_TYPE=${{ matrix.backend.cmake_build_type }} \
209180 -DCMAKE_C_COMPILER=${{ matrix.backend.compiler.c }} \
@@ -219,7 +190,7 @@ jobs:
219190
220191 - name : Build
221192 run : |
222- docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}_${{ needs.check_docker_files.outputs.image_suffix }}:${{ needs.check_docker_files.outputs.image_tag }} \
193+ docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}:latest \
223194 cmake --build build -j $(( $(nproc) * 2 + 1 ))
224195
225196 - name : Prepare artifacts
@@ -236,12 +207,12 @@ jobs:
236207
237208 # consume the project in a dummy project
238209 # ideally, this part should be executed in a different job using almost
239- # the same `matrix` (minus `target`) as the `build` job and having the
240- # same `needs` and `if` as the `test` job; this would however make a
241- # duplicated and error-prone `matrix`, and sharing a `matrix` between
242- # jobs is currently not possible with GitHub Actions (neither directly,
243- # nor using YAML anchors, other options were too cumbersome when writing
244- # this); consequently, this part is just here for now
210+ # the same `matrix` (minus `target`) as the `build` job; this would
211+ # however make a duplicated and error-prone `matrix`, and sharing a
212+ # `matrix` between jobs is currently not possible with GitHub Actions
213+ # (neither directly, nor using YAML anchors, other options were too
214+ # cumbersome when writing this); consequently, this part is just here for
215+ # now
245216
246217 - name : Prepare as subdirectory
247218 run : |
@@ -252,7 +223,7 @@ jobs:
252223
253224 - name : Configure and build test project as subdirectory
254225 run : |
255- docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}_${{ needs.check_docker_files.outputs.image_suffix }}:${{ needs.check_docker_files.outputs.image_tag }} \
226+ docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}:latest \
256227 cmake -B install_test/as_subdirectory/build \
257228 -DCMAKE_BUILD_TYPE=${{ matrix.backend.cmake_build_type }} \
258229 -DCMAKE_C_COMPILER=${{ matrix.backend.compiler.c }} \
@@ -262,12 +233,12 @@ jobs:
262233 ${{ matrix.backend.cmake_flags.kokkos_fft }} \
263234 ${{ matrix.target.cmake_flags }} \
264235 install_test/as_subdirectory
265- docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}_${{ needs.check_docker_files.outputs.image_suffix }}:${{ needs.check_docker_files.outputs.image_tag }} \
236+ docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}:latest \
266237 cmake --build install_test/as_subdirectory/build
267238
268239 - name : Configure, build and install Kokkos as library
269240 run : |
270- docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}_${{ needs.check_docker_files.outputs.image_suffix }}:${{ needs.check_docker_files.outputs.image_tag }} \
241+ docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}:latest \
271242 cmake -B build_kokkos \
272243 -DCMAKE_INSTALL_PREFIX=/work/install \
273244 -DCMAKE_BUILD_TYPE=${{ matrix.backend.cmake_build_type }} \
@@ -276,14 +247,14 @@ jobs:
276247 -DCMAKE_CXX_STANDARD=${{ matrix.backend.cmake_flags.cxx_standard }} \
277248 ${{ matrix.backend.cmake_flags.kokkos }} \
278249 tpls/kokkos
279- docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}_${{ needs.check_docker_files.outputs.image_suffix }}:${{ needs.check_docker_files.outputs.image_tag }} \
250+ docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}:latest \
280251 cmake --build build_kokkos -j $(( $(nproc) * 2 + 1 ))
281- docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}_${{ needs.check_docker_files.outputs.image_suffix }}:${{ needs.check_docker_files.outputs.image_tag }} \
252+ docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}:latest \
282253 cmake --install build_kokkos
283254
284255 - name : Configure, build and install KokkosFFT as library
285256 run : |
286- docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}_${{ needs.check_docker_files.outputs.image_suffix }}:${{ needs.check_docker_files.outputs.image_tag }} \
257+ docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}:latest \
287258 cmake -B build_kokkos_fft \
288259 -DCMAKE_INSTALL_PREFIX=/work/install\
289260 -DCMAKE_PREFIX_PATH=/work/install \
@@ -293,22 +264,22 @@ jobs:
293264 -DCMAKE_CXX_STANDARD=${{ matrix.backend.cmake_flags.cxx_standard }} \
294265 ${{ matrix.backend.cmake_flags.kokkos_fft }} \
295266 ${{ matrix.target.cmake_flags }}
296- docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}_${{ needs.check_docker_files.outputs.image_suffix }}:${{ needs.check_docker_files.outputs.image_tag }} \
267+ docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}:latest \
297268 cmake --build build_kokkos_fft -j $(( $(nproc) * 2 + 1 ))
298- docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}_${{ needs.check_docker_files.outputs.image_suffix }}:${{ needs.check_docker_files.outputs.image_tag }} \
269+ docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}:latest \
299270 cmake --install build_kokkos_fft
300271
301272 - name : Configure and build test project as library
302273 run : |
303- docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}_${{ needs.check_docker_files.outputs.image_suffix }}:${{ needs.check_docker_files.outputs.image_tag }} \
274+ docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}:latest \
304275 cmake -B install_test/as_library/build \
305276 -DCMAKE_BUILD_TYPE=${{ matrix.backend.cmake_build_type }} \
306277 -DCMAKE_PREFIX_PATH=/work/install \
307278 -DCMAKE_C_COMPILER=${{ matrix.backend.compiler.c }} \
308279 -DCMAKE_CXX_COMPILER=${{ matrix.backend.compiler.cxx }} \
309280 -DCMAKE_CXX_STANDARD=${{ matrix.backend.cmake_flags.cxx_standard }} \
310281 install_test/as_library
311- docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}_${{ needs.check_docker_files.outputs.image_suffix }}:${{ needs.check_docker_files.outputs.image_tag }} \
282+ docker run -v ${{ github.workspace }}:/work ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}:latest \
312283 cmake --build install_test/as_library/build -j $(( $(nproc) * 2 + 1 ))
313284
314285 # test the project
@@ -317,12 +288,8 @@ jobs:
317288 continue-on-error : ${{ matrix.backend.unstable }}
318289
319290 needs :
320- - check_docker_files
321291 - build
322292
323- # run this job even if build_base did not run
324- if : ${{ ! cancelled() && needs.build.result == 'success' }}
325-
326293 strategy :
327294 matrix :
328295 backend :
@@ -382,7 +349,7 @@ jobs:
382349 run \
383350 -m "singularity/3.8.3/gcc-11.2.0" \
384351 -e local \
385- singularity pull oras://ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}_singularity_${{ needs.check_docker_files.outputs.image_suffix }}:${{ needs.check_docker_files.outputs.image_tag }}
352+ singularity pull oras://ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}_singularity:latest
386353 if : ${{ matrix.backend.use_singularity }}
387354
388355 - name : Run CUDA tests within Slurm job and Singularity image
@@ -391,12 +358,12 @@ jobs:
391358 -m "singularity/3.8.3/gcc-11.2.0" \
392359 -e gpu \
393360 -g a100 \
394- singularity run --nv --bind $PWD/build:/work/build -H /work/build base_${{ matrix.backend.image }}_singularity_${{ needs.check_docker_files.outputs.image_suffix }}_${{ needs.check_docker_files.outputs.image_tag }} .sif \
361+ singularity run --nv --bind $PWD/build:/work/build -H /work/build base_${{ matrix.backend.image }}_singularity_latest .sif \
395362 ctest --output-on-failure
396363 if : ${{ matrix.backend.use_singularity }}
397364
398365 - name : Run OpenMP/Threads/Serial tests within Docker image
399366 run : |
400- docker run -v $PWD/build:/work/build -w /work/build ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}_${{ needs.check_docker_files.outputs.image_suffix }}:${{ needs.check_docker_files.outputs.image_tag }} \
367+ docker run -v $PWD/build:/work/build -w /work/build ghcr.io/kokkos/kokkos-fft/base_${{ matrix.backend.image }}:latest \
401368 ctest --output-on-failure
402369 if : ${{ ! matrix.backend.use_singularity }}
0 commit comments