- .rules:basic-push
stage: pre-build
image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
- tags: []
variables:
KUBERNETES_CPU_LIMIT: 8
KUBERNETES_CPU_REQUEST: 4
variables:
COMPILER_MAJOR_VERSION: 8
-gromacs:clang-9:configure:
+gromacs:clang-9-mpi:configure:
extends:
- .gromacs:base:configure
- .use-clang:base
- .use-ccache
- .rules:merge-requests
image: gromacs/cmake-3.13.0-llvm-8-tsan:master
+ tags:
+ - k8s-scilifelab
needs:
- job: gromacs:clang-ASAN:configure
- .use-ccache
- .rules:merge-requests
image: gromacs/cmake-3.13.0-llvm-8-tsan:master
+ tags:
+ - k8s-scilifelab
needs:
- job: gromacs:clang-static-analyzer:configure
needs:
- job: gromacs:clang-8:configure
-gromacs:clang-9:build:
+gromacs:clang-9-mpi:build:
extends:
- .variables:default
- .gromacs:base:build
- .rules:merge-requests
image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
needs:
- - job: gromacs:clang-9:configure
+ - job: gromacs:clang-9-mpi:configure
gromacs:gcc-8-cuda-10.1:release:build:
extends:
variables:
KUBERNETES_EXTENDED_RESOURCE_NAME: "amd.com/gpu"
KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
+ tags:
+ - k8s-scilifelab
needs:
- job: gromacs:gcc-7:build
variables:
KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
+ tags:
+ - k8s-scilifelab
needs:
- job: gromacs:gcc-8-cuda-10.1:build
image: gromacs/cmake-3.13.0-llvm-8-tsan:master
variables:
CTEST_RUN_MODE: "ExperimentalMemCheck"
+ tags:
+ - k8s-scilifelab
needs:
- job: gromacs:clang-ASAN:build
-gromacs:clang-9:test:
+gromacs:clang-9-mpi:test:
extends:
- .gromacs:base:test
- .rules:merge-requests
image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
+ tags:
+ - k8s-scilifelab
needs:
- - job: gromacs:clang-9:build
+ - job: gromacs:clang-9-mpi:build
gromacs:gcc-7:regressiontest:
extends:
REGRESSIONTEST_PME_RANK_NUMBER: 0
REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
REGRESSIONTEST_OMP_RANK_NUMBER: 1
+ tags:
+ - k8s-scilifelab
needs:
- job: gromacs:gcc-7:build
- job: regressiontests:prepare
REGRESSIONTEST_PME_RANK_NUMBER: 0
REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
REGRESSIONTEST_OMP_RANK_NUMBER: 1
+ tags:
+ - k8s-scilifelab
needs:
- job: gromacs:gcc-8-cuda-10.1:build
- job: regressiontests:prepare
- .gromacs:base:regressiontest
- .rules:merge-requests
image: gromacs/cmake-3.15.7-llvm-8-intelopencl-openmpi:2020
+ tags:
+ - k8s-scilifelab
needs:
- job: gromacs:clang-8:build
- job: regressiontests:prepare
- .gromacs:base:regressiontest
- .rules:merge-requests
image: gromacs/cmake-3.13.0-llvm-8-tsan:master
+ tags:
+ - k8s-scilifelab
needs:
- job: gromacs:clang-TSAN:build
- job: regressiontests:prepare
- .use-clang:base
- .rules:merge-requests
image: gromacs/cmake-3.13.0-llvm-8-tsan:master
+ tags:
+ - k8s-scilifelab
needs:
- job: gromacs:clang-ASAN:build
- job: regressiontests:prepare
variables:
REGRESSIONTEST_DOUBLE: "-double"
REGRESSIONTEST_PARALLEL: "-np"
+ tags:
+ - k8s-scilifelab
needs:
- - job: gromacs:clang-9:build
+ - job: gromacs:clang-9-mpi:build
- job: regressiontests:prepare
gromacs:gcc-8-cuda-10.1:release:test:
stage: release-tests
image: gromacs/cmake-3.15.7-gcc-8-cuda-10.1-nvidiaopencl-clfft-openmpi:master
variables:
+ KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
+ KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
BUILD_DIR: release-builds-gcc
+ tags:
+ - k8s-scilifelab
needs:
- job: gromacs:gcc-8-cuda-10.1:release:configure
- job: gromacs:gcc-8-cuda-10.1:release:build
stage: release-tests
image: gromacs/cmake-3.15.7-llvm-8-cuda-10.1-openmpi:master
variables:
+ KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
+ KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
BUILD_DIR: release-builds-clang
+ tags:
+ - k8s-scilifelab
needs:
- job: gromacs:clang-8-cuda-10.1:release:configure
- job: gromacs:clang-8-cuda-10.1:release:build
image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
variables:
BUILD_DIR: release-builds-gcc
+ tags:
+ - k8s-scilifelab
needs:
- job: gromacs:gcc-7:release:build
- job: regressiontests:package
BUILD_DIR: release-builds-clang
REGRESSIONTEST_DOUBLE: "-double"
REGRESSIONTEST_PARALLEL: "-np"
+ tags:
+ - k8s-scilifelab
needs:
- job: gromacs:clang-9:release:build
- job: regressiontests:package
REGRESSIONTEST_PME_RANK_NUMBER: 0
REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
REGRESSIONTEST_OMP_RANK_NUMBER: 1
-
+ tags:
+ - k8s-scilifelab
needs:
- job: gromacs:clang-8-cuda-10.1:release:build
- job: regressiontests:package
to regular job definitions (don't use in "hidden" or parent jobs).
tags
- By `default <https://docs.gitlab.com/ee/ci/yaml/#setting-default-parameters>`__,
- jobs require the ``k8s-scilifelab`` tag, which identifies Runners in the
- |Gromacs| infrastructure. A small number of jobs in the first pipeline
- stage override the default with an empty tag list so that all GitLab
- users can run basic tests in their forked project.
+ Jobs that can only run in the |Gromacs| GitLab CI Runner infrastructure
+ should require the ``k8s-scilifelab`` tag.
+ These include jobs that specify Kubernetes configuration variables or
+ require special facilities, such as GPUs or MPI.
+ Note that the *tag* controls which Runners are eligible to take a job.
+ It does not affect whether the job is eligible for addition to a particular pipeline.
+ Additional *rules* logic should be used to make sure that jobs with the
+ ``k8s-scilifelab`` do not become eligible for pipelines launched outside
+ of the |Gromacs| project environment.
+ See, for instance, :term:`CI_PROJECT_NAMESPACE`
variables
Many job definitions will add or override keys in *variables*.