gitlab-ci: adding cleanup job
[barrelfish] / .gitlab-ci.yml
1 ##########################################################################
2 # Copyright (c) 2018 ETH Zurich.
3 # All rights reserved.
4 #
5 # This file is distributed under the terms in the attached LICENSE file.
6 # If you do not find this file, copies can be found by writing to:
7 # ETH Zurich D-INFK, CAB F.78, Universitaetstr. 6, CH-8092 Zurich,
8 # Attn: Systems Group.
9 ##########################################################################
10
11 stages:
12   - commithooks
13   - hake
14   - build
15   # - tests
16   - cleanup
17
18
19 ##############################################################################
20
21 commithook-signedoff:
22   stage: commithooks
23   image: achreto/barrelfish-ci
24   script:
25     - "! git log  --since='2018-01-01' --invert-grep --grep='Signed-off-by' 
26         | tee 'commits_not_signed.txt' | grep 'commit' -A 5"
27     
28 ##############################################################################
29
30 hake-tool:
31   stage: hake
32   image: achreto/barrelfish-ci
33   script:
34     - "mkdir build; (cd build && ../hake/hake.sh --no-hake -s ../ -a x86_64)"
35
36 hake-files:
37   stage: hake
38   image: achreto/barrelfish-ci
39   script:
40     - "mkdir build; (cd build && ../hake/hake.sh --no-deps -s ../ -a x86_64)"    
41
42 ##############################################################################
43
44
45 build-x86:
46   stage: build
47   image: achreto/barrelfish-ci
48   # artifacts:
49   #   paths:
50   #     - build-x86
51   #   when: on_success
52   script:
53     - "mkdir build-x86; 
54        (cd build-x86 && ../hake/hake.sh -s ../ -a x86_64 && make X86_64_Basic -j4)"
55
56
57 build-armv7:
58   stage: build
59   image: achreto/barrelfish-ci
60   # artifacts:
61   #   paths:
62   #     - build-x86
63   #   when: on_success
64   script:
65     - "mkdir build-armv7; 
66        (cd build-armv7 && ../hake/hake.sh -s ../ -a armv7 && make ARMV7_Basic -j4)"
67
68
69 build-armv8:
70   stage: build
71   image: achreto/barrelfish-ci
72   # artifacts:
73   #   paths:
74   #     - build-x86
75   #   when: on_success
76   script:
77     - "mkdir build-armv8; 
78        (cd build-armv8 && ../hake/hake.sh -s ../ -a armv8 && make ARMV8_Basic -j4)"           
79
80
81 ##############################################################################
82
83 cleanup-all:
84   stage: cleanup
85   image: achreto/barrelfish-ci
86   script:
87     - "rm -rf build-*"
88   when: always 
89
90 # x86:build:
91 #   stage: build
92 #   dependencies:
93 #     - x86:hake
94 #   image: achreto/barrelfish-ci
95 #   script:
96 #     - "(cd build-x86 &&  make X86_64_Basic)"
97
98 # x86:memtest:
99 #   stage: tests
100 #   dependencies:
101 #     - x86:build
102 #   image: achreto/barrelfish-ci
103 #   script:
104 #     - "mkdir -p results"
105 #     - "(./tools/harness/scalebench.py --xml --debug -B build-x86 -m qemu1 -t memtest . results )"    
106
107 # x86:memtest4:
108 #   stage: tests
109 #   dependencies:
110 #     - x86:build
111 #   image: achreto/barrelfish-ci
112 #   script:
113 #     - "mkdir -p results"
114 #     - "(./tools/harness/scalebench.py --xml --debug -B build-x86 -m qemu4 -t memtest . results )"    
115
116
117 # ##############################################################################
118
119
120 # armv7:hake:
121 #   stage: hake
122 #   image: achreto/barrelfish-ci
123 #   artifacts:
124 #     paths:
125 #       - build-armv7
126 #     when: on_success
127 #   script:
128 #     - "mkdir build-armv7; (cd build-armv7 && ../hake/hake.sh -s ../ -a armv7)"
129
130
131 # armv7:build:
132 #   stage: build
133 #   dependencies:
134 #     - armv7:hake
135 #   image: achreto/barrelfish-ci
136 #   script:
137 #     - "(cd build-armv7 &&  make PandaboardES)"
138
139 # armv7:memtest:
140 #   stage: tests
141 #   dependencies:
142 #     - armv7:build
143 #   image: achreto/barrelfish-ci
144 #   script:
145 #     - "mkdir -p results"
146 #     - "(./tools/harness/scalebench.py --xml --debug -B build-armv7 -m qemu_armv7 -t memtest . results )"
147
148
149 # ##############################################################################
150
151
152 # armv8:hake:
153 #   stage: hake
154 #   image: achreto/barrelfish-ci
155 #   artifacts:
156 #     paths:
157 #       - build-armv8
158 #     when: on_success
159 #   script:
160 #     - "mkdir build-armv8; (cd build-armv8 && ../hake/hake.sh -s ../ -a armv8)"#
161 # #
162
163 # armv8:build:
164 #   stage: build
165 #   dependencies:
166 #     - armv8:hake
167 #   image: achreto/barrelfish-ci
168 #   script:
169 #     - "(cd build-armv8 &&  make ThunderX)"    
170
171 # armv8:memtest:
172 #   stage: tests
173 #   dependencies:
174 #     - armv8:build
175 #   image: achreto/barrelfish-ci
176 #   script:
177 #     - "mkdir -p results"
178 #     - "(./tools/harness/scalebench.py --xml --debug -B build-armv8 -m qemu_armv8_1 -t memtest . results )"