Merge "Add k8s_quick in all Functest K8s jjbs"
[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_quick
293       - k8s_smoke
294     privileged: 'false'
295     network: bridge
296     jobs:
297       - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
298
299 - project:
300     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke'
301     <<: *functest-kubernetes-params
302     container: 'functest-kubernetes-smoke'
303     test:
304       - xrally_kubernetes
305       - k8s_conformance
306     privileged: 'false'
307     network: bridge
308     jobs:
309       - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
310
311 - project:
312     name: 'functest-kubernetes-opnfv-functest-kubernetes-security'
313     <<: *functest-kubernetes-params
314     container: 'functest-kubernetes-security'
315     test:
316       - kube_hunter
317       - kube_bench
318     privileged: 'false'
319     network: bridge
320     jobs:
321       - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
322
323 - project:
324     name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking'
325     <<: *functest-kubernetes-params
326     container: 'functest-kubernetes-benchmarking'
327     test:
328       - xrally_kubernetes_full
329     privileged: 'false'
330     network: bridge
331     jobs:
332       - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
333
334 - project:
335     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf'
336     <<: *functest-kubernetes-params
337     container: 'functest-kubernetes-cnf'
338     test:
339       - cnf_conformance
340       - k8s_vims
341     privileged: 'false'
342     network: bridge
343     jobs:
344       - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
345
346
347 - builder:
348     name: functest-kubernetes-zip
349     builders:
350       - shell: |
351           set +x
352           [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/* || true
353           if [ "{repo}" = "_" ]; then
354             image={container}:{tag}
355           elif [ "{port}" = "None" ]; then
356             image={repo}/{container}:{tag}
357           else
358             image={repo}:{port}/{container}:{tag}
359           fi
360           docker run --rm \
361             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
362             -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes \
363             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes \
364             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
365             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
366             -e BUILD_TAG=$BUILD_TAG \
367             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
368             -e DEPLOY_SCENARIO=$DEPLOY_SCENARIO \
369             -e DEBUG=$DEBUG \
370             -v /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config \
371             -v /home/opnfv/functest-kubernetes/.boto:/root/.boto \
372             $image zip_campaign
373
374 - job-template:
375     name: 'functest-kubernetes-{tag}-zip'
376     parameters:
377       - functest-kubernetes-slave:
378           slave: '{slave}'
379       - functest-kubernetes-build_tag:
380           build_tag: ''
381       - functest-kubernetes-DEPLOY_SCENARIO:
382           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
383       - functest-kubernetes-DEBUG:
384           DEBUG: 'true'
385     builders:
386       - functest-kubernetes-zip:
387           <<: *functest-kubernetes-containers
388
389 - project:
390     name: 'functest-kubernetes-{tag}-zip'
391     <<: *functest-kubernetes-params
392     container: 'functest-kubernetes-healthcheck'
393     jobs:
394       - 'functest-kubernetes-{tag}-zip'
395
396 - job-template:
397     name: 'functest-kubernetes-{tag}-daily'
398     project-type: multijob
399     triggers:
400       - timed: '@weekly'
401     parameters:
402       - functest-kubernetes-slave:
403           slave: '{slave}'
404       - functest-kubernetes-build_tag:
405           build_tag: ''
406       - functest-kubernetes-DEPLOY_SCENARIO:
407           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
408       - functest-kubernetes-DEBUG:
409           DEBUG: 'true'
410     properties:
411       - build-blocker:
412           use-build-blocker: true
413           blocking-level: 'GLOBAL'
414           blocking-jobs:
415             - '^functest-kubernetes(-pi)?-(arm.*-|amd64-)*[a-z]+-(daily|gate|check)$'
416     builders:
417       - multijob:
418           name: remove former images
419           projects:
420             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
421               <<: *functest-kubernetes-jobs
422             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
423               <<: *functest-kubernetes-jobs
424             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
425               <<: *functest-kubernetes-jobs
426             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-pull'
427               <<: *functest-kubernetes-jobs
428             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
429               <<: *functest-kubernetes-jobs
430       - multijob:
431           name: pull containers
432           projects:
433             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-pull'
434               <<: *functest-kubernetes-jobs
435             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-pull'
436               <<: *functest-kubernetes-jobs
437             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-pull'
438               <<: *functest-kubernetes-jobs
439             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-pull'
440               <<: *functest-kubernetes-jobs
441             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-pull'
442               <<: *functest-kubernetes-jobs
443       - multijob:
444           name: opnfv/functest-kubernetes-healthcheck:{tag}
445           projects:
446             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_quick-run'
447               <<: *functest-kubernetes-jobs
448             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
449               <<: *functest-kubernetes-jobs
450       - multijob:
451           name: opnfv/functest-kubernetes-smoke:{tag}
452           projects:
453             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
454               <<: *functest-kubernetes-jobs
455             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
456               <<: *functest-kubernetes-jobs
457       - multijob:
458           name: opnfv/functest-kubernetes-security:{tag}
459           projects:
460             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
461               <<: *functest-kubernetes-jobs
462             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench-run'
463               <<: *functest-kubernetes-jobs
464       - multijob:
465           name: opnfv/functest-kubernetes-benchmarking:{tag}
466           projects:
467             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
468               <<: *functest-kubernetes-jobs
469       - multijob:
470           name: opnfv/functest-kubernetes-cnf:{tag}
471           projects:
472             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_conformance-run'
473               <<: *functest-kubernetes-jobs
474             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
475               <<: *functest-kubernetes-jobs
476       - multijob:
477           name: dump all campaign data
478           projects:
479             - name: 'functest-kubernetes-{tag}-zip'
480               <<: *functest-kubernetes-jobs
481
482 - job-template:
483     name: 'functest-kubernetes-{repo}-{container}-{tag}-gate'
484     parameters:
485       - functest-kubernetes-slave:
486           slave: '{slave}'
487     scm:
488       - functest-kubernetes-scm:
489           ref: $GERRIT_REFSPEC
490     builders:
491       - functest-kubernetes-build-containers:
492           <<: *functest-kubernetes-build-containers
493           ref: $GERRIT_REFSPEC
494
495 - job-template:
496     name: 'functest-kubernetes-{repo}-{container}-{tag}-check'
497     parameters:
498       - functest-kubernetes-slave:
499           slave: '{slave}'
500       - functest-kubernetes-branch:
501           branch: '{branch}'
502     scm:
503       - functest-kubernetes-scm:
504           ref: $branch
505     builders:
506       - functest-kubernetes-build-containers:
507           <<: *functest-kubernetes-build-containers
508           ref: $branch
509
510 - project:
511     name: 'functest-kubernetes-_-golang-1.15-alpine3.12-rmi'
512     repo: _
513     port:
514     container: golang
515     tag: '1.15-alpine3.12'
516     slave: master
517     exclude:
518       - tag: arm64-latest
519       - tag: arm64-kali
520       - tag: arm64-jerma
521       - tag: arm64-iruya
522       - tag: arm64-hunter
523     jobs:
524       - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
525
526 - project:
527     name: 'functest-kubernetes-_-golang-1.15-alpine3.12-pull'
528     repo: _
529     port:
530     container: golang
531     tag: '1.15-alpine3.12'
532     slave: master
533     exclude:
534       - tag: arm64-latest
535       - tag: arm64-kali
536       - tag: arm64-jerma
537       - tag: arm64-iruya
538       - tag: arm64-hunter
539     jobs:
540       - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
541
542 - project:
543     name: functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build
544     <<: *functest-kubernetes-params
545     container: functest-kubernetes-core
546     ref_arg: BRANCH
547     path: docker/core
548     exclude:
549       - tag: arm64-latest
550       - tag: arm64-kali
551       - tag: arm64-jerma
552       - tag: arm64-iruya
553       - tag: arm64-hunter
554     jobs:
555       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
556       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
557
558 - project:
559     name: functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build
560     <<: *functest-kubernetes-params
561     container: functest-kubernetes-healthcheck
562     ref_arg:
563     path: docker/healthcheck
564     exclude:
565       - tag: arm64-latest
566       - tag: arm64-kali
567       - tag: arm64-jerma
568       - tag: arm64-iruya
569       - tag: arm64-hunter
570     jobs:
571       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
572       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
573
574 - project:
575     name: functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build
576     <<: *functest-kubernetes-params
577     container: functest-kubernetes-cnf
578     ref_arg: BRANCH
579     path: docker/cnf
580     exclude:
581       - tag: arm64-latest
582       - tag: arm64-kali
583       - tag: arm64-jerma
584       - tag: arm64-iruya
585       - tag: arm64-hunter
586     jobs:
587       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
588       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
589
590 - project:
591     name: functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build
592     <<: *functest-kubernetes-params
593     container: functest-kubernetes-security
594     ref_arg: BRANCH
595     path: docker/security
596     exclude:
597       - tag: arm64-latest
598       - tag: arm64-kali
599       - tag: arm64-jerma
600       - tag: arm64-iruya
601       - tag: arm64-hunter
602     jobs:
603       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
604       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
605
606 - project:
607     name: functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build
608     <<: *functest-kubernetes-params
609     container: functest-kubernetes-smoke
610     ref_arg:
611     path: docker/smoke
612     exclude:
613       - tag: arm64-latest
614       - tag: arm64-kali
615       - tag: arm64-jerma
616       - tag: arm64-iruya
617       - tag: arm64-hunter
618     jobs:
619       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
620       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
621
622 - project:
623     name: functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-build
624     <<: *functest-kubernetes-params
625     container: functest-kubernetes-benchmarking
626     ref_arg:
627     path: docker/benchmarking
628     exclude:
629       - tag: arm64-latest
630       - tag: arm64-kali
631       - tag: arm64-jerma
632       - tag: arm64-iruya
633       - tag: arm64-hunter
634     jobs:
635       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
636       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
637
638 - job-template:
639     name: 'functest-kubernetes-{tag}-check'
640     project-type: multijob
641     parameters:
642       - functest-kubernetes-slave:
643           slave: '{slave}'
644       - functest-kubernetes-build_tag:
645           build_tag: ''
646       - functest-kubernetes-branch:
647           branch: '{branch}'
648       - functest-kubernetes-DEPLOY_SCENARIO:
649           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
650       - functest-kubernetes-DEBUG:
651           DEBUG: 'true'
652     properties:
653       - build-blocker:
654           use-build-blocker: true
655           blocking-level: 'GLOBAL'
656           blocking-jobs:
657             - '^functest-kubernetes(-pi)?-(arm.*-|amd64-)*[a-z]+-(daily|gate|check)$'
658     builders:
659       - multijob:
660           name: remove former images
661           projects:
662             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
663               <<: *functest-kubernetes-jobs
664             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
665               <<: *functest-kubernetes-jobs
666             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
667               <<: *functest-kubernetes-jobs
668             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
669               <<: *functest-kubernetes-jobs
670             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
671               <<: *functest-kubernetes-jobs
672       - multijob:
673           name: remove dependencies
674           projects:
675             - name: 'functest-kubernetes-_-golang-1.15-alpine3.12-rmi'
676               <<: *functest-kubernetes-jobs
677       - multijob:
678           name: pull dependencies
679           projects:
680             - name: 'functest-kubernetes-_-golang-1.15-alpine3.12-pull'
681               <<: *functest-kubernetes-jobs
682       - multijob:
683           name: build opnfv/functest-kubernetes-core
684           projects:
685             - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-check'
686               <<: *functest-kubernetes-jobs
687       - multijob:
688           name: build opnfv/functest-kubernetes-healthcheck
689           projects:
690             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-check'
691               <<: *functest-kubernetes-jobs
692             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-check'
693               <<: *functest-kubernetes-jobs
694             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-check'
695               <<: *functest-kubernetes-jobs
696       - multijob:
697           name: build containers
698           projects:
699             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-check'
700               <<: *functest-kubernetes-jobs
701       - multijob:
702           name: build opnfv/functest-kubernetes-benchmarking
703           projects:
704             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-check'
705               <<: *functest-kubernetes-jobs
706       - multijob:
707           name: opnfv/functest-kubernetes-healthcheck:{tag}
708           projects:
709             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_quick-run'
710               <<: *functest-kubernetes-jobs
711             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
712               <<: *functest-kubernetes-jobs
713       - multijob:
714           name: opnfv/functest-kubernetes-smoke:{tag}
715           projects:
716             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
717               <<: *functest-kubernetes-jobs
718             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
719               <<: *functest-kubernetes-jobs
720       - multijob:
721           name: opnfv/functest-kubernetes-benchmarking:{tag}
722           projects:
723             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
724               <<: *functest-kubernetes-jobs
725       - multijob:
726           name: opnfv/functest-kubernetes-security:{tag}
727           projects:
728             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
729               <<: *functest-kubernetes-jobs
730             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench-run'
731               <<: *functest-kubernetes-jobs
732       - multijob:
733           name: opnfv/functest-kubernetes-cnf:{tag}
734           projects:
735             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_conformance-run'
736               <<: *functest-kubernetes-jobs
737             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
738               <<: *functest-kubernetes-jobs
739
740 - trigger:
741     name: functest-kubernetes-patchset-created
742     triggers:
743       - gerrit:
744           server-name: 'gerrit.opnfv.org'
745           trigger-on:
746             - patchset-created-event
747             - comment-added-contains-event:
748                 comment-contains-value: 'recheck'
749             - comment-added-contains-event:
750                 comment-contains-value: 'reverify'
751           projects:
752             - project-compare-type: 'ANT'
753               project-pattern: 'functest-kubernetes'
754               branches:
755                 - branch-compare-type: 'ANT'
756                   branch-pattern: '**/{branch}'
757           skip-vote:
758             successful: false
759             failed: false
760             unstable: false
761             notbuilt: false
762
763 - job-template:
764     name: 'functest-kubernetes-{tag}-gate'
765     project-type: multijob
766     triggers:
767       - functest-kubernetes-patchset-created:
768           branch: '{branch}'
769     parameters:
770       - functest-kubernetes-slave:
771           slave: '{slave}'
772       - functest-kubernetes-build_tag:
773           build_tag: ''
774       - functest-kubernetes-DEPLOY_SCENARIO:
775           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
776       - functest-kubernetes-DEBUG:
777           DEBUG: 'true'
778     properties:
779       - build-blocker:
780           use-build-blocker: true
781           blocking-level: 'GLOBAL'
782           blocking-jobs:
783             - '^functest-kubernetes(-pi)?-(arm.*-|amd64-)*[a-z]+-(daily|gate|check)$'
784     builders:
785       - multijob:
786           name: remove former images
787           projects:
788             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
789               <<: *functest-kubernetes-jobs
790             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
791               <<: *functest-kubernetes-jobs
792             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
793               <<: *functest-kubernetes-jobs
794             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-rmi'
795               <<: *functest-kubernetes-jobs
796             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
797               <<: *functest-kubernetes-jobs
798       - multijob:
799           name: remove dependencies
800           projects:
801             - name: 'functest-kubernetes-_-golang-1.15-alpine3.12-rmi'
802               <<: *functest-kubernetes-jobs
803       - multijob:
804           name: pull dependencies
805           projects:
806             - name: 'functest-kubernetes-_-golang-1.15-alpine3.12-pull'
807               <<: *functest-kubernetes-jobs
808       - multijob:
809           name: build opnfv/functest-kubernetes-core
810           projects:
811             - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate'
812               <<: *functest-kubernetes-jobs
813       - multijob:
814           name: build opnfv/functest-kubernetes-healthcheck
815           projects:
816             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate'
817               <<: *functest-kubernetes-jobs
818             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate'
819               <<: *functest-kubernetes-jobs
820             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate'
821               <<: *functest-kubernetes-jobs
822       - multijob:
823           name: build containers
824           projects:
825             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate'
826               <<: *functest-kubernetes-jobs
827       - multijob:
828           name: build opnfv/functest-kubernetes-benchmarking
829           projects:
830             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-gate'
831               <<: *functest-kubernetes-jobs
832       - multijob:
833           name: opnfv/functest-kubernetes-healthcheck:{tag}
834           projects:
835             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_quick-run'
836               <<: *functest-kubernetes-jobs
837             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
838               <<: *functest-kubernetes-jobs
839       - multijob:
840           name: opnfv/functest-kubernetes-smoke:{tag}
841           projects:
842             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
843               <<: *functest-kubernetes-jobs
844             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
845               <<: *functest-kubernetes-jobs
846       - multijob:
847           name: opnfv/functest-kubernetes-security:{tag}
848           projects:
849             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
850               <<: *functest-kubernetes-jobs
851             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench-run'
852               <<: *functest-kubernetes-jobs
853       - multijob:
854           name: opnfv/functest-kubernetes-benchmarking:{tag}
855           projects:
856             - name: 'functest-kubernetes-opnfv-functest-kubernetes-benchmarking-{tag}-xrally_kubernetes_full-run'
857               <<: *functest-kubernetes-jobs
858       - multijob:
859           name: opnfv/functest-kubernetes-cnf:{tag}
860           projects:
861             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-cnf_conformance-run'
862               <<: *functest-kubernetes-jobs
863             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
864               <<: *functest-kubernetes-jobs
865
866 - project:
867     name: 'functest-kubernetes'
868     <<: *functest-kubernetes-params
869     jobs:
870       - 'functest-kubernetes-{tag}-daily'
871
872 - project:
873     name: 'functest-kubernetes-gate'
874     <<: *functest-kubernetes-params
875     exclude:
876       - tag: arm64-latest
877       - tag: arm64-kali
878       - tag: arm64-jerma
879       - tag: arm64-iruya
880       - tag: arm64-hunter
881     jobs:
882       - 'functest-kubernetes-{tag}-check'
883       - 'functest-kubernetes-{tag}-gate'
884
885 - view:
886     name: functest-kubernetes
887     view-type: list
888     columns:
889       - status
890       - weather
891       - job
892       - last-success
893       - last-failure
894       - last-duration
895     regex: ^functest-kubernetes-(arm.*-|amd64-)*[a-z]+-daily$
896
897 - view:
898     name: functest-kubernetes-gate
899     view-type: list
900     columns:
901       - status
902       - weather
903       - job
904       - last-success
905       - last-failure
906       - last-duration
907     regex: ^functest-kubernetes-(arm.*-|amd64-)*[a-z]+-gate$