-
Notifications
You must be signed in to change notification settings - Fork 26
/
.gitlab-ci.yml
84 lines (78 loc) · 1.82 KB
/
.gitlab-ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
variables:
GIT_SUBMODULE_STRATEGY: recursive
before_script:
- module load rh/devtoolset/8 cuda/9.2 cudatoolkit/11.7
- python3 -m pip install --user flake8 numpy
stages:
- lint_python
- lint_c++
- regression_cpu
- regression_gpu
lint_python-job:
stage: lint_python
tags:
- ias-cuda01
only:
- master
- merge_requests
script:
- cd $CI_PROJECT_DIR
- echo "Running flake8..."
- python3 -m flake8 2>&1 | tee $CI_PROJECT_DIR/tst/lint_python_log.txt
artifacts:
when: always
expire_in: 3 days
paths:
- tst/lint_python_log.txt
lint_c++-job:
stage: lint_c++
tags:
- ias-cuda01
only:
- master
- merge_requests
script:
- cd $CI_PROJECT_DIR/tst/scripts/style
- echo "Running Google C++ linter..."
- bash check_athena_cpp_style.sh 2>&1 | tee $CI_PROJECT_DIR/tst/lint_c++_log.txt
artifacts:
when: always
expire_in: 3 days
paths:
- tst/lint_c++_log.txt
regression_cpu-job:
stage: regression_cpu
tags:
- ias-cuda01
only:
- master
- merge_requests
script:
- cd $CI_PROJECT_DIR/tst
- echo "Running regression script on CPU..."
- python3 run_tests.py hydro mhd radiation --log_file=log_file_cpu.txt
artifacts:
when: always
expire_in: 3 days
paths:
- tst/log_file_cpu.txt
regression_gpu-job:
stage: regression_gpu
tags:
- ias-cuda01
only:
- master
- merge_requests
script:
- cd $CI_PROJECT_DIR/tst
- export CUDA_VISIBLE_DEVICES=1
- echo "Running regression script on GPU..."
- python3 run_tests.py --log_file=log_file_gpu.txt
--cmake=-DKokkos_ENABLE_CUDA=On
--cmake=-DKokkos_ARCH_VOLTA70=On
--cmake=-DCMAKE_CXX_COMPILER=$CI_PROJECT_DIR/kokkos/bin/nvcc_wrapper
artifacts:
when: always
expire_in: 3 days
paths:
- tst/log_file_gpu.txt