.gitlab-ci.yml 2.42 KB
Newer Older
Dennis Gläser's avatar
Dennis Gläser committed
1
include:
2
  template: 'Workflows/MergeRequest-Pipelines.gitlab-ci.yml'
Dennis Gläser's avatar
Dennis Gläser committed
3

4
5
6
7
8
9
10
default:
  image: git.iws.uni-stuttgart.de:4567/tools/frackit/ubuntu18.04:latest

stages:
  - build
  - test

11
.testrules:
12
13
14
15
16
17
18
19
  rules:
    - changes:
      - "**/*.hh"
      - "**/*.cc"
      - "**/CMakeLists.txt"
      - "**/*.cmake"
      - "**/*.yml"
      when: always
20
21
22
23
24

.build_tests:
  extends: .testrules
  stage: build
  script: ./.ci_build_tests
25
26
27
  artifacts:
    expire_in: 30 minutes
    when: on_success
28
29

.run_tests:
30
  extends: .testrules
31
32
33
  stage: test
  script: ctest -j4 --no-tests=error --output-on-failure

34
35
36
37
###########################
# build pipeline for docu #
###########################

38
39
40
41
build_doc:
  script: ./.ci_build_doc
  rules:
    - changes:
Dennis Gläser's avatar
Dennis Gläser committed
42
      - "doc/**/*"
43
44
45
46
47
48
      when: always

#####################################################
# build jobs for different compilers / occ versions #
#####################################################

49
build gcc-7 occ-7.3:
50
  extends: .build_tests
Dennis Gläser's avatar
Dennis Gläser committed
51
52
  variables:
    CI_COMPILER: gcc
53
54
55
56
57
    CI_COMPILER_VERSION: "7"
    CI_OCC_VERSION: "7.3"
  artifacts:
    paths:
      - build-gcc-7-occ-7.3
58

59
build gcc-8 occ-7.5:
60
  extends: .build_tests
Dennis Gläser's avatar
Dennis Gläser committed
61
62
  variables:
    CI_COMPILER: gcc
63
64
65
66
67
68
    CI_COMPILER_VERSION: "8"
    CI_OCC_VERSION: "7.5"
  artifacts:
    paths:
      - build-gcc-8-occ-7.5

69
build clang-6 occ-7.3:
70
71
72
73
74
75
76
77
  extends: .build_tests
  variables:
    CI_COMPILER: clang
    CI_COMPILER_VERSION: "6.0"
    CI_OCC_VERSION: "7.3"
  artifacts:
    paths:
      - build-clang-6.0-occ-7.3
Dennis Gläser's avatar
Dennis Gläser committed
78

79
build clang-7 occ-7.5:
80
  extends: .build_tests
Dennis Gläser's avatar
Dennis Gläser committed
81
82
  variables:
    CI_COMPILER: clang
83
84
85
86
87
88
89
90
91
92
    CI_COMPILER_VERSION: "7"
    CI_OCC_VERSION: "7.5"
  artifacts:
    paths:
     - build-clang-7-occ-7.5

####################################################
# test jobs for different compilers / occ versions #
####################################################

93
test gcc-7 occ-7.3:
94
  extends: .run_tests
95
96
97
  needs:
    - job: build gcc-7 occ-7.3
      artifacts: true
98
99
100
  before_script:
    - cd build-gcc-7-occ-7.3

101
test gcc-8 occ-7.5:
102
  extends: .run_tests
103
104
105
  needs:
    - job: build gcc-8 occ-7.5
      artifacts: true
106
107
108
  before_script:
    - cd build-gcc-8-occ-7.5

109
test clang-6 occ-7.3:
110
  extends: .run_tests
111
112
113
  needs:
    - job: build clang-6 occ-7.3
      artifacts: true
114
115
116
  before_script:
    - cd build-clang-6.0-occ-7.3

117
test clang-7 occ-7.5:
118
  extends: .run_tests
119
120
121
  needs:
    - job: build clang-7 occ-7.5
      artifacts: true
122
123
  before_script:
    - cd build-clang-7-occ-7.5