Leverage on S3 support proposed by Xtesting
[releng.git] / jjb / airship / cntt.yaml
1 ---
2 - cntt-jobs: &cntt-jobs
3     name: 'cntt-jobs'
4     current-parameters: true
5
6 - cntt-params: &cntt-params
7     name: 'cntt-params'
8     repo: 'opnfv'
9     port:
10     tag:
11       - latest:
12           branch: master
13           slave: intel-pod10
14           functest_tag: hunter
15
16 - parameter:
17     name: cntt-slave
18     parameters:
19       - label:
20           name: slave
21           default: '{slave}'
22
23 - cntt-containers: &cntt-containers
24     name: 'cntt-containers'
25     repo: '{repo}'
26     port: '{port}'
27     container: '{container}'
28     functest_tag: '{functest_tag}'
29
30 - cntt-run-containers: &cntt-run-containers
31     name: 'cntt-run-containers'
32     <<: *cntt-containers
33     test: '{test}'
34
35 - builder:
36     name: cntt-pull-containers
37     builders:
38       - shell: |
39           set +x
40           if [ "{repo}" = "_" ]; then
41             image={container}:{functest_tag}
42           elif [ "{port}" = "None" ]; then
43             image={repo}/{container}:{functest_tag}
44           else
45             image={repo}:{port}/{container}:{functest_tag}
46           fi
47           sudo docker pull $image
48
49 - builder:
50     name: cntt-run-containers
51     builders:
52       - shell: |
53           set +x
54           [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/* || true
55           if [ "{repo}" = "_" ]; then
56             image={container}:{functest_tag}
57           elif [ "{port}" = "None" ]; then
58             image={repo}/{container}:{functest_tag}
59           else
60             image={repo}:{port}/{container}:{functest_tag}
61           fi
62           sudo docker run --rm \
63             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
64             -e S3_DST_URL=s3://artifacts.opnfv.org/xtesting/$JOB_NAME-$BUILD_ID \
65             -e HTTP_DST_URL=http://artifacts.opnfv.org/xtesting/$JOB_NAME-$BUILD_ID \
66             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
67             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
68             -e NODE_NAME=$slave \
69             -e INSTALLER_TYPE=cntt \
70             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
71             -v /home/opnfv/functest/.boto:/root/.boto \
72             -e DEBUG=True \
73             -e EXTERNAL_NETWORK=public \
74             -e DEPLOY_SCENARIO=os-nosdn-nofeature-ha \
75             -v /home/opnfv/functest/openstack.creds:/home/opnfv/functest/conf/env_file \
76             -v /home/opnfv/functest/images:/home/opnfv/functest/images \
77             -v /home/opnfv/functest/tempest_conf.yaml:/usr/lib/python2.7/\
78           site-packages/functest/opnfv_tests/openstack/tempest/custom_tests/tempest_conf.yaml \
79             $image run_tests -t {test} -r -p
80
81 - builder:
82     name: cntt-remove-images
83     builders:
84       - shell: |
85           set +x
86           if [ "{repo}" = "_" ]; then
87             image={container}:{functest_tag}
88           elif [ "{port}" = "None" ]; then
89             image={repo}/{container}:{functest_tag}
90           else
91             image={repo}:{port}/{container}:{functest_tag}
92           fi
93           sudo docker rmi $image || true
94
95 - builder:
96     name: cntt-deploy
97     builders:
98       - shell: |
99           set +x
100           export TERM_OPTS=" "
101           sudo -H -E -u ubuntu bash -c 'tools/deploy.sh $slave deploy_site'
102
103 - scm:
104     name: cntt-scm
105     scm:
106       - git:
107           url: https://gerrit.opnfv.org/gerrit/airship
108           refspec: '+refs/changes/*:refs/changes/*'
109           branches:
110             - '{ref}'
111
112 - parameter:
113     name: cntt-branch
114     parameters:
115       - string:
116           name: branch
117           default: '{branch}'
118
119 - job-template:
120     name: 'cntt-deploy-daily-{tag}'
121     disabled: true
122     parameters:
123       - cntt-slave:
124           slave: '{slave}'
125       - cntt-branch:
126           branch: '{branch}'
127     scm:
128       - cntt-scm:
129           ref: $branch
130     builders:
131       - cntt-deploy
132
133 - job-template:
134     name: 'cntt-deploy-gate-{tag}'
135     parameters:
136       - cntt-slave:
137           slave: '{slave}'
138     scm:
139       - cntt-scm:
140           ref: $GERRIT_REFSPEC
141     builders:
142       - cntt-deploy
143
144 - project:
145     name: 'cntt-deploy'
146     <<: *cntt-params
147     jobs:
148       - 'cntt-deploy-daily-{tag}'
149       - 'cntt-deploy-gate-{tag}'
150
151 - job-template:
152     name: 'cntt-{repo}-{container}-{tag}-pull'
153     parameters:
154       - cntt-slave:
155           slave: '{slave}'
156     builders:
157       - cntt-pull-containers:
158           <<: *cntt-containers
159
160 - project:
161     name: 'cntt-opnfv-functest-healthcheck-pull'
162     <<: *cntt-params
163     container: 'functest-healthcheck'
164     jobs:
165       - 'cntt-{repo}-{container}-{tag}-pull'
166
167 - project:
168     name: 'cntt-opnfv-functest-smoke-pull'
169     <<: *cntt-params
170     container: 'functest-smoke'
171     jobs:
172       - 'cntt-{repo}-{container}-{tag}-pull'
173
174 - project:
175     name: 'cntt-opnfv-functest-benchmarking-pull'
176     <<: *cntt-params
177     container: 'functest-benchmarking'
178     jobs:
179       - 'cntt-{repo}-{container}-{tag}-pull'
180
181 - project:
182     name: 'cntt-opnfv-functest-vnf-pull'
183     <<: *cntt-params
184     container: 'functest-vnf'
185     jobs:
186       - 'cntt-{repo}-{container}-{tag}-pull'
187
188 - job-template:
189     name: 'cntt-{repo}-{container}-{tag}-rmi'
190     parameters:
191       - cntt-slave:
192           slave: '{slave}'
193     builders:
194       - cntt-remove-images:
195           <<: *cntt-containers
196
197 - project:
198     name: 'cntt-opnfv-functest-healthcheck-rmi'
199     <<: *cntt-params
200     container: 'functest-healthcheck'
201     jobs:
202       - 'cntt-{repo}-{container}-{tag}-rmi'
203
204 - project:
205     name: 'cntt-opnfv-functest-smoke-rmi'
206     <<: *cntt-params
207     container: 'functest-smoke'
208     jobs:
209       - 'cntt-{repo}-{container}-{tag}-rmi'
210
211 - project:
212     name: 'cntt-opnfv-functest-benchmarking-rmi'
213     <<: *cntt-params
214     container: 'functest-benchmarking'
215     jobs:
216       - 'cntt-{repo}-{container}-{tag}-rmi'
217
218 - project:
219     name: 'cntt-opnfv-functest-vnf-rmi'
220     <<: *cntt-params
221     container: 'functest-vnf'
222     jobs:
223       - 'cntt-{repo}-{container}-{tag}-rmi'
224
225 - job-template:
226     name: 'cntt-{repo}-{container}-{tag}-{test}-run'
227     parameters:
228       - cntt-slave:
229           slave: '{slave}'
230     builders:
231       - cntt-run-containers:
232           <<: *cntt-run-containers
233
234 - project:
235     name: 'cntt-opnfv-functest-healthcheck'
236     <<: *cntt-params
237     container: 'functest-healthcheck'
238     test:
239       - connection_check
240       - tenantnetwork1
241       - tenantnetwork2
242       - vmready1
243       - vmready2
244       - singlevm1
245       - singlevm2
246       - vping_ssh
247       - vping_userdata
248       - cinder_test
249       - odl
250       - tempest_smoke
251     jobs:
252       - 'cntt-{repo}-{container}-{tag}-{test}-run'
253
254 - project:
255     name: 'cntt-opnfv-functest-smoke'
256     <<: *cntt-params
257     container: 'functest-smoke'
258     test:
259       - neutron-tempest-plugin-api
260       - rally_sanity
261       - refstack_defcore
262       - tempest_full
263       - tempest_scenario
264       - patrole
265       - neutron_trunk
266       - networking-bgpvpn
267       - networking-sfc
268       - barbican
269     jobs:
270       - 'cntt-{repo}-{container}-{tag}-{test}-run'
271
272 - project:
273     name: 'cntt-opnfv-functest-benchmarking'
274     <<: *cntt-params
275     container: 'functest-benchmarking'
276     test:
277       - rally_full
278       - rally_jobs
279       - vmtp
280       - shaker
281     jobs:
282       - 'cntt-{repo}-{container}-{tag}-{test}-run'
283
284 - project:
285     name: 'cntt-opnfv-functest-vnf'
286     <<: *cntt-params
287     container: 'functest-vnf'
288     test:
289       - cloudify
290       - cloudify_ims
291       - heat_ims
292       - vyos_vrouter
293       - juju_epc
294     jobs:
295       - 'cntt-{repo}-{container}-{tag}-{test}-run'
296
297 - job-template:
298     name: 'cntt-{tag}-daily'
299     project-type: multijob
300     triggers:
301       - timed: '@daily'
302     parameters:
303       - cntt-slave:
304           slave: '{slave}'
305       - cntt-branch:
306           branch: 'master'
307     properties:
308       - build-blocker:
309           use-build-blocker: true
310           blocking-level: 'NODE'
311           blocking-jobs:
312             - '^cntt-{tag}-(daily|gate)$'
313     builders:
314       - multijob:
315           name: deploy
316           projects:
317             - name: 'cntt-deploy-daily-{tag}'
318               <<: *cntt-jobs
319       - multijob:
320           name: remove former images
321           projects:
322             - name: 'cntt-opnfv-functest-healthcheck-{tag}-rmi'
323               <<: *cntt-jobs
324             - name: 'cntt-opnfv-functest-smoke-{tag}-rmi'
325               <<: *cntt-jobs
326             - name: 'cntt-opnfv-functest-benchmarking-{tag}-rmi'
327               <<: *cntt-jobs
328             - name: 'cntt-opnfv-functest-vnf-{tag}-rmi'
329               <<: *cntt-jobs
330       - multijob:
331           name: pull containers
332           projects:
333             - name: 'cntt-opnfv-functest-healthcheck-{tag}-pull'
334               <<: *cntt-jobs
335             - name: 'cntt-opnfv-functest-smoke-{tag}-pull'
336               <<: *cntt-jobs
337             - name: 'cntt-opnfv-functest-benchmarking-{tag}-pull'
338               <<: *cntt-jobs
339             - name: 'cntt-opnfv-functest-vnf-{tag}-pull'
340               <<: *cntt-jobs
341       - multijob:
342           name: opnfv/functest-healthcheck:{functest_tag}
343           condition: ALWAYS
344           projects:
345             - name: 'cntt-opnfv-functest-healthcheck-{tag}-connection_check-run'
346               <<: *cntt-jobs
347             - name: 'cntt-opnfv-functest-healthcheck-{tag}-tenantnetwork1-run'
348               <<: *cntt-jobs
349             - name: 'cntt-opnfv-functest-healthcheck-{tag}-tenantnetwork2-run'
350               <<: *cntt-jobs
351             - name: 'cntt-opnfv-functest-healthcheck-{tag}-vmready1-run'
352               <<: *cntt-jobs
353             - name: 'cntt-opnfv-functest-healthcheck-{tag}-vmready2-run'
354               <<: *cntt-jobs
355             - name: 'cntt-opnfv-functest-healthcheck-{tag}-singlevm1-run'
356               <<: *cntt-jobs
357             - name: 'cntt-opnfv-functest-healthcheck-{tag}-singlevm2-run'
358               <<: *cntt-jobs
359             - name: 'cntt-opnfv-functest-healthcheck-{tag}-vping_ssh-run'
360               <<: *cntt-jobs
361             - name: 'cntt-opnfv-functest-healthcheck-{tag}-vping_userdata-run'
362               <<: *cntt-jobs
363             - name: 'cntt-opnfv-functest-healthcheck-{tag}-cinder_test-run'
364               <<: *cntt-jobs
365             - name: 'cntt-opnfv-functest-healthcheck-{tag}-odl-run'
366               <<: *cntt-jobs
367             - name: 'cntt-opnfv-functest-healthcheck-{tag}-tempest_smoke-run'
368               <<: *cntt-jobs
369       - multijob:
370           name: opnfv/functest-smoke:{functest_tag}
371           condition: ALWAYS
372           projects:
373             - name: 'cntt-opnfv-functest-smoke-{tag}-neutron-tempest-plugin-api-run'
374               <<: *cntt-jobs
375             - name: 'cntt-opnfv-functest-smoke-{tag}-rally_sanity-run'
376               <<: *cntt-jobs
377             - name: 'cntt-opnfv-functest-smoke-{tag}-refstack_defcore-run'
378               <<: *cntt-jobs
379             - name: 'cntt-opnfv-functest-smoke-{tag}-tempest_full-run'
380               <<: *cntt-jobs
381             - name: 'cntt-opnfv-functest-smoke-{tag}-tempest_scenario-run'
382               <<: *cntt-jobs
383             - name: 'cntt-opnfv-functest-smoke-{tag}-patrole-run'
384               <<: *cntt-jobs
385             - name: 'cntt-opnfv-functest-smoke-{tag}-neutron_trunk-run'
386               <<: *cntt-jobs
387             - name: 'cntt-opnfv-functest-smoke-{tag}-networking-bgpvpn-run'
388               <<: *cntt-jobs
389             - name: 'cntt-opnfv-functest-smoke-{tag}-networking-sfc-run'
390               <<: *cntt-jobs
391             - name: 'cntt-opnfv-functest-smoke-{tag}-barbican-run'
392               <<: *cntt-jobs
393       - multijob:
394           name: opnfv/functest-benchmarking:{functest_tag}
395           condition: ALWAYS
396           projects:
397             - name: 'cntt-opnfv-functest-benchmarking-{tag}-rally_full-run'
398               <<: *cntt-jobs
399             - name: 'cntt-opnfv-functest-benchmarking-{tag}-rally_jobs-run'
400               <<: *cntt-jobs
401             - name: 'cntt-opnfv-functest-benchmarking-{tag}-vmtp-run'
402               <<: *cntt-jobs
403             - name: 'cntt-opnfv-functest-benchmarking-{tag}-shaker-run'
404               <<: *cntt-jobs
405       - multijob:
406           name: opnfv/functest-vnf:{functest_tag}
407           condition: ALWAYS
408           execution-type: SEQUENTIALLY
409           projects:
410             - name: 'cntt-opnfv-functest-vnf-{tag}-cloudify-run'
411               <<: *cntt-jobs
412             - name: 'cntt-opnfv-functest-vnf-{tag}-cloudify_ims-run'
413               <<: *cntt-jobs
414             - name: 'cntt-opnfv-functest-vnf-{tag}-heat_ims-run'
415               <<: *cntt-jobs
416             - name: 'cntt-opnfv-functest-vnf-{tag}-vyos_vrouter-run'
417               <<: *cntt-jobs
418             - name: 'cntt-opnfv-functest-vnf-{tag}-juju_epc-run'
419               <<: *cntt-jobs
420
421 - trigger:
422     name: cntt-patchset-created
423     triggers:
424       - gerrit:
425           server-name: 'gerrit.opnfv.org'
426           trigger-on:
427             - patchset-created-event
428             - comment-added-contains-event:
429                 comment-contains-value: 'recheck'
430             - comment-added-contains-event:
431                 comment-contains-value: 'reverify'
432           projects:
433             - project-compare-type: 'ANT'
434               project-pattern: 'airship'
435               branches:
436                 - branch-compare-type: 'ANT'
437                   branch-pattern: '**/{branch}'
438           skip-vote:
439             successful: false
440             failed: false
441             unstable: false
442             notbuilt: false
443
444 - job-template:
445     name: 'cntt-{tag}-gate'
446     project-type: multijob
447     disabled: true
448     triggers:
449       - cntt-patchset-created:
450           branch: '{branch}'
451     parameters:
452       - cntt-slave:
453           slave: '{slave}'
454     properties:
455       - build-blocker:
456           use-build-blocker: true
457           blocking-level: 'NODE'
458           blocking-jobs:
459             - '^cntt-{tag}-(daily|gate)$'
460     builders:
461       - multijob:
462           name: deploy
463           projects:
464             - name: 'cntt-deploy-gate-{tag}'
465               <<: *cntt-jobs
466       - multijob:
467           name: remove former images
468           projects:
469             - name: 'cntt-opnfv-functest-healthcheck-{tag}-rmi'
470               <<: *cntt-jobs
471             - name: 'cntt-opnfv-functest-smoke-{tag}-rmi'
472               <<: *cntt-jobs
473             - name: 'cntt-opnfv-functest-benchmarking-{tag}-rmi'
474               <<: *cntt-jobs
475             - name: 'cntt-opnfv-functest-vnf-{tag}-rmi'
476               <<: *cntt-jobs
477       - multijob:
478           name: pull containers
479           projects:
480             - name: 'cntt-opnfv-functest-healthcheck-{tag}-pull'
481               <<: *cntt-jobs
482             - name: 'cntt-opnfv-functest-smoke-{tag}-pull'
483               <<: *cntt-jobs
484             - name: 'cntt-opnfv-functest-benchmarking-{tag}-pull'
485               <<: *cntt-jobs
486             - name: 'cntt-opnfv-functest-vnf-{tag}-pull'
487               <<: *cntt-jobs
488       - multijob:
489           name: opnfv/functest-healthcheck:{functest_tag}
490           projects:
491             - name: 'cntt-opnfv-functest-healthcheck-{tag}-connection_check-run'
492               <<: *cntt-jobs
493             - name: 'cntt-opnfv-functest-healthcheck-{tag}-tenantnetwork1-run'
494               <<: *cntt-jobs
495             - name: 'cntt-opnfv-functest-healthcheck-{tag}-tenantnetwork2-run'
496               <<: *cntt-jobs
497             - name: 'cntt-opnfv-functest-healthcheck-{tag}-vmready1-run'
498               <<: *cntt-jobs
499             - name: 'cntt-opnfv-functest-healthcheck-{tag}-vmready2-run'
500               <<: *cntt-jobs
501             - name: 'cntt-opnfv-functest-healthcheck-{tag}-singlevm1-run'
502               <<: *cntt-jobs
503             - name: 'cntt-opnfv-functest-healthcheck-{tag}-singlevm2-run'
504               <<: *cntt-jobs
505             - name: 'cntt-opnfv-functest-healthcheck-{tag}-vping_ssh-run'
506               <<: *cntt-jobs
507             - name: 'cntt-opnfv-functest-healthcheck-{tag}-vping_userdata-run'
508               <<: *cntt-jobs
509             - name: 'cntt-opnfv-functest-healthcheck-{tag}-cinder_test-run'
510               <<: *cntt-jobs
511             - name: 'cntt-opnfv-functest-healthcheck-{tag}-odl-run'
512               <<: *cntt-jobs
513       - multijob:
514           name: opnfv/functest-smoke:{functest_tag}
515           projects:
516             - name: 'cntt-opnfv-functest-smoke-{tag}-tempest_scenario-run'
517               <<: *cntt-jobs
518             - name: 'cntt-opnfv-functest-smoke-{tag}-neutron_trunk-run'
519               <<: *cntt-jobs
520             - name: 'cntt-opnfv-functest-smoke-{tag}-networking-bgpvpn-run'
521               <<: *cntt-jobs
522             - name: 'cntt-opnfv-functest-smoke-{tag}-networking-sfc-run'
523               <<: *cntt-jobs
524             - name: 'cntt-opnfv-functest-smoke-{tag}-barbican-run'
525               <<: *cntt-jobs
526       - multijob:
527           name: opnfv/functest-benchmarking:{functest_tag}
528           projects:
529             - name: 'cntt-opnfv-functest-benchmarking-{tag}-vmtp-run'
530               <<: *cntt-jobs
531             - name: 'cntt-opnfv-functest-benchmarking-{tag}-shaker-run'
532               <<: *cntt-jobs
533       - multijob:
534           name: opnfv/functest-vnf:{functest_tag}
535           condition: ALWAYS
536           execution-type: SEQUENTIALLY
537           projects:
538             - name: 'cntt-opnfv-functest-vnf-{tag}-cloudify-run'
539               <<: *cntt-jobs
540             - name: 'cntt-opnfv-functest-vnf-{tag}-cloudify_ims-run'
541               <<: *cntt-jobs
542             - name: 'cntt-opnfv-functest-vnf-{tag}-heat_ims-run'
543               <<: *cntt-jobs
544             - name: 'cntt-opnfv-functest-vnf-{tag}-vyos_vrouter-run'
545               <<: *cntt-jobs
546             - name: 'cntt-opnfv-functest-vnf-{tag}-juju_epc-run'
547               <<: *cntt-jobs
548
549 - project:
550     name: 'cntt'
551     <<: *cntt-params
552     jobs:
553       - 'cntt-{tag}-daily'
554       - 'cntt-{tag}-gate'
555
556 - view:
557     name: cntt
558     view-type: list
559     columns:
560       - status
561       - weather
562       - job
563       - last-success
564       - last-failure
565       - last-duration
566     regex: ^cntt-[a-z]+-(daily|check|gate)$