Merge "Remove 'tox-dir' from LaaS Tox Verify Job"
[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
27 - parameter:
28     name: functest-kubernetes-slave
29     parameters:
30       - label:
31           name: slave
32           default: '{slave}'
33
34 - parameter:
35     name: functest-kubernetes-build_tag
36     parameters:
37       - random-string:
38           name: build_tag
39
40 - parameter:
41     name: functest-kubernetes-branch
42     parameters:
43       - string:
44           name: branch
45           default: '{branch}'
46
47 - parameter:
48     name: functest-kubernetes-DEPLOY_SCENARIO
49     parameters:
50       - string:
51           name: DEPLOY_SCENARIO
52           default: k8-nosdn-nofeature-noha
53 - parameter:
54     name: functest-kubernetes-DEBUG
55     parameters:
56       - string:
57           name: DEBUG
58           default: 'true'
59
60 - functest-kubernetes-containers: &functest-kubernetes-containers
61     name: 'functest-kubernetes-containers'
62     repo: '{repo}'
63     port: '{port}'
64     container: '{container}'
65     tag: '{tag}'
66
67 - functest-kubernetes-run-containers: &functest-kubernetes-run-containers
68     name: 'functest-kubernetes-run-containers'
69     <<: *functest-kubernetes-containers
70     test: '{test}'
71
72 - builder:
73     name: functest-kubernetes-pull-containers
74     builders:
75       - shell: |
76           set +x
77           if [ "{repo}" = "_" ]; then
78             image={container}:{tag}
79           elif [ "{port}" = "None" ]; then
80             image={repo}/{container}:{tag}
81           else
82             image={repo}:{port}/{container}:{tag}
83           fi
84           docker pull $image
85
86 - builder:
87     name: functest-kubernetes-run-containers
88     builders:
89       - shell: |
90           set +x
91           [ ! -z "$WORKSPACE" ] && rm -rf $WORKSPACE/* || true
92           if [ "{repo}" = "_" ]; then
93             image={container}:{tag}
94           elif [ "{port}" = "None" ]; then
95             image={repo}/{container}:{tag}
96           else
97             image={repo}:{port}/{container}:{tag}
98           fi
99           docker run --rm \
100             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
101             -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
102             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes/$BUILD_TAG/$JOB_NAME-$BUILD_ID \
103             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
104             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
105             -e NODE_NAME=$slave \
106             -e BUILD_TAG=$BUILD_TAG \
107             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
108             -e DEPLOY_SCENARIO=$DEPLOY_SCENARIO \
109             -e DEBUG=$DEBUG \
110             -v /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config \
111             -v /home/opnfv/functest-kubernetes/.boto:/root/.boto \
112             $image run_tests -t {test} -p -r
113
114 - builder:
115     name: functest-kubernetes-remove-images
116     builders:
117       - shell: |
118           set +x
119           if [ "{repo}" = "_" ]; then
120             image={container}:{tag}
121           elif [ "{port}" = "None" ]; then
122             image={repo}/{container}:{tag}
123           else
124             image={repo}:{port}/{container}:{tag}
125           fi
126           docker rmi $image || true
127
128 - functest-kubernetes-build-containers: &functest-kubernetes-build-containers
129     name: 'functest-kubernetes-build-containers'
130     <<: *functest-kubernetes-containers
131     ref_arg: '{ref_arg}'
132     path: '{path}'
133
134 - builder:
135     name: functest-kubernetes-build-containers
136     builders:
137       - shell: |
138           set +x
139           if [ "{repo}" = "_" ]; then
140             image={container}:{tag}
141           elif [ "{port}" = "None" ]; then
142             image={repo}/{container}:{tag}
143           else
144             image={repo}:{port}/{container}:{tag}
145           fi
146           if [ "{ref_arg}" = "None" ]; then
147             build_arg=""
148           else
149             build_arg="--build-arg {ref_arg}={ref}"
150           fi
151           cd {path}
152           docker build $build_arg \
153             --pull=false --no-cache --force-rm=true \
154             -t $image .
155
156 - scm:
157     name: functest-kubernetes-scm
158     scm:
159       - git:
160           url: https://gerrit.opnfv.org/gerrit/functest-kubernetes
161           refspec: '+refs/changes/*:refs/changes/*'
162           branches:
163             - '{ref}'
164
165 - job-template:
166     name: 'functest-kubernetes-{repo}-{container}-{tag}-pull'
167     parameters:
168       - functest-kubernetes-slave:
169           slave: '{slave}'
170     builders:
171       - functest-kubernetes-pull-containers:
172           <<: *functest-kubernetes-containers
173
174 - project:
175     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-pull'
176     <<: *functest-kubernetes-params
177     container: 'functest-kubernetes-healthcheck'
178     jobs:
179       - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
180
181 - project:
182     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-pull'
183     <<: *functest-kubernetes-params
184     container: 'functest-kubernetes-smoke'
185     jobs:
186       - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
187
188 - project:
189     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-pull'
190     <<: *functest-kubernetes-params
191     container: 'functest-kubernetes-cnf'
192     jobs:
193       - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
194
195 - project:
196     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-pull'
197     <<: *functest-kubernetes-params
198     container: 'functest-kubernetes-security'
199     jobs:
200       - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
201
202 - job-template:
203     name: 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
204     parameters:
205       - functest-kubernetes-slave:
206           slave: '{slave}'
207     builders:
208       - functest-kubernetes-remove-images:
209           <<: *functest-kubernetes-containers
210
211 - project:
212     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-rmi'
213     <<: *functest-kubernetes-params
214     container: 'functest-kubernetes-healthcheck'
215     jobs:
216       - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
217
218 - project:
219     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-rmi'
220     <<: *functest-kubernetes-params
221     container: 'functest-kubernetes-smoke'
222     jobs:
223       - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
224
225 - project:
226     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-rmi'
227     <<: *functest-kubernetes-params
228     container: 'functest-kubernetes-cnf'
229     jobs:
230       - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
231
232 - project:
233     name: 'functest-kubernetes-opnfv-functest-kubernetes-security-rmi'
234     <<: *functest-kubernetes-params
235     container: 'functest-kubernetes-security'
236     jobs:
237       - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
238
239 - job-template:
240     name: 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
241     parameters:
242       - functest-kubernetes-slave:
243           slave: '{slave}'
244       - functest-kubernetes-build_tag:
245           build_tag: ''
246       - functest-kubernetes-DEPLOY_SCENARIO:
247           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
248       - functest-kubernetes-DEBUG:
249           DEBUG: 'true'
250     builders:
251       - functest-kubernetes-run-containers:
252           <<: *functest-kubernetes-run-containers
253
254 - project:
255     name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck'
256     <<: *functest-kubernetes-params
257     container: 'functest-kubernetes-healthcheck'
258     test:
259       - k8s_smoke
260     jobs:
261       - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
262
263 - project:
264     name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke'
265     <<: *functest-kubernetes-params
266     container: 'functest-kubernetes-smoke'
267     test:
268       - xrally_kubernetes
269       - k8s_conformance
270     jobs:
271       - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
272
273 - project:
274     name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf'
275     <<: *functest-kubernetes-params
276     container: 'functest-kubernetes-cnf'
277     test:
278       - k8s_vims
279     jobs:
280       - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
281
282 - project:
283     name: 'functest-kubernetes-opnfv-functest-kubernetes-security'
284     <<: *functest-kubernetes-params
285     container: 'functest-kubernetes-security'
286     test:
287       - kube_hunter
288       - kube_bench
289     jobs:
290       - 'functest-kubernetes-{repo}-{container}-{tag}-{test}-run'
291
292
293 - builder:
294     name: functest-kubernetes-zip
295     builders:
296       - shell: |
297           set +x
298           [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/* || true
299           if [ "{repo}" = "_" ]; then
300             image={container}:{tag}
301           elif [ "{port}" = "None" ]; then
302             image={repo}/{container}:{tag}
303           else
304             image={repo}:{port}/{container}:{tag}
305           fi
306           docker run --rm \
307             -e S3_ENDPOINT_URL=https://storage.googleapis.com \
308             -e S3_DST_URL=s3://artifacts.opnfv.org/functest-kubernetes \
309             -e HTTP_DST_URL=http://artifacts.opnfv.org/functest-kubernetes \
310             -e TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results \
311             -e TEST_DB_EXT_URL=http://testresults.opnfv.org/test/api/v1/results \
312             -e BUILD_TAG=$BUILD_TAG \
313             -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
314             -e DEPLOY_SCENARIO=$DEPLOY_SCENARIO \
315             -e DEBUG=$DEBUG \
316             -v /home/opnfv/functest-kubernetes/config.{tag}:/root/.kube/config \
317             -v /home/opnfv/functest-kubernetes/.boto:/root/.boto \
318             $image zip_campaign
319
320 - job-template:
321     name: 'functest-kubernetes-{tag}-zip'
322     parameters:
323       - functest-kubernetes-slave:
324           slave: '{slave}'
325       - functest-kubernetes-build_tag:
326           build_tag: ''
327       - functest-kubernetes-DEPLOY_SCENARIO:
328           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
329       - functest-kubernetes-DEBUG:
330           DEBUG: 'true'
331     builders:
332       - functest-kubernetes-zip:
333           <<: *functest-kubernetes-containers
334
335 - project:
336     name: 'functest-kubernetes-{tag}-zip'
337     <<: *functest-kubernetes-params
338     container: 'functest-kubernetes-healthcheck'
339     jobs:
340       - 'functest-kubernetes-{tag}-zip'
341
342 - job-template:
343     name: 'functest-kubernetes-{tag}-daily'
344     project-type: multijob
345     triggers:
346       - timed: '@daily'
347     parameters:
348       - functest-kubernetes-slave:
349           slave: '{slave}'
350       - functest-kubernetes-build_tag:
351           build_tag: ''
352       - functest-kubernetes-DEPLOY_SCENARIO:
353           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
354       - functest-kubernetes-DEBUG:
355           DEBUG: 'true'
356     properties:
357       - build-blocker:
358           use-build-blocker: true
359           blocking-level: 'NODE'
360           blocking-jobs:
361             - '^functest-kubernetes-{tag}-(daily|check|gate)$'
362     builders:
363       - multijob:
364           name: remove former images
365           projects:
366             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
367               <<: *functest-kubernetes-jobs
368             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
369               <<: *functest-kubernetes-jobs
370             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
371               <<: *functest-kubernetes-jobs
372             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
373               <<: *functest-kubernetes-jobs
374       - multijob:
375           name: pull containers
376           projects:
377             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-pull'
378               <<: *functest-kubernetes-jobs
379             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-pull'
380               <<: *functest-kubernetes-jobs
381             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-pull'
382               <<: *functest-kubernetes-jobs
383             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-pull'
384               <<: *functest-kubernetes-jobs
385       - multijob:
386           name: opnfv/functest-kubernetes-healthcheck:{tag}
387           projects:
388             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
389               <<: *functest-kubernetes-jobs
390       - multijob:
391           name: opnfv/functest-kubernetes-smoke:{tag}
392           projects:
393             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
394               <<: *functest-kubernetes-jobs
395             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
396               <<: *functest-kubernetes-jobs
397       - multijob:
398           name: opnfv/functest-kubernetes-security:{tag}
399           projects:
400             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
401               <<: *functest-kubernetes-jobs
402             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench-run'
403               <<: *functest-kubernetes-jobs
404       - multijob:
405           name: opnfv/functest-kubernetes-cnf:{tag}
406           projects:
407             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
408               <<: *functest-kubernetes-jobs
409       - multijob:
410           name: dump all campaign data
411           projects:
412             - name: 'functest-kubernetes-{tag}-zip'
413               <<: *functest-kubernetes-jobs
414
415 - job-template:
416     name: 'functest-kubernetes-{repo}-{container}-{tag}-gate'
417     parameters:
418       - functest-kubernetes-slave:
419           slave: '{slave}'
420     scm:
421       - functest-kubernetes-scm:
422           ref: $GERRIT_REFSPEC
423     builders:
424       - functest-kubernetes-build-containers:
425           <<: *functest-kubernetes-build-containers
426           ref: $GERRIT_REFSPEC
427
428 - job-template:
429     name: 'functest-kubernetes-{repo}-{container}-{tag}-check'
430     parameters:
431       - functest-kubernetes-slave:
432           slave: '{slave}'
433       - functest-kubernetes-branch:
434           branch: '{branch}'
435     scm:
436       - functest-kubernetes-scm:
437           ref: $branch
438     builders:
439       - functest-kubernetes-build-containers:
440           <<: *functest-kubernetes-build-containers
441           ref: $branch
442
443 - project:
444     name: 'functest-kubernetes-_-golang-1.14-alpine3.12-rmi'
445     repo: _
446     port:
447     container: golang
448     tag: '1.14-alpine3.12'
449     slave: master
450     jobs:
451       - 'functest-kubernetes-{repo}-{container}-{tag}-rmi'
452
453 - project:
454     name: 'functest-kubernetes-_-golang-1.14-alpine3.12-pull'
455     repo: _
456     port:
457     container: golang
458     tag: '1.14-alpine3.12'
459     slave: master
460     jobs:
461       - 'functest-kubernetes-{repo}-{container}-{tag}-pull'
462
463 - project:
464     name: functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-build
465     <<: *functest-kubernetes-params
466     container: functest-kubernetes-core
467     ref_arg: BRANCH
468     path: docker/core
469     jobs:
470       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
471       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
472
473 - project:
474     name: functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-build
475     <<: *functest-kubernetes-params
476     container: functest-kubernetes-healthcheck
477     ref_arg:
478     path: docker/healthcheck
479     jobs:
480       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
481       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
482
483 - project:
484     name: functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-build
485     <<: *functest-kubernetes-params
486     container: functest-kubernetes-cnf
487     ref_arg: BRANCH
488     path: docker/cnf
489     jobs:
490       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
491       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
492
493 - project:
494     name: functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-build
495     <<: *functest-kubernetes-params
496     container: functest-kubernetes-security
497     ref_arg: BRANCH
498     path: docker/security
499     jobs:
500       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
501       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
502
503 - project:
504     name: functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-build
505     <<: *functest-kubernetes-params
506     container: functest-kubernetes-smoke
507     ref_arg:
508     path: docker/smoke
509     jobs:
510       - 'functest-kubernetes-{repo}-{container}-{tag}-gate'
511       - 'functest-kubernetes-{repo}-{container}-{tag}-check'
512
513 - job-template:
514     name: 'functest-kubernetes-{tag}-check'
515     project-type: multijob
516     parameters:
517       - functest-kubernetes-slave:
518           slave: '{slave}'
519       - functest-kubernetes-build_tag:
520           build_tag: ''
521       - functest-kubernetes-branch:
522           branch: '{branch}'
523       - functest-kubernetes-DEPLOY_SCENARIO:
524           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
525       - functest-kubernetes-DEBUG:
526           DEBUG: 'true'
527     properties:
528       - build-blocker:
529           use-build-blocker: true
530           blocking-level: 'NODE'
531           blocking-jobs:
532             - '^functest-kubernetes-{tag}-(daily|check|gate)$'
533     builders:
534       - multijob:
535           name: remove former images
536           projects:
537             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
538               <<: *functest-kubernetes-jobs
539             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
540               <<: *functest-kubernetes-jobs
541             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
542               <<: *functest-kubernetes-jobs
543             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
544               <<: *functest-kubernetes-jobs
545       - multijob:
546           name: remove dependencies
547           projects:
548             - name: 'functest-kubernetes-_-golang-1.14-alpine3.12-rmi'
549               <<: *functest-kubernetes-jobs
550       - multijob:
551           name: pull dependencies
552           projects:
553             - name: 'functest-kubernetes-_-golang-1.14-alpine3.12-pull'
554               <<: *functest-kubernetes-jobs
555       - multijob:
556           name: build opnfv/functest-kubernetes-core
557           projects:
558             - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-check'
559               <<: *functest-kubernetes-jobs
560       - multijob:
561           name: build opnfv/functest-kubernetes-healthcheck
562           projects:
563             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-check'
564               <<: *functest-kubernetes-jobs
565             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-check'
566               <<: *functest-kubernetes-jobs
567             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-check'
568               <<: *functest-kubernetes-jobs
569       - multijob:
570           name: build containers
571           projects:
572             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-check'
573               <<: *functest-kubernetes-jobs
574       - multijob:
575           name: opnfv/functest-kubernetes-healthcheck:{tag}
576           projects:
577             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
578               <<: *functest-kubernetes-jobs
579       - multijob:
580           name: opnfv/functest-kubernetes-smoke:{tag}
581           execution-type: SEQUENTIALLY
582           projects:
583             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
584               <<: *functest-kubernetes-jobs
585             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
586               <<: *functest-kubernetes-jobs
587       - multijob:
588           name: opnfv/functest-kubernetes-security:{tag}
589           projects:
590             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
591               <<: *functest-kubernetes-jobs
592             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench-run'
593               <<: *functest-kubernetes-jobs
594       - multijob:
595           name: opnfv/functest-kubernetes-cnf:{tag}
596           projects:
597             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
598               <<: *functest-kubernetes-jobs
599
600 - trigger:
601     name: functest-kubernetes-patchset-created
602     triggers:
603       - gerrit:
604           server-name: 'gerrit.opnfv.org'
605           trigger-on:
606             - patchset-created-event
607             - comment-added-contains-event:
608                 comment-contains-value: 'recheck'
609             - comment-added-contains-event:
610                 comment-contains-value: 'reverify'
611           projects:
612             - project-compare-type: 'ANT'
613               project-pattern: 'functest-kubernetes'
614               branches:
615                 - branch-compare-type: 'ANT'
616                   branch-pattern: '**/{branch}'
617           skip-vote:
618             successful: false
619             failed: false
620             unstable: false
621             notbuilt: false
622
623 - job-template:
624     name: 'functest-kubernetes-{tag}-gate'
625     project-type: multijob
626     triggers:
627       - functest-kubernetes-patchset-created:
628           branch: '{branch}'
629     parameters:
630       - functest-kubernetes-slave:
631           slave: '{slave}'
632       - functest-kubernetes-build_tag:
633           build_tag: ''
634       - functest-kubernetes-DEPLOY_SCENARIO:
635           DEPLOY_SCENARIO: k8-nosdn-nofeature-noha
636       - functest-kubernetes-DEBUG:
637           DEBUG: 'true'
638     properties:
639       - build-blocker:
640           use-build-blocker: true
641           blocking-level: 'NODE'
642           blocking-jobs:
643             - '^functest-kubernetes-{tag}-(daily|check|gate)$'
644     builders:
645       - multijob:
646           name: remove former images
647           projects:
648             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-rmi'
649               <<: *functest-kubernetes-jobs
650             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-rmi'
651               <<: *functest-kubernetes-jobs
652             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-rmi'
653               <<: *functest-kubernetes-jobs
654             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-rmi'
655               <<: *functest-kubernetes-jobs
656       - multijob:
657           name: remove dependencies
658           projects:
659             - name: 'functest-kubernetes-_-golang-1.14-alpine3.12-rmi'
660               <<: *functest-kubernetes-jobs
661       - multijob:
662           name: pull dependencies
663           projects:
664             - name: 'functest-kubernetes-_-golang-1.14-alpine3.12-pull'
665               <<: *functest-kubernetes-jobs
666       - multijob:
667           name: build opnfv/functest-kubernetes-core
668           projects:
669             - name: 'functest-kubernetes-opnfv-functest-kubernetes-core-{tag}-gate'
670               <<: *functest-kubernetes-jobs
671       - multijob:
672           name: build opnfv/functest-kubernetes-healthcheck
673           projects:
674             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-gate'
675               <<: *functest-kubernetes-jobs
676             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-gate'
677               <<: *functest-kubernetes-jobs
678             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-gate'
679               <<: *functest-kubernetes-jobs
680       - multijob:
681           name: build containers
682           projects:
683             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-gate'
684               <<: *functest-kubernetes-jobs
685       - multijob:
686           name: opnfv/functest-kubernetes-healthcheck:{tag}
687           projects:
688             - name: 'functest-kubernetes-opnfv-functest-kubernetes-healthcheck-{tag}-k8s_smoke-run'
689               <<: *functest-kubernetes-jobs
690       - multijob:
691           name: opnfv/functest-kubernetes-smoke:{tag}
692           execution-type: SEQUENTIALLY
693           projects:
694             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-xrally_kubernetes-run'
695               <<: *functest-kubernetes-jobs
696             - name: 'functest-kubernetes-opnfv-functest-kubernetes-smoke-{tag}-k8s_conformance-run'
697               <<: *functest-kubernetes-jobs
698       - multijob:
699           name: opnfv/functest-kubernetes-security:{tag}
700           projects:
701             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_hunter-run'
702               <<: *functest-kubernetes-jobs
703             - name: 'functest-kubernetes-opnfv-functest-kubernetes-security-{tag}-kube_bench-run'
704               <<: *functest-kubernetes-jobs
705       - multijob:
706           name: opnfv/functest-kubernetes-cnf:{tag}
707           projects:
708             - name: 'functest-kubernetes-opnfv-functest-kubernetes-cnf-{tag}-k8s_vims-run'
709               <<: *functest-kubernetes-jobs
710
711 - project:
712     name: 'functest-kubernetes'
713     <<: *functest-kubernetes-params
714     jobs:
715       - 'functest-kubernetes-{tag}-daily'
716       - 'functest-kubernetes-{tag}-check'
717       - 'functest-kubernetes-{tag}-gate'
718
719 - view:
720     name: functest-kubernetes
721     view-type: list
722     columns:
723       - status
724       - weather
725       - job
726       - last-success
727       - last-failure
728       - last-duration
729     regex: ^functest-kubernetes-[a-z]+-daily$
730
731 - view:
732     name: functest-kubernetes-gate
733     view-type: list
734     columns:
735       - status
736       - weather
737       - job
738       - last-success
739       - last-failure
740       - last-duration
741     regex: ^functest-kubernetes-[a-z]+-gate$