Lava: Run kernel tests in KVM instance instead of baremetal
[lttng-ci.git] / jobs / lttng-baremetal-tests.yaml
1 - defaults:
2 name: lttng-baremetal-tests
3
4 logrotate:
5 numToKeep: 5
6
7 project-type: freestyle
8 node: 'master'
9 scm:
10 - git:
11 url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
12 branches:
13 - "{lttngversion}"
14 shallow-clone: true
15 skip-tag: true
16 fastpoll: true
17 basedir: src/lttng-tools
18 - git:
19 url: git://git-mirror.internal.efficios.com/lttng/lttng-modules.git
20 branches:
21 - "{lttngversion}"
22 shallow-clone: true
23 skip-tag: true
24 fastpoll: true
25 basedir: src/lttng-modules
26 - git:
27 url: git://git-mirror.internal.efficios.com/kernel/stable/linux-stable.git
28 branches:
29 - "{kversion}"
30 shallow-clone: true
31 skip-tag: true
32 fastpoll: true
33 basedir: src/linux
34
35 triggers:
36 - pollscm:
37 cron: "@hourly"
38
39 publishers:
40 - email:
41 recipients: 'francis.deslauriers@efficios.com'
42
43 ## Templates
44 - job-template:
45 name: baremetal_tests_k{kversion}_l{lttngversion}
46 description: |
47 Runs baremetal kernel tests over different combination of kernel and lttng configurations.
48 defaults: lttng-baremetal-tests
49 properties:
50 - throttle:
51 max-total: 2
52 option: 'category'
53 categories:
54 - 'kvm-tests'
55 wrappers:
56 - workspace-cleanup
57 - timestamps
58 - ansicolor
59 - credentials-binding:
60 - text:
61 credential-id: jenkins_lava_key
62 variable: LAVA_FRDESO_TOKEN
63 - inject:
64 properties-content: |
65 TOOLS_BRANCH={lttngversion}
66 UST_BRANCH={lttngversion}
67 BUILD_DEVICE=kvm
68
69 builders:
70 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-master.sh
71 - trigger-builds:
72 - project: "build_kernel_PARAM"
73 property-file: 'properties.txt'
74 block: true
75 - inject:
76 properties-file: properties.txt
77 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/run-tests.sh
78
79 - job-template:
80 name: baremetal_benchmarks_k{kversion}_l{lttngversion}
81 description: |
82 Runs baremetal kernel benchmarks over different combination of kernel and lttng configurations.
83 defaults: lttng-baremetal-tests
84 logrotate:
85 numToKeep: 5
86
87 properties:
88 - throttle:
89 max-total: 2
90 option: 'category'
91 categories:
92 - 'baremetal-tests'
93 scm:
94 - git:
95 url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
96 branches:
97 - "{lttngversion}"
98 shallow-clone: true
99 skip-tag: true
100 fastpoll: true
101 basedir: src/lttng-tools
102 - git:
103 url: git://git-mirror.internal.efficios.com/lttng/lttng-modules.git
104 branches:
105 - "{lttngversion}"
106 shallow-clone: true
107 skip-tag: true
108 fastpoll: true
109 basedir: src/lttng-modules
110 - git:
111 url: git://git-mirror.internal.efficios.com/kernel/stable/linux-stable.git
112 branches:
113 - "{kversion}"
114 shallow-clone: true
115 skip-tag: true
116 fastpoll: true
117 basedir: src/linux
118 wrappers:
119 - workspace-cleanup
120 - timestamps
121 - ansicolor
122 - credentials-binding:
123 - text:
124 credential-id: jenkins_lava_key
125 variable: LAVA_FRDESO_TOKEN
126 - inject:
127 properties-content: |
128 BUILD_DEVICE=baremetal
129 builders:
130 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-master.sh
131 - trigger-builds:
132 - project: "build_kernel_PARAM"
133 property-file: 'properties.txt'
134 block: true
135 - inject:
136 properties-file: properties.txt
137 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/run-benchmarks.sh
138
139 - job:
140 name: build_kernel_PARAM
141 description: |
142 Builds a Linux Kernel and LTTng Modules if necessary
143 defaults: global
144 concurrent: true
145
146 logrotate:
147 numToKeep: 2
148 node: 'x86-64'
149
150 wrappers:
151 - workspace-cleanup
152 - timestamps
153 - ansicolor
154 - credentials-binding:
155 - file:
156 credential-id: lava_jenkins_storage_frdeso
157 variable: identity_file
158 builders:
159 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-slave.sh
160 - inject:
161 properties-file: properties.txt
162 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/check-build-needs.sh
163 - conditional-step:
164 condition-kind: not
165 condition-operand:
166 condition-kind: file-exists
167 condition-filename: kernel-built.txt
168 condition-basedir: workspace
169 steps:
170 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/build-kernel.sh
171 - conditional-step:
172 condition-kind: not
173 condition-operand:
174 condition-kind: file-exists
175 condition-filename: modules-built.txt
176 condition-basedir: workspace
177 steps:
178 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/build-modules.sh
179
180 parameters:
181 - string:
182 name: 'LTTNG_MODULES_COMMIT_ID'
183 description: 'The lttng-modules commmit to build.'
184 - string:
185 name: 'KERNEL_COMMIT_ID'
186 description: 'The kernel commit to build.'
187 - string:
188 name: 'KGITREPO'
189 description: 'The kernel git repo to fetch from'
190 - string:
191 name: 'STORAGE_KERNEL_FOLDER'
192 description: 'Path to store the Kernel image'
193 - string:
194 name: 'STORAGE_KERNEL_IMAGE'
195 description: 'Path to store the Kernel IMAGE'
196 - string:
197 name: 'STORAGE_LINUX_MODULES'
198 description: 'Path to store the Kernel Modules'
199 - string:
200 name: 'STORAGE_LTTNG_MODULES'
201 description: 'Path to store the LTTng Modules'
202 - string:
203 name: 'BUILD_DEVICE'
204 description: 'The target device. (kvm or baremetal)'
205
206 ## Project
207 - project:
208 name: lttng-kernel-tests
209 kversion:
210 - linux-4.4.y
211 - linux-4.8.y
212 - v4.8.1
213 lttngversion:
214 - master
215 - stable-2.8
216 - stable-2.9
217 jobs:
218 - 'baremetal_tests_k{kversion}_l{lttngversion}'
219 - 'baremetal_benchmarks_k{kversion}_l{lttngversion}'
220
221 - project:
222 name: lttng-kernel-tests-oldkernel
223 kversion:
224 - linux-3.18.y
225 - linux-4.4.y
226 lttngversion:
227 - stable-2.7
228 jobs:
229 - 'baremetal_tests_k{kversion}_l{lttngversion}':
230 - 'baremetal_benchmarks_k{kversion}_l{lttngversion}':
This page took 0.049386 seconds and 5 git commands to generate.