.gitlab-ci.yml 2.5 KB
Newer Older
Lars Bilke's avatar
Lars Bilke committed
1
stages:
2
  - preparation
Lars Bilke's avatar
Lars Bilke committed
3
  - build
Lars Bilke's avatar
Lars Bilke committed
4
  - check
Lars Bilke's avatar
Lars Bilke committed
5
  - release
Lars Bilke's avatar
Lars Bilke committed
6
  - package
Lars Bilke's avatar
Lars Bilke committed
7

8
variables:
9
  # Docker image names
Lars Bilke's avatar
Lars Bilke committed
10 11 12
  CONTAINER_GCC_IMAGE: $CI_REGISTRY/ogs/$CI_PROJECT_NAME/gcc
  CONTAINER_GCC_GUI_IMAGE: $CI_REGISTRY/ogs/$CI_PROJECT_NAME/gcc-gui
  CONTAINER_CLANG_IMAGE: $CI_REGISTRY/ogs/$CI_PROJECT_NAME/clang
Lars Bilke's avatar
Lars Bilke committed
13 14
  XUNIT_TO_JUNIT_IMAGE: $CI_REGISTRY/ogs/$CI_PROJECT_NAME/xunit-to-junit
  PRECOMMIT_IMAGE: $CI_REGISTRY/ogs/$CI_PROJECT_NAME/pre-commit
Lars Bilke's avatar
Lars Bilke committed
15
  WEB_IMAGE: $CI_REGISTRY/ogs/$CI_PROJECT_NAME/web
16 17 18
  # Build config
  BUILD_TYPE: Release
  BUILD_PROCESSES: "" # Empty string: builds all processes
19 20
  BUILD_TESTS: "true"
  BUILD_CTEST: "true"
21

22 23 24 25 26
workflow:
  rules:
    # Disable CI for non-MR user-scoped pipelines
    - if: '$CI_MERGE_REQUEST_IID == null && $CI_PROJECT_NAMESPACE != "ogs"'
      when: never
27 28
    - if: '$CI_MERGE_REQUEST_LABELS =~ /.*workflow:paused.*/'
      when: never
29 30 31 32
    - if: $CI_MERGE_REQUEST_IID                    # merge requests
    - if: $CI_COMMIT_TAG                           # tags, ogs/ogs repo only
    - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH  # master, ogs/ogs repo only

Lars Bilke's avatar
Lars Bilke committed
33
include:
Lars Bilke's avatar
Lars Bilke committed
34
  # extends
35
  - local: '/scripts/ci/extends/defaults.yml'
36
  - local: '/scripts/ci/extends/rules.yml'
Lars Bilke's avatar
Lars Bilke committed
37 38
  - local: '/scripts/ci/extends/template-build-linux.yml'
  - local: '/scripts/ci/extends/template-build-win.yml'
Lars Bilke's avatar
Lars Bilke committed
39
  - local: '/scripts/ci/extends/container-maker-setup.yml'
Lars Bilke's avatar
Lars Bilke committed
40
  - local: '/scripts/ci/extends/vs2019-environment.yml'
Lars Bilke's avatar
Lars Bilke committed
41
  - local: '/scripts/ci/extends/test-artifacts.yml'
Lars Bilke's avatar
Lars Bilke committed
42
  - local: '/scripts/ci/jobs/meta.yml'
43
  - local: '/scripts/ci/jobs/pre-commit.yml'
Lars Bilke's avatar
Lars Bilke committed
44
  # jobs, can be indiviually disabled for testing
Lars Bilke's avatar
Lars Bilke committed
45
  - local: '/scripts/ci/jobs/build_image.yml'
Lars Bilke's avatar
Lars Bilke committed
46
  - local: '/scripts/ci/jobs/build-linux.yml'
Lars Bilke's avatar
Lars Bilke committed
47
  - local: '/scripts/ci/jobs/build-linux-petsc.yml'
Lars Bilke's avatar
Lars Bilke committed
48
  - local: '/scripts/ci/jobs/build-linux-frontend.yml'
Lars Bilke's avatar
Lars Bilke committed
49
  - local: '/scripts/ci/jobs/build-linux-conan.yml'
50
  - local: '/scripts/ci/jobs/build-docs.yml'
Lars Bilke's avatar
Lars Bilke committed
51
  - local: '/scripts/ci/jobs/build-win.yml'
Lars Bilke's avatar
Lars Bilke committed
52
  - local: '/scripts/ci/jobs/build-mac.yml'
Lars Bilke's avatar
Lars Bilke committed
53
  - local: '/scripts/ci/jobs/checks.yml'
54
  # - template: 'Code-Quality.gitlab-ci.yml' # see !3053
Lars Bilke's avatar
Lars Bilke committed
55
  - local: '/scripts/ci/jobs/code-quality.yml'
Lars Bilke's avatar
Lars Bilke committed
56 57
  - local: '/scripts/ci/jobs/build-gui-linux.yml'
  - local: '/scripts/ci/jobs/build-gui-win.yml'
Lars Bilke's avatar
Lars Bilke committed
58
  - local: '/scripts/ci/jobs/build-gui-mac.yml'
Lars Bilke's avatar
Lars Bilke committed
59
  - local: '/scripts/ci/jobs/check-header.yml'
Lars Bilke's avatar
Lars Bilke committed
60
  - local: '/scripts/ci/jobs/clang-sanitizer.yml'
Lars Bilke's avatar
Lars Bilke committed
61
  - local: '/scripts/ci/jobs/clang-tidy.yml'
Lars Bilke's avatar
Lars Bilke committed
62 63
  - local: '/scripts/ci/jobs/web.yml'
  - local: '/scripts/ci/jobs/container.yml'
64
  - local: '/scripts/ci/jobs/release.yml'