aef45eafec815c080f4caf3b8cf6691347f53172
[releng.git] / jjb / functest / functest-kubernetes.yaml
1 ---
2 - functest-kubernetes-jobs: &functest-kubernetes-jobs
3     name: 'functest-kubernetes-jobs'
4     current-parameters: true
5
6 - functest-kubernetes-params: &functest-kubernetes-params
7     name: 'functest-kubernetes-params'
8     repo: 'opnfv'
9     port:
10     tag:
11       - latest:
12           branch: master
13           slave: lf-virtual1-5
14       - kali:
15           branch: stable/kali
16           slave: lf-virtual1-4
17       - jerma:
18           branch: stable/jerma
19           slave: lf-virtual1-3
20       - iruya:
21           branch: stable/iruya
22           slave: lf-virtual1-2
23       - hunter:
24           branch: stable/hunter
25           slave: lf-virtual1-1
26       - arm64-latest:
27           branch: master
28           slave: lf-virtual1-5
29       - arm64-kali:
30           branch: stable/kali
31           slave: lf-virtual1-4
32       - arm64-jerma:
33           branch: stable/jerma
34           slave: lf-virtual1-3
35       - arm64-iruya:
36           branch: stable/iruya
37           slave: lf-virtual1-2
38       - arm64-hunter:
39           branch: stable/hunter
40           slave: lf-virtual1-1
41
42 - parameter:
43     name: functest-kubernetes-slave
44     parameters:
45       - label:
46           name: slave
47           default: '{slave}'
48
49 - parameter:
50     name: functest-kubernetes-build_tag
51     parameters:
52       - random-string:
53           name: build_tag
54
55 - parameter:
56     name: functest-kubernetes-branch
57     parameters:
58       - string:
59           name: branch
60           default: '{branch}'
61
62 - parameter:
63     name: functest-kubernetes-DEPLOY_SCENARIO
64     parameters:
65       - string:
66           name: DEPLOY_SCENARIO
67           default: k8-nosdn-nofeature-noha
68 - parameter:
69     name: functest-kubernetes-DEBUG
70     parameters:
71       - string:
72           name: DEBUG
73           default: 'true'
74
75 - functest-kubernetes-containers: &functest-kubernetes-containers
76     name: 'functest-kubernetes-containers'
77     repo: '{repo}'
78     port: '{port}'
79     container: '{container}'
80     tag: '{tag}'
81
82 - functest-kubernetes-run-containers: &functest-kubernetes-run-containers
83     name: 'functest-kubernetes-run-containers'
84     <<: *functest-kubernetes-containers
85     test: '{test}'
86     privileged: '{privileged}'
87     network: '{network}'
88
89 - builder:
90     name: functest-kubernetes-pull-containers
91     builders:
92       - shell: |
93           set +x
94           if [ "{repo}" = "_" ]; then
95             image={container}:{tag}
96           elif [ "{port}" = "None" ]; then
97             image={repo}/{container}:{tag}
98           else
99             image={repo}:{port}/{container}:{tag}
100           fi
101           docker pull $image
102
103 - builder:
104     name: functest-kubernetes-run-containers
105     builders:
106       - shell: |
107           set +x
108           [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/* || true
109           if [ "{repo}" = "_" ]; then
110             image={container}:{tag}
111           elif [ "{port}" = "None" ]; then
112             image={repo}/{container}:{tag}
113           else
114             image={repo}:{port}/{container}:{tag}
115           fi
116           docker run --rm \
117             --privileged={privileged} \
118             --network={network} \
119             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
120             -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
121             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
122             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
123             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
124             -e NODE_NAME=$slave \
125             -e BUILD_TAG=$BUILD_TAG \
126             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
127             -e DEPLOY_SCENARIO=$DEPLOY_SCENARIO \
128             -e DEBUG=$DEBUG \
129             -v /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config \
130             -v /home/opnfv/functest-kubernetes/.boto:/root/.boto \
131             $image run_tests -t {test} -p -r
132
133 - builder:
134     name: functest-kubernetes-remove-images
135     builders:
136       - shell: |
137           set +x
138           if [ "{repo}" = "_" ]; then
139             image={container}:{tag}
140           elif [ "{port}" = "None" ]; then
141             image={repo}/{container}:{tag}
142           else
143             image={repo}:{port}/{container}:{tag}
144           fi
145           docker rmi $image || true
146
147 - functest-kubernetes-build-containers: &functest-kubernetes-build-containers
148     name: 'functest-kubernetes-build-containers'
149     <<: *functest-kubernetes-containers
150     ref_arg: '{ref_arg}'
151     path: '{path}'
152
153 - builder:
154     name: functest-kubernetes-build-containers
155     builders:
156       - shell: |
157           set +x
158           if [ "{repo}" = "_" ]; then
159             image={container}:{tag}
160           elif [ "{port}" = "None" ]; then
161             image={repo}/{container}:{tag}
162           else
163             image={repo}:{port}/{container}:{tag}
164           fi
165           if [ "{ref_arg}" = "None" ]; then
166             build_arg=""
167           else
168             build_arg="--build-arg {ref_arg}={ref}"
169           fi
170           cd {path}
171           docker build $build_arg \
172             --pull=false --no-cache --force-rm=true \
173             -t $image .
174
175 - scm:
176     name: functest-kubernetes-scm
177     scm:
178       - git:
179           url: https://gerrit.opnfv.org/gerrit/functest-kubernetes
180           refspec: '+refs/changes/*:refs/changes/*'
181           branches:
182             - '{ref}'
183
184 - job-template:
185     name: 'functest-kubernetes-{repo}-{container}-{tag}-pull'
186     parameters:
187       - functest-kubernetes-slave:
188           slave: '{slave}'
189     builders:
190       - functest-kubernetes-pull-containers:
191           <<: *functest-kubernetes-containers
192
193 - project:
194     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-pull'
195     <<: *functest-kubernetes-params
196     container: 'functest-kubernetes-healthcheck'
197     jobs:
198       - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
199
200 - project:
201     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-pull'
202     <<: *functest-kubernetes-params
203     container: 'functest-kubernetes-smoke'
204     jobs:
205       - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
206
207 - project:
208     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-pull'
209     <<: *functest-kubernetes-params
210     container: 'functest-kubernetes-security'
211     jobs:
212       - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
213
214 - project:
215     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-pull'
216     <<: *functest-kubernetes-params
217     container: 'functest-kubernetes-benchmarking'
218     jobs:
219       - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
220
221 - project:
222     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-pull'
223     <<: *functest-kubernetes-params
224     container: 'functest-kubernetes-cnf'
225     jobs:
226       - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
227
228 - job-template:
229     name: 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
230     parameters:
231       - functest-kubernetes-slave:
232           slave: '{slave}'
233     builders:
234       - functest-kubernetes-remove-images:
235           <<: *functest-kubernetes-containers
236
237 - project:
238     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-rmi'
239     <<: *functest-kubernetes-params
240     container: 'functest-kubernetes-healthcheck'
241     jobs:
242       - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
243
244 - project:
245     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-rmi'
246     <<: *functest-kubernetes-params
247     container: 'functest-kubernetes-smoke'
248     jobs:
249       - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
250
251 - project:
252     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-rmi'
253     <<: *functest-kubernetes-params
254     container: 'functest-kubernetes-security'
255     jobs:
256       - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
257
258 - project:
259     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-rmi'
260     <<: *functest-kubernetes-params
261     container: 'functest-kubernetes-benchmarking'
262     jobs:
263       - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
264
265 - project:
266     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-rmi'
267     <<: *functest-kubernetes-params
268     container: 'functest-kubernetes-cnf'
269     jobs:
270       - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
271
272 - job-template:
273     name: 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
274     parameters:
275       - functest-kubernetes-slave:
276           slave: '{slave}'
277       - functest-kubernetes-build_tag:
278           build_tag: ''
279       - functest-kubernetes-DEPLOY_SCENARIO:
280           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
281       - functest-kubernetes-DEBUG:
282           DEBUG: 'true'
283     builders:
284       - functest-kubernetes-run-containers:
285           <<: *functest-kubernetes-run-containers
286
287 - project:
288     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck'
289     <<: *functest-kubernetes-params
290     container: 'functest-kubernetes-healthcheck'
291     test:
292       - k8s_smoke
293     privileged: 'false'
294     network: bridge
295     jobs:
296       - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
297
298 - project:
299     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke'
300     <<: *functest-kubernetes-params
301     container: 'functest-kubernetes-smoke'
302     test:
303       - xrally_kubernetes
304       - k8s_conformance
305     privileged: 'false'
306     network: bridge
307     jobs:
308       - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
309
310 - project:
311     name: 'functest-kubernetes-opnfv-functest-kubernetes-security'
312     <<: *functest-kubernetes-params
313     container: 'functest-kubernetes-security'
314     test:
315       - kube_hunter
316       - kube_bench
317     privileged: 'false'
318     network: bridge
319     jobs:
320       - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
321
322 - project:
323     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking'
324     <<: *functest-kubernetes-params
325     container: 'functest-kubernetes-benchmarking'
326     test:
327       - xrally_kubernetes_full
328     privileged: 'false'
329     network: bridge
330     jobs:
331       - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
332
333 - project:
334     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf'
335     <<: *functest-kubernetes-params
336     container: 'functest-kubernetes-cnf'
337     test:
338       - cnf_conformance
339       - k8s_vims
340     exclude:
341       - tag: kali
342         test: cnf_conformance
343       - tag: jerma
344         test: cnf_conformance
345       - tag: iruya
346         test: cnf_conformance
347       - tag: hunter
348         test: cnf_conformance
349       - tag: arm64-kali
350         test: cnf_conformance
351       - tag: arm64-jerma
352         test: cnf_conformance
353       - tag: arm64-iruya
354         test: cnf_conformance
355       - tag: arm64-hunter
356         test: cnf_conformance
357     privileged: 'false'
358     network: bridge
359     jobs:
360       - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
361
362
363 - builder:
364     name: functest-kubernetes-zip
365     builders:
366       - shell: |
367           set +x
368           [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/* || true
369           if [ "{repo}" = "_" ]; then
370             image={container}:{tag}
371           elif [ "{port}" = "None" ]; then
372             image={repo}/{container}:{tag}
373           else
374             image={repo}:{port}/{container}:{tag}
375           fi
376           docker run --rm \
377             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
378             -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes \
379             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes \
380             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
381             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
382             -e BUILD_TAG=$BUILD_TAG \
383             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
384             -e DEPLOY_SCENARIO=$DEPLOY_SCENARIO \
385             -e DEBUG=$DEBUG \
386             -v /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config \
387             -v /home/opnfv/functest-kubernetes/.boto:/root/.boto \
388             $image zip_campaign
389
390 - job-template:
391     name: 'functest-kubernetes-{tag}-zip'
392     parameters:
393       - functest-kubernetes-slave:
394           slave: '{slave}'
395       - functest-kubernetes-build_tag:
396           build_tag: ''
397       - functest-kubernetes-DEPLOY_SCENARIO:
398           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
399       - functest-kubernetes-DEBUG:
400           DEBUG: 'true'
401     builders:
402       - functest-kubernetes-zip:
403           <<: *functest-kubernetes-containers
404
405 - project:
406     name: 'functest-kubernetes-{tag}-zip'
407     <<: *functest-kubernetes-params
408     container: 'functest-kubernetes-healthcheck'
409     jobs:
410       - 'functest-kubernetes-{tag}-zip'
411
412 - job-template:
413     name: 'functest-kubernetes-{tag}-daily'
414     project-type: multijob
415     triggers:
416       - timed: '@weekly'
417     parameters:
418       - functest-kubernetes-slave:
419           slave: '{slave}'
420       - functest-kubernetes-build_tag:
421           build_tag: ''
422       - functest-kubernetes-DEPLOY_SCENARIO:
423           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
424       - functest-kubernetes-DEBUG:
425           DEBUG: 'true'
426     properties:
427       - build-blocker:
428           use-build-blocker: true
429           blocking-level: 'GLOBAL'
430           blocking-jobs:
431             - '^functest-kubernetes(-pi)?-(arm.*-|amd64-)*[a-z]+-(daily|gate|check)$'
432     builders:
433       - multijob:
434           name: remove former images
435           projects:
436             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
437               <<: *functest-kubernetes-jobs
438             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
439               <<: *functest-kubernetes-jobs
440             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
441               <<: *functest-kubernetes-jobs
442             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-pull'
443               <<: *functest-kubernetes-jobs
444             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
445               <<: *functest-kubernetes-jobs
446       - multijob:
447           name: pull containers
448           projects:
449             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-pull'
450               <<: *functest-kubernetes-jobs
451             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-pull'
452               <<: *functest-kubernetes-jobs
453             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-pull'
454               <<: *functest-kubernetes-jobs
455             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-pull'
456               <<: *functest-kubernetes-jobs
457             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-pull'
458               <<: *functest-kubernetes-jobs
459       - multijob:
460           name: opnfv/functest-kubernetes-healthcheck:{tag}
461           projects:
462             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
463               <<: *functest-kubernetes-jobs
464       - multijob:
465           name: opnfv/functest-kubernetes-smoke:{tag}
466           projects:
467             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
468               <<: *functest-kubernetes-jobs
469             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
470               <<: *functest-kubernetes-jobs
471       - multijob:
472           name: opnfv/functest-kubernetes-security:{tag}
473           projects:
474             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
475               <<: *functest-kubernetes-jobs
476             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench-run'
477               <<: *functest-kubernetes-jobs
478       - multijob:
479           name: opnfv/functest-kubernetes-benchmarking:{tag}
480           projects:
481             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
482               <<: *functest-kubernetes-jobs
483       - multijob:
484           name: opnfv/functest-kubernetes-cnf:{tag}
485           projects:
486             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_conformance-run'
487               <<: *functest-kubernetes-jobs
488             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
489               <<: *functest-kubernetes-jobs
490       - multijob:
491           name: dump all campaign data
492           projects:
493             - name: 'functest-kubernetes-{tag}-zip'
494               <<: *functest-kubernetes-jobs
495
496 - job-template:
497     name: 'functest-kubernetes-{repo}-{container}-{tag}-gate'
498     parameters:
499       - functest-kubernetes-slave:
500           slave: '{slave}'
501     scm:
502       - functest-kubernetes-scm:
503           ref: $GERRIT_REFSPEC
504     builders:
505       - functest-kubernetes-build-containers:
506           <<: *functest-kubernetes-build-containers
507           ref: $GERRIT_REFSPEC
508
509 - job-template:
510     name: 'functest-kubernetes-{repo}-{container}-{tag}-check'
511     parameters:
512       - functest-kubernetes-slave:
513           slave: '{slave}'
514       - functest-kubernetes-branch:
515           branch: '{branch}'
516     scm:
517       - functest-kubernetes-scm:
518           ref: $branch
519     builders:
520       - functest-kubernetes-build-containers:
521           <<: *functest-kubernetes-build-containers
522           ref: $branch
523
524 - project:
525     name: 'functest-kubernetes-_-golang-1.15-alpine3.12-rmi'
526     repo: _
527     port:
528     container: golang
529     tag: '1.15-alpine3.12'
530     slave: master
531     exclude:
532       - tag: arm64-latest
533       - tag: arm64-kali
534       - tag: arm64-jerma
535       - tag: arm64-iruya
536       - tag: arm64-hunter
537     jobs:
538       - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
539
540 - project:
541     name: 'functest-kubernetes-_-golang-1.15-alpine3.12-pull'
542     repo: _
543     port:
544     container: golang
545     tag: '1.15-alpine3.12'
546     slave: master
547     exclude:
548       - tag: arm64-latest
549       - tag: arm64-kali
550       - tag: arm64-jerma
551       - tag: arm64-iruya
552       - tag: arm64-hunter
553     jobs:
554       - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
555
556 - project:
557     name: functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build
558     <<: *functest-kubernetes-params
559     container: functest-kubernetes-core
560     ref_arg: BRANCH
561     path: docker/core
562     exclude:
563       - tag: arm64-latest
564       - tag: arm64-kali
565       - tag: arm64-jerma
566       - tag: arm64-iruya
567       - tag: arm64-hunter
568     jobs:
569       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
570       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
571
572 - project:
573     name: functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build
574     <<: *functest-kubernetes-params
575     container: functest-kubernetes-healthcheck
576     ref_arg:
577     path: docker/healthcheck
578     exclude:
579       - tag: arm64-latest
580       - tag: arm64-kali
581       - tag: arm64-jerma
582       - tag: arm64-iruya
583       - tag: arm64-hunter
584     jobs:
585       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
586       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
587
588 - project:
589     name: functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build
590     <<: *functest-kubernetes-params
591     container: functest-kubernetes-cnf
592     ref_arg: BRANCH
593     path: docker/cnf
594     exclude:
595       - tag: arm64-latest
596       - tag: arm64-kali
597       - tag: arm64-jerma
598       - tag: arm64-iruya
599       - tag: arm64-hunter
600     jobs:
601       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
602       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
603
604 - project:
605     name: functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build
606     <<: *functest-kubernetes-params
607     container: functest-kubernetes-security
608     ref_arg: BRANCH
609     path: docker/security
610     exclude:
611       - tag: arm64-latest
612       - tag: arm64-kali
613       - tag: arm64-jerma
614       - tag: arm64-iruya
615       - tag: arm64-hunter
616     jobs:
617       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
618       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
619
620 - project:
621     name: functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build
622     <<: *functest-kubernetes-params
623     container: functest-kubernetes-smoke
624     ref_arg:
625     path: docker/smoke
626     exclude:
627       - tag: arm64-latest
628       - tag: arm64-kali
629       - tag: arm64-jerma
630       - tag: arm64-iruya
631       - tag: arm64-hunter
632     jobs:
633       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
634       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
635
636 - project:
637     name: functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-build
638     <<: *functest-kubernetes-params
639     container: functest-kubernetes-benchmarking
640     ref_arg:
641     path: docker/benchmarking
642     exclude:
643       - tag: arm64-latest
644       - tag: arm64-kali
645       - tag: arm64-jerma
646       - tag: arm64-iruya
647       - tag: arm64-hunter
648     jobs:
649       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
650       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
651
652 - job-template:
653     name: 'functest-kubernetes-{tag}-check'
654     project-type: multijob
655     parameters:
656       - functest-kubernetes-slave:
657           slave: '{slave}'
658       - functest-kubernetes-build_tag:
659           build_tag: ''
660       - functest-kubernetes-branch:
661           branch: '{branch}'
662       - functest-kubernetes-DEPLOY_SCENARIO:
663           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
664       - functest-kubernetes-DEBUG:
665           DEBUG: 'true'
666     properties:
667       - build-blocker:
668           use-build-blocker: true
669           blocking-level: 'GLOBAL'
670           blocking-jobs:
671             - '^functest-kubernetes(-pi)?-(arm.*-|amd64-)*[a-z]+-(daily|gate|check)$'
672     builders:
673       - multijob:
674           name: remove former images
675           projects:
676             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
677               <<: *functest-kubernetes-jobs
678             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
679               <<: *functest-kubernetes-jobs
680             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
681               <<: *functest-kubernetes-jobs
682             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
683               <<: *functest-kubernetes-jobs
684             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
685               <<: *functest-kubernetes-jobs
686       - multijob:
687           name: remove dependencies
688           projects:
689             - name: 'functest-kubernetes-_-golang-1.15-alpine3.12-rmi'
690               <<: *functest-kubernetes-jobs
691       - multijob:
692           name: pull dependencies
693           projects:
694             - name: 'functest-kubernetes-_-golang-1.15-alpine3.12-pull'
695               <<: *functest-kubernetes-jobs
696       - multijob:
697           name: build opnfv/functest-kubernetes-core
698           projects:
699             - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-check'
700               <<: *functest-kubernetes-jobs
701       - multijob:
702           name: build opnfv/functest-kubernetes-healthcheck
703           projects:
704             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-check'
705               <<: *functest-kubernetes-jobs
706             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-check'
707               <<: *functest-kubernetes-jobs
708             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-check'
709               <<: *functest-kubernetes-jobs
710       - multijob:
711           name: build containers
712           projects:
713             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-check'
714               <<: *functest-kubernetes-jobs
715       - multijob:
716           name: build opnfv/functest-kubernetes-benchmarking
717           projects:
718             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-check'
719               <<: *functest-kubernetes-jobs
720       - multijob:
721           name: opnfv/functest-kubernetes-healthcheck:{tag}
722           projects:
723             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
724               <<: *functest-kubernetes-jobs
725       - multijob:
726           name: opnfv/functest-kubernetes-smoke:{tag}
727           projects:
728             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
729               <<: *functest-kubernetes-jobs
730             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
731               <<: *functest-kubernetes-jobs
732       - multijob:
733           name: opnfv/functest-kubernetes-benchmarking:{tag}
734           projects:
735             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
736               <<: *functest-kubernetes-jobs
737       - multijob:
738           name: opnfv/functest-kubernetes-security:{tag}
739           projects:
740             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
741               <<: *functest-kubernetes-jobs
742             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench-run'
743               <<: *functest-kubernetes-jobs
744       - multijob:
745           name: opnfv/functest-kubernetes-cnf:{tag}
746           projects:
747             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_conformance-run'
748               <<: *functest-kubernetes-jobs
749             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
750               <<: *functest-kubernetes-jobs
751
752 - trigger:
753     name: functest-kubernetes-patchset-created
754     triggers:
755       - gerrit:
756           server-name: 'gerrit.opnfv.org'
757           trigger-on:
758             - patchset-created-event
759             - comment-added-contains-event:
760                 comment-contains-value: 'recheck'
761             - comment-added-contains-event:
762                 comment-contains-value: 'reverify'
763           projects:
764             - project-compare-type: 'ANT'
765               project-pattern: 'functest-kubernetes'
766               branches:
767                 - branch-compare-type: 'ANT'
768                   branch-pattern: '**/{branch}'
769           skip-vote:
770             successful: false
771             failed: false
772             unstable: false
773             notbuilt: false
774
775 - job-template:
776     name: 'functest-kubernetes-{tag}-gate'
777     project-type: multijob
778     triggers:
779       - functest-kubernetes-patchset-created:
780           branch: '{branch}'
781     parameters:
782       - functest-kubernetes-slave:
783           slave: '{slave}'
784       - functest-kubernetes-build_tag:
785           build_tag: ''
786       - functest-kubernetes-DEPLOY_SCENARIO:
787           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
788       - functest-kubernetes-DEBUG:
789           DEBUG: 'true'
790     properties:
791       - build-blocker:
792           use-build-blocker: true
793           blocking-level: 'GLOBAL'
794           blocking-jobs:
795             - '^functest-kubernetes(-pi)?-(arm.*-|amd64-)*[a-z]+-(daily|gate|check)$'
796     builders:
797       - multijob:
798           name: remove former images
799           projects:
800             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
801               <<: *functest-kubernetes-jobs
802             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
803               <<: *functest-kubernetes-jobs
804             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
805               <<: *functest-kubernetes-jobs
806             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
807               <<: *functest-kubernetes-jobs
808             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
809               <<: *functest-kubernetes-jobs
810       - multijob:
811           name: remove dependencies
812           projects:
813             - name: 'functest-kubernetes-_-golang-1.15-alpine3.12-rmi'
814               <<: *functest-kubernetes-jobs
815       - multijob:
816           name: pull dependencies
817           projects:
818             - name: 'functest-kubernetes-_-golang-1.15-alpine3.12-pull'
819               <<: *functest-kubernetes-jobs
820       - multijob:
821           name: build opnfv/functest-kubernetes-core
822           projects:
823             - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate'
824               <<: *functest-kubernetes-jobs
825       - multijob:
826           name: build opnfv/functest-kubernetes-healthcheck
827           projects:
828             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate'
829               <<: *functest-kubernetes-jobs
830             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate'
831               <<: *functest-kubernetes-jobs
832             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate'
833               <<: *functest-kubernetes-jobs
834       - multijob:
835           name: build containers
836           projects:
837             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate'
838               <<: *functest-kubernetes-jobs
839       - multijob:
840           name: build opnfv/functest-kubernetes-benchmarking
841           projects:
842             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-gate'
843               <<: *functest-kubernetes-jobs
844       - multijob:
845           name: opnfv/functest-kubernetes-healthcheck:{tag}
846           projects:
847             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
848               <<: *functest-kubernetes-jobs
849       - multijob:
850           name: opnfv/functest-kubernetes-smoke:{tag}
851           projects:
852             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
853               <<: *functest-kubernetes-jobs
854             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
855               <<: *functest-kubernetes-jobs
856       - multijob:
857           name: opnfv/functest-kubernetes-security:{tag}
858           projects:
859             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
860               <<: *functest-kubernetes-jobs
861             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench-run'
862               <<: *functest-kubernetes-jobs
863       - multijob:
864           name: opnfv/functest-kubernetes-benchmarking:{tag}
865           projects:
866             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
867               <<: *functest-kubernetes-jobs
868       - multijob:
869           name: opnfv/functest-kubernetes-cnf:{tag}
870           projects:
871             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_conformance-run'
872               <<: *functest-kubernetes-jobs
873             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
874               <<: *functest-kubernetes-jobs
875
876 - project:
877     name: 'functest-kubernetes'
878     <<: *functest-kubernetes-params
879     jobs:
880       - 'functest-kubernetes-{tag}-daily'
881
882 - project:
883     name: 'functest-kubernetes-gate'
884     <<: *functest-kubernetes-params
885     exclude:
886       - tag: arm64-latest
887       - tag: arm64-kali
888       - tag: arm64-jerma
889       - tag: arm64-iruya
890       - tag: arm64-hunter
891     jobs:
892       - 'functest-kubernetes-{tag}-check'
893       - 'functest-kubernetes-{tag}-gate'
894
895 - view:
896     name: functest-kubernetes
897     view-type: list
898     columns:
899       - status
900       - weather
901       - job
902       - last-success
903       - last-failure
904       - last-duration
905     regex: ^functest-kubernetes-(arm.*-|amd64-)*[a-z]+-daily$
906
907 - view:
908     name: functest-kubernetes-gate
909     view-type: list
910     columns:
911       - status
912       - weather
913       - job
914       - last-success
915       - last-failure
916       - last-duration
917     regex: ^functest-kubernetes-(arm.*-|amd64-)*[a-z]+-gate$