1 # Initial build that always needs to pass before follow-up stages run
4 - .simple-build-template
5 - .build-cache-template
7 - .gcc-before-script-template
11 COMPILER_MAJOR_VERSION: 7
12 BUILD_DIR: simple-build
17 # Jobs running in first pre-build stage
19 .configure-extends-template:
21 - .configure-build-template
25 .configure-release-extends-template:
27 - .configure-build-release-template
31 # Templates for configuration stage
34 - .configure-extends-template
35 - .gcc-before-script-template
38 .configure-gcc-release:
40 - .configure-release-extends-template
41 - .gcc-before-script-template
57 COMPILER_MAJOR_VERSION: 7
62 configure-gcc-7-release:
64 - .configure-gcc-release
68 COMPILER_MAJOR_VERSION: 7
69 RELEASE_BUILD_DIR: release-builds-gcc
78 - package-archive-release
79 - package-regressiontests-release
80 - prepare-release-version
82 configure-gcc-7-simd-sse41:
90 COMPILER_MAJOR_VERSION: 7
91 CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=SSE4.1"
96 configure-gcc-7-double:
104 COMPILER_MAJOR_VERSION: 7
105 CMAKE_PRECISION_OPTIONS: -DGMX_DOUBLE=ON
110 configure-gcc-7-double-release:
112 - .configure-gcc-release
116 COMPILER_MAJOR_VERSION: 7
117 CMAKE_PRECISION_OPTIONS: -DGMX_DOUBLE=ON
118 RELEASE_BUILD_DIR: release-builds-gcc
127 - package-archive-release
128 - package-regressiontests-release
129 - prepare-release-version
131 configure-gcc-7-gmxapi:
134 - .configure-gmxapi-template
140 COMPILER_MAJOR_VERSION: 7
145 configure-gcc-7-gmxapi-release:
147 - .configure-gcc-release
148 - .configure-gmxapi-template
152 COMPILER_MAJOR_VERSION: 7
153 RELEASE_BUILD_DIR: release-builds-gcc
162 - package-archive-release
163 - package-regressiontests-release
164 - prepare-release-version
174 COMPILER_MAJOR_VERSION: 8
179 configure-gcc-8-release:
181 - .configure-gcc-release
185 COMPILER_MAJOR_VERSION: 8
186 RELEASE_BUILD_DIR: release-builds-gcc
195 - package-archive-release
196 - package-regressiontests-release
197 - prepare-release-version
199 configure-gcc-8-cuda-10.2:
201 - .configure-gcc-cuda
202 - .gcc-8-cuda-10.2-template
212 - .configure-extends-template
213 - .clang-before-script-template
214 - .build-clang-template
216 .configure-clang-release:
218 - .configure-release-extends-template
219 - .clang-before-script-template
220 - .build-clang-template
222 # For version of clang before 7, we need to always provide the full version
223 # Use something like this instead in the download script:
224 # APT_COMPILER_VERSION=$(($COMPILER_MAJOR_VERSION < 7 ? "${COMPILER_MAJOR_VERSION}.0" : $COMPILER_MAJOR_VERSION))
233 COMPILER_MAJOR_VERSION: "6.0"
234 CMAKE_MPI_OPTIONS: -DGMX_OPENMP=OFF
247 COMPILER_MAJOR_VERSION: 7
252 configure-clang-7-release:
254 - .configure-clang-release
258 COMPILER_MAJOR_VERSION: 7
259 RELEASE_BUILD_DIR: release-builds-clang
268 - package-archive-release
269 - package-regressiontests-release
270 - prepare-release-version
272 configure-clang-7-gmxapi:
275 - .configure-gmxapi-template
281 COMPILER_MAJOR_VERSION: 7
286 configure-clang-7-gmxapi-release:
288 - .configure-clang-release
289 - .configure-gmxapi-template
293 COMPILER_MAJOR_VERSION: 7
294 RELEASE_BUILD_DIR: release-builds-clang
303 - package-archive-release
304 - package-regressiontests-release
305 - prepare-release-version
315 COMPILER_MAJOR_VERSION: 8
320 configure-clang-8-release:
322 - .configure-clang-release
326 COMPILER_MAJOR_VERSION: 8
327 RELEASE_BUILD_DIR: release-builds-clang
336 - package-archive-release
337 - package-regressiontests-release
338 - prepare-release-version
340 # Jobs running during build stage
342 .build-extends-template:
344 - .binary-build-template
345 - .build-cache-template
350 - .build-extends-template
351 - .gcc-before-script-template
352 - .build-gcc-template
366 - job: configure-gcc-7
378 BUILD_DIR: release-builds-gcc
380 - job: configure-gcc-7-release
390 build-gcc-7-simd-sse41:
397 - job: configure-gcc-7-simd-sse41
410 - job: configure-gcc-7-double
419 - .gmxapi-extra-installs
424 - job: configure-gcc-7-gmxapi
430 build-gcc-7-double-release:
436 BUILD_DIR: release-builds-gcc
438 - job: configure-gcc-7-double-release
448 build-gcc-7-gmxapi-release:
451 - .gmxapi-extra-installs
455 BUILD_DIR: release-builds-gcc
457 - job: configure-gcc-7-gmxapi-release
474 - job: configure-gcc-8
486 BUILD_DIR: release-builds-gcc
488 - job: configure-gcc-8-release
498 build-gcc-8-cuda-10.2:
501 - .gcc-8-cuda-10.2-template
505 - job: configure-gcc-8-cuda-10.2
513 - .build-extends-template
514 - .clang-before-script-template
515 - .build-clang-template
524 - job: configure-clang-6
537 - job: configure-clang-7
543 build-clang-7-release:
549 BUILD_DIR: release-builds-clang
551 - job: configure-clang-7-release
561 build-clang-7-gmxapi:
564 - .gmxapi-extra-installs
569 - job: configure-clang-7-gmxapi
575 build-clang-7-gmxapi-release:
578 - .gmxapi-extra-installs
582 BUILD_DIR: release-builds-clang
584 - job: configure-clang-7-gmxapi-release
601 - job: configure-clang-8
607 build-clang-8-release:
613 BUILD_DIR: release-builds-clang
615 - job: configure-clang-8-release
626 # Jobs running during test stage
630 # Docker image uploaded to dockerhub by user eriklindahl
631 # TODO: Get DockerFile for admin/dockerfiles
632 image: biophysics/gcc-gromacs
637 .test-script-template:
640 - ctest -D ExperimentalTest --output-on-failure | tee ctestLog.log || true
641 - awk '/The following tests FAILED/,/^Errors while running CTest|^$/'
642 ctestLog.log | tee ctestErrors.log
643 - xsltproc scripts/CTest2JUnit.xsl Testing/`head -n 1 < Testing/TAG`/Test.xml > JUnitTestResults.xml
644 - if [ -s ctestErrors.log ] ; then
645 echo "Error during running ctest";
651 junit: $BUILD_DIR/JUnitTestResults.xml
658 .test-extends-template:
660 - .test-base-template
661 - .pull-cache-template
662 - .test-script-template
667 COMPILER_MAJOR_VERSION: 7
672 - .test-extends-template
673 - .gcc-before-script-template
699 BUILD_DIR: release-builds-gcc
701 - job: configure-gcc-7-release
703 - job: build-gcc-7-release
713 test-gcc-7-simd-sse41:
720 - job: build-gcc-7-simd-sse41
732 - job: build-gcc-7-double
737 test-gcc-7-double-release:
743 BUILD_DIR: release-builds-gcc
745 - job: configure-gcc-7-double-release
747 - job: build-gcc-7-double-release
760 - .gmxapi-extra-installs
765 - job: build-gcc-7-gmxapi
770 test-gcc-7-gmxapi-release:
773 - .gmxapi-extra-installs
777 BUILD_DIR: release-builds-gcc
779 - job: configure-gcc-7-gmxapi-release
781 - job: build-gcc-7-gmxapi-release
809 BUILD_DIR: release-builds-gcc
811 - job: configure-gcc-8-release
813 - job: build-gcc-8-release
823 test-gcc-8-cuda-10.2:
825 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
826 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
829 - .gcc-8-cuda-10.2-template
833 - job: build-gcc-8-cuda-10.2
838 .test-clang-template:
840 COMPILER_MAJOR_VERSION: 7
841 BUILD_DIR: build-clang
845 - .test-extends-template
846 - .clang-before-script-template
847 - .test-clang-template
873 test-clang-7-release:
879 BUILD_DIR: release-builds-clang
881 - job: configure-clang-7-release
883 - job: build-clang-7-release
896 - .gmxapi-extra-installs
901 - job: build-clang-7-gmxapi
906 test-clang-7-gmxapi-release:
909 - .gmxapi-extra-installs
913 BUILD_DIR: release-builds-clang
915 - job: configure-clang-7-gmxapi-release
917 - job: build-clang-7-gmxapi-release
939 test-clang-8-release:
945 BUILD_DIR: release-builds-clang
947 - job: configure-clang-8-release
949 - job: build-clang-8-release