-
Notifications
You must be signed in to change notification settings - Fork 2
/
.gitlab-ci.yml
93 lines (76 loc) · 2.31 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
85
86
87
88
89
90
91
92
stages:
- Compile
- Test
- Test install
variables:
IMAGE_PREFIX: "gitlab.lrz.de:5005/sdr/docker-images/"
GIT_SUBMODULE_STRATEGY: recursive
cache:
key: extern-${CI_COMMIT_REF_SLUG}-${CI_JOB_NAME}
paths:
- extern/*
.tmpl_build: &tmpl_build
tags: [build]
dependencies: []
stage: Compile
script:
- mkdir build
- cd build
- cmake -DCCSDS_BUILD_DEPS=On -DCMAKE_INSTALL_PREFIX=/usr/local ../
- make
artifacts:
paths:
- build
.tmpl_test: &tmpl_test
stage: Test
tags: [test]
script:
- cd build
- ctest --repeat-until-fail 10 --output-on-failure
.tmpl_install: &tmpl_install
stage: Test install
tags: [test]
script:
- cd build
- make install
########################################################################################################################
#####
##### Stage: Compile
#####
########################################################################################################################
Clang Build:
<<: *tmpl_build
image: "${IMAGE_PREFIX}alpine-clang-gnuradio38"
GCC Build:
<<: *tmpl_build
image: "${IMAGE_PREFIX}alpine-gcc-gnuradio38"
########################################################################################################################
#####
##### Stage: Test
#####
########################################################################################################################
Clang Test:
<<: *tmpl_test
image: "${IMAGE_PREFIX}alpine-clang-gnuradio:3.8"
dependencies: [Clang Build]
needs: [Clang Build]
GCC Test:
<<: *tmpl_test
image: "${IMAGE_PREFIX}alpine-gcc-gnuradio:3.8"
dependencies: [GCC Build]
needs: [GCC Build]
########################################################################################################################
#####
##### Stage: Install
#####
########################################################################################################################
Clang Install:
<<: *tmpl_install
image: "${IMAGE_PREFIX}alpine-clang-gnuradio:3.8"
dependencies: [Clang Build]
needs: [Clang Build]
GCC Install:
<<: *tmpl_install
image: "${IMAGE_PREFIX}alpine-gcc-gnuradio:3.8"
dependencies: [GCC Build]
needs: [GCC Build]