.gitlab-ci.yml 2.58 KB
Newer Older
1
2
3
4
5
6
7
.stage_artifacts: &stage_artifacts
  artifacts:
    paths:
      - build/
      - TriBITS/
      - googletest/
      - testframework/
LEFEBVREJP email's avatar
LEFEBVREJP email committed
8
9
10
stages:
- configure
- build
LEFEBVREJP email's avatar
LEFEBVREJP email committed
11
- test
12
- coverage
LEFEBVREJP email's avatar
LEFEBVREJP email committed
13

LEFEBVREJP email's avatar
LEFEBVREJP email committed
14
configure_linux:
LEFEBVREJP email's avatar
LEFEBVREJP email committed
15
  stage: configure
16
17
  tags:
    - linux
18
  <<: *stage_artifacts
LEFEBVREJP email's avatar
LEFEBVREJP email committed
19
  script:
20
21
    - which git
    - git --version
22
    - git clone https://github.com/lefebvre/TriBITS.git TriBITS
23
24
    - git clone https://github.com/lefebvre/testframework testframework
    - git clone https://github.com/lefebvre/googletest googletest
25
    - which python
26
    - python --version
27
    - python TriBITS/tribits/python_utils/gitdist.py pull
LEFEBVREJP email's avatar
LEFEBVREJP email committed
28
29
    - mkdir build
    - cd build
30
31
    - module load cmake
    - which cmake
32
    - cmake -DCMAKE_BUILD_TYPE=DEBUG -Dradix_ENABLE_COVERAGE_TESTING=ON -Dradix_ENABLE_TESTS=ON -Dradix_ENABLE_ams=ON -Dradix_ENABLE_radixio=ON -Dradix_ENABLE_radixmath=ON -Dradix_ENABLE_radixpara=ON -Dradix_ENABLE_radixgeometry=ON -Dradix_ENABLE_radixglls=ON ..
LEFEBVREJP email's avatar
LEFEBVREJP email committed
33

LEFEBVREJP email's avatar
LEFEBVREJP email committed
34
build_linux:
LEFEBVREJP email's avatar
LEFEBVREJP email committed
35
  stage: build
36
37
  tags:
    - linux
38
  <<: *stage_artifacts
LEFEBVREJP email's avatar
LEFEBVREJP email committed
39
40
41
42
  script:
    - cd build
    - ctest -D ExperimentalStart -D ExperimentalBuild -D ExperimentalSubmit
  dependencies:
LEFEBVREJP email's avatar
LEFEBVREJP email committed
43
    - configure_linux
LEFEBVREJP email's avatar
LEFEBVREJP email committed
44

LEFEBVREJP email's avatar
LEFEBVREJP email committed
45
46
47
48
test_linux:
  stage: test
  tags:
    - linux
49
  <<: *stage_artifacts
LEFEBVREJP email's avatar
LEFEBVREJP email committed
50
51
52
53
54
  script:
    - cd build
    - ctest -D ExperimentalTest -D ExperimentalSubmit
  dependencies:
    - build_linux
55
56
57
58
59
60
61
62
63
64

coverage_linux:
  stage: coverage
  tags:
    - linux
  script:
    - cd build
    - ctest -D ExperimentalCoverage -D ExperimentalSubmit
  dependencies:
    - test_linux
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114

configure_linux_mpi:
  stage: configure
  tags:
    - linux
  <<: *stage_artifacts
  script:
    - which git
    - git --version
    - git clone https://github.com/lefebvre/TriBITS.git TriBITS
    - which python
    - python --version
    - python TriBITS/tribits/python_utils/gitdist.py pull
    - mkdir build
    - cd build
    - module load cmake openmpi
    - which cmake
    - cmake -DTPL_ENABLE_MPI=ON -DMPI_BASE_DIR=`dirname $(dirname $(which mpicc))` -DCMAKE_BUILD_TYPE=DEBUG -Dradix_ENABLE_TESTS=ON -Dradix_ENABLE_radixpara=ON ..

build_linux_mpi:
  stage: build
  tags:
    - linux
  <<: *stage_artifacts
  script:
    - cd build
    - ctest -D ExperimentalStart -D ExperimentalBuild -D ExperimentalSubmit
  dependencies:
    - configure_linux_mpi

test_linux_mpi:
  stage: test
  tags:
    - linux
  <<: *stage_artifacts
  script:
    - cd build
    - ctest -D ExperimentalTest -D ExperimentalSubmit
  dependencies:
    - build_linux_mpi

coverage_linux_mpi:
  stage: coverage
  tags:
    - linux
  script:
    - cd build
    - ctest -D ExperimentalCoverage -D ExperimentalSubmit
  dependencies:
    - test_linux_mpi