60f8de8c4eaf763ef512f49530fd3cbffefa287c
[releng.git] / jjb / kvmfornfv / kvmfornfv.yml
1 - project:
2     name: kvmfornfv
3
4     project: '{name}'
5
6     stream:
7         - master:
8             branch: '{stream}'
9             gs-pathname: ''
10             disabled: false
11         - danube:
12             branch: 'stable/{stream}'
13             gs-pathname: '/{stream}'
14             disabled: false
15 #####################################
16 # patch verification phases
17 #####################################
18     phase:
19         - 'build':
20             slave-label: 'opnfv-build-ubuntu'
21         - 'test':
22             slave-label: 'intel-pod1'
23 #####################################
24 # patch verification phases
25 #####################################
26     testname:
27         - 'cyclictest'
28         - 'packet_forward'
29 #####################################
30 # patch verification phases
31 #####################################
32     jobs:
33         - 'kvmfornfv-verify-{stream}'
34         - 'kvmfornfv-verify-{phase}-{stream}'
35         - 'kvmfornfv-merge-{stream}'
36         - 'kvmfornfv-daily-{stream}'
37         - 'kvmfornfv-{testname}-daily-{phase}-{stream}'
38 #####################################
39 # job templates
40 #####################################
41 - job-template:
42     name: 'kvmfornfv-verify-{stream}'
43
44     project-type: multijob
45
46     disabled: '{obj:disabled}'
47
48     concurrent: true
49
50     properties:
51         - throttle:
52             enabled: true
53             max-total: 3
54             option: 'project'
55
56     parameters:
57         - project-parameter:
58             project: '{project}'
59         - gerrit-parameter:
60             branch: '{branch}'
61         - 'opnfv-build-ubuntu-defaults'
62
63     triggers:
64         - gerrit:
65             server-name: 'gerrit.opnfv.org'
66             trigger-on:
67                 - patchset-created-event:
68                     exclude-drafts: 'false'
69                     exclude-trivial-rebase: 'false'
70                     exclude-no-code-change: 'false'
71                 - draft-published-event
72                 - comment-added-contains-event:
73                     comment-contains-value: 'recheck'
74                 - comment-added-contains-event:
75                     comment-contains-value: 'reverify'
76             projects:
77               - project-compare-type: 'ANT'
78                 project-pattern: '{project}'
79                 branches:
80                   - branch-compare-type: 'ANT'
81                     branch-pattern: '**/{branch}'
82
83     builders:
84         - description-setter:
85             description: "Built on $NODE_NAME"
86         - multijob:
87             name: build
88             condition: SUCCESSFUL
89             projects:
90                 - name: 'kvmfornfv-verify-build-{stream}'
91                   current-parameters: false
92                   predefined-parameters: |
93                     GERRIT_BRANCH=$GERRIT_BRANCH
94                     GERRIT_REFSPEC=$GERRIT_REFSPEC
95                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
96                   node-parameters: false
97                   kill-phase-on: FAILURE
98                   abort-all-job: true
99 #        - multijob:
100 #            name: test
101 #            condition: SUCCESSFUL
102 #            projects:
103 #                - name: 'kvmfornfv-verify-test-{stream}'
104 #                  current-parameters: false
105 #                  predefined-parameters: |
106 #                    GERRIT_BRANCH=$GERRIT_BRANCH
107 #                    GERRIT_REFSPEC=$GERRIT_REFSPEC
108 #                    GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
109 #                  node-parameters: false
110 #                  kill-phase-on: FAILURE
111 #                  abort-all-job: true
112 - job-template:
113     name: 'kvmfornfv-verify-{phase}-{stream}'
114
115     disabled: '{obj:disabled}'
116
117     concurrent: true
118
119     scm:
120         - git-scm-gerrit
121
122     wrappers:
123         - ssh-agent-wrapper
124         - timeout:
125             timeout: 360
126             fail: true
127     parameters:
128         - project-parameter:
129             project: '{project}'
130         - gerrit-parameter:
131             branch: '{branch}'
132         - '{slave-label}-defaults'
133         - 'kvmfornfv-defaults':
134             gs-pathname: '{gs-pathname}'
135
136     builders:
137         - description-setter:
138             description: "Built on $NODE_NAME"
139         - '{project}-verify-{phase}-macro'
140
141 - job-template:
142     name: 'kvmfornfv-merge-{stream}'
143
144     disabled: '{obj:disabled}'
145
146     parameters:
147         - project-parameter:
148             project: '{project}'
149         - gerrit-parameter:
150             branch: '{branch}'
151         - 'opnfv-build-ubuntu-defaults'
152         - 'kvmfornfv-defaults':
153             gs-pathname: '{gs-pathname}'
154
155     scm:
156         - git-scm
157
158     triggers:
159         - gerrit:
160             server-name: 'gerrit.opnfv.org'
161             trigger-on:
162                 - change-merged-event
163                 - comment-added-contains-event:
164                     comment-contains-value: 'remerge'
165             projects:
166               - project-compare-type: 'ANT'
167                 project-pattern: '{project}'
168                 branches:
169                     - branch-compare-type: 'ANT'
170                       branch-pattern: '**/{branch}'
171
172     builders:
173         - shell:
174             !include-raw: ./kvmfornfv-build.sh
175
176 - job-template:
177     name: 'kvmfornfv-daily-{stream}'
178
179     project-type: multijob
180
181     disabled: '{obj:disabled}'
182
183     concurrent: false
184
185     parameters:
186         - project-parameter:
187             project: '{project}'
188         - gerrit-parameter:
189             branch: '{branch}'
190         - 'opnfv-build-ubuntu-defaults'
191         - 'kvmfornfv-defaults':
192             gs-pathname: '{gs-pathname}'
193
194     scm:
195         - git-scm
196
197 #    triggers:
198 #        - timed: '@midnight'
199
200     builders:
201         - description-setter:
202             description: "Built on $NODE_NAME"
203         - multijob:
204             name: cyclictest-build
205             condition: SUCCESSFUL
206             projects:
207                 - name: 'kvmfornfv-cyclictest-daily-build-{stream}'
208                   current-parameters: false
209                   node-parameters: false
210                   git-revision: true
211                   kill-phase-on: FAILURE
212                   abort-all-job: true
213         - multijob:
214             name: cyclictest-test
215             condition: SUCCESSFUL
216             projects:
217                 - name: 'kvmfornfv-cyclictest-daily-test-{stream}'
218                   current-parameters: false
219                   node-parameters: false
220                   git-revision: true
221                   kill-phase-on: FAILURE
222                   abort-all-job: true
223         - multijob:
224             name: packetforward-build
225             condition: SUCCESSFUL
226             projects:
227                 - name: 'kvmfornfv-packet_forward-daily-build-{stream}'
228                   current-parameters: false
229                   node-parameters: false
230                   git-revision: true
231                   kill-phase-on: FAILURE
232                   abort-all-job: true
233         - multijob:
234             name: packetforward-test
235             condition: SUCCESSFUL
236             projects:
237                 - name: 'kvmfornfv-packet_forward-daily-test-{stream}'
238                   current-parameters: false
239                   node-parameters: false
240                   git-revision: true
241                   kill-phase-on: FAILURE
242                   abort-all-job: true
243
244 - job-template:
245     name: 'kvmfornfv-{testname}-daily-{phase}-{stream}'
246
247     disabled: '{obj:disabled}'
248
249     concurrent: false
250
251     scm:
252         - git-scm
253
254     wrappers:
255         - ssh-agent-wrapper
256         - timeout:
257             timeout: 360
258             fail: true
259     parameters:
260         - project-parameter:
261             project: '{project}'
262         - gerrit-parameter:
263             branch: '{branch}'
264         - '{slave-label}-defaults'
265         - 'kvmfornfv-defaults':
266             gs-pathname: '{gs-pathname}'
267         - string:
268             name: TEST_NAME
269             default: '{testname}'
270             description: "Daily job to execute kvmfornfv '{testname}' testcase."
271
272     builders:
273         - description-setter:
274             description: "Built on $NODE_NAME"
275         - '{project}-{testname}-daily-{phase}-macro'
276 #####################################
277 # builder macros
278 #####################################
279 - builder:
280     name: 'kvmfornfv-verify-build-macro'
281     builders:
282         - shell:
283             !include-raw: ./kvmfornfv-build.sh
284         - shell:
285             !include-raw: ./kvmfornfv-upload-artifact.sh
286 - builder:
287     name: 'kvmfornfv-verify-test-macro'
288     builders:
289         - shell:
290             !include-raw: ./kvmfornfv-download-artifact.sh
291         - shell:
292             !include-raw: ./kvmfornfv-test.sh
293 - builder:
294     name: 'kvmfornfv-cyclictest-daily-build-macro'
295     builders:
296         - shell:
297             !include-raw: ./kvmfornfv-build.sh
298         - shell:
299             !include-raw: ./kvmfornfv-upload-artifact.sh
300 - builder:
301     name: 'kvmfornfv-cyclictest-daily-test-macro'
302     builders:
303         - shell:
304             !include-raw: ./kvmfornfv-download-artifact.sh
305         - shell:
306             !include-raw: ./kvmfornfv-test.sh
307 - builder:
308     name: 'kvmfornfv-packet_forward-daily-build-macro'
309     builders:
310         - shell:
311             !include-raw: ./kvmfornfv-build.sh
312         - shell:
313             !include-raw: ./kvmfornfv-upload-artifact.sh
314 - builder:
315     name: 'kvmfornfv-packet_forward-daily-test-macro'
316     builders:
317         - shell:
318             !include-raw: ./kvmfornfv-download-artifact.sh
319         - shell:
320             !include-raw: ./kvmfornfv-test.sh
321 #####################################
322 # parameter macros
323 #####################################
324 - parameter:
325     name: 'kvmfornfv-defaults'
326     parameters:
327         - string:
328             name: GS_URL
329             default: artifacts.opnfv.org/$PROJECT{gs-pathname}
330             description: "URL to Google Storage."