Merge "[compass] add job to verify k8s deploy"
[releng.git] / jjb / apex / apex.yml
1 - project:
2     name: apex
3     jobs:
4         - 'apex-verify-{stream}'
5         - 'apex-verify-gate-{stream}'
6         - 'apex-verify-unit-tests-{stream}'
7         - 'apex-runner-{platform}-{scenario}-{stream}'
8         - 'apex-runner-cperf-{stream}'
9         - 'apex-build-{stream}'
10         - 'apex-deploy-virtual-{scenario}-{stream}'
11         - 'apex-deploy-baremetal-{scenario}-{stream}'
12         - 'apex-daily-{stream}'
13         - 'apex-csit-promote-daily-{stream}'
14         - 'apex-fdio-promote-daily-{stream}'
15
16     # stream:    branch with - in place of / (eg. stable-arno)
17     # branch:    branch (eg. stable/arno)
18     stream:
19         - master:
20             branch: 'master'
21             gs-pathname: ''
22             slave: 'lf-pod1'
23             verify-slave: 'apex-verify-master'
24             daily-slave: 'apex-daily-master'
25         - danube:
26             branch: 'stable/danube'
27             gs-pathname: '/danube'
28             slave: 'lf-pod1'
29             verify-slave: 'apex-verify-master'
30             daily-slave: 'apex-daily-master'
31
32     project: 'apex'
33
34     scenario:
35          - 'os-nosdn-nofeature-noha'
36          - 'os-nosdn-nofeature-ha'
37          - 'os-nosdn-nofeature-ha-ipv6'
38          - 'os-nosdn-ovs-noha'
39          - 'os-nosdn-fdio-noha'
40          - 'os-nosdn-fdio-ha'
41          - 'os-nosdn-kvm-ha'
42          - 'os-nosdn-kvm-noha'
43          - 'os-odl_l2-fdio-noha'
44          - 'os-odl_l2-fdio-ha'
45          - 'os-odl_l2-netvirt_gbp_fdio-noha'
46          - 'os-odl_l2-sfc-noha'
47          - 'os-odl_l3-nofeature-ha'
48          - 'os-odl-bgpvpn-ha'
49          - 'os-odl-gluon-noha'
50          - 'os-odl_l3-fdio-noha'
51          - 'os-odl_l3-fdio-ha'
52          - 'os-odl_l3-fdio_dvr-noha'
53          - 'os-odl_l3-fdio_dvr-ha'
54          - 'os-odl_l3-csit-noha'
55          - 'os-onos-nofeature-ha'
56          - 'gate'
57
58     platform:
59          - 'baremetal'
60          - 'virtual'
61
62 # Unit Test
63 - job-template:
64     name: 'apex-verify-unit-tests-{stream}'
65
66     node: '{verify-slave}'
67
68     concurrent: true
69
70     parameters:
71         - apex-parameter:
72             gs-pathname: '{gs-pathname}'
73         - project-parameter:
74             project: '{project}'
75             branch: '{branch}'
76         - string:
77             name: GIT_BASE
78             default: https://gerrit.opnfv.org/gerrit/$PROJECT
79             description: "Used for overriding the GIT URL coming from parameters macro."
80
81     scm:
82         - git-scm-gerrit
83
84     triggers:
85         - gerrit:
86             server-name: 'gerrit.opnfv.org'
87             trigger-on:
88                 - patchset-created-event:
89                     exclude-drafts: 'false'
90                     exclude-trivial-rebase: 'false'
91                     exclude-no-code-change: 'true'
92                 - draft-published-event
93                 - comment-added-contains-event:
94                     comment-contains-value: 'recheck'
95                 - comment-added-contains-event:
96                     comment-contains-value: 'reverify'
97             projects:
98               - project-compare-type: 'ANT'
99                 project-pattern: 'apex'
100                 branches:
101                   - branch-compare-type: 'ANT'
102                     branch-pattern: '**/{branch}'
103                 file-paths:
104                   - compare-type: ANT
105                     pattern: 'tests/**'
106     properties:
107         - logrotate-default
108         - throttle:
109             max-per-node: 1
110             max-total: 10
111             option: 'project'
112
113     builders:
114         - 'apex-unit-test'
115
116 # Verify
117 - job-template:
118     name: 'apex-verify-{stream}'
119
120     node: '{verify-slave}'
121
122     concurrent: true
123
124     parameters:
125         - apex-parameter:
126             gs-pathname: '{gs-pathname}'
127         - project-parameter:
128             project: '{project}'
129             branch: '{branch}'
130         - string:
131             name: GIT_BASE
132             default: https://gerrit.opnfv.org/gerrit/$PROJECT
133             description: "Used for overriding the GIT URL coming from parameters macro."
134
135     scm:
136         - git-scm-gerrit
137
138     triggers:
139         - gerrit:
140             server-name: 'gerrit.opnfv.org'
141             trigger-on:
142                 - patchset-created-event:
143                     exclude-drafts: 'false'
144                     exclude-trivial-rebase: 'false'
145                     exclude-no-code-change: 'true'
146                 - draft-published-event
147                 - comment-added-contains-event:
148                     comment-contains-value: 'recheck'
149                 - comment-added-contains-event:
150                     comment-contains-value: 'reverify'
151             projects:
152               - project-compare-type: 'ANT'
153                 project-pattern: 'apex'
154                 branches:
155                   - branch-compare-type: 'ANT'
156                     branch-pattern: '**/{branch}'
157                 file-paths:
158                   - compare-type: ANT
159                     pattern: 'ci/**'
160                   - compare-type: ANT
161                     pattern: 'build/**'
162                   - compare-type: ANT
163                     pattern: 'lib/**'
164                   - compare-type: ANT
165                     pattern: 'config/**'
166
167     properties:
168         - logrotate-default
169         - build-blocker:
170             use-build-blocker: true
171             block-level: 'NODE'
172             blocking-jobs:
173                 - 'apex-daily.*'
174                 - 'apex-deploy.*'
175                 - 'apex-build.*'
176                 - 'apex-runner.*'
177                 - 'apex-verify.*'
178         - throttle:
179             max-per-node: 1
180             max-total: 10
181             option: 'project'
182
183     builders:
184         - 'apex-unit-test'
185         - 'apex-build'
186         - trigger-builds:
187           - project: 'apex-deploy-virtual-os-odl_l3-nofeature-ha-{stream}'
188             predefined-parameters: |
189               BUILD_DIRECTORY=apex-verify-{stream}
190               OPNFV_CLEAN=yes
191             git-revision: false
192             block: true
193             same-node: true
194         - trigger-builds:
195           - project: 'functest-apex-{verify-slave}-suite-{stream}'
196             predefined-parameters: |
197               DEPLOY_SCENARIO=os-odl_l3-nofeature-ha
198               FUNCTEST_SUITE_NAME=healthcheck
199             block: true
200             same-node: true
201         - 'apex-workspace-cleanup'
202
203 # Verify Scenario Gate
204 - job-template:
205     name: 'apex-verify-gate-{stream}'
206
207     node: '{verify-slave}'
208
209     concurrent: true
210
211     parameters:
212         - apex-parameter:
213             gs-pathname: '{gs-pathname}'
214         - project-parameter:
215             project: '{project}'
216             branch: '{branch}'
217         - string:
218             name: GIT_BASE
219             default: https://gerrit.opnfv.org/gerrit/$PROJECT
220             description: "Used for overriding the GIT URL coming from parameters macro."
221
222     scm:
223         - git-scm-gerrit
224
225     triggers:
226         - gerrit:
227             server-name: 'gerrit.opnfv.org'
228             trigger-on:
229                 - comment-added-contains-event:
230                     comment-contains-value: '^Patch Set [0-9]+: Code-Review\+2.*start-gate-scenario:.*'
231             projects:
232               - project-compare-type: 'ANT'
233                 project-pattern: 'apex'
234                 branches:
235                   - branch-compare-type: 'ANT'
236                     branch-pattern: '**/{branch}'
237                 file-paths:
238                   - compare-type: ANT
239                     pattern: 'ci/**'
240                   - compare-type: ANT
241                     pattern: 'build/**'
242                   - compare-type: ANT
243                     pattern: 'lib/**'
244                   - compare-type: ANT
245                     pattern: 'config/**'
246
247     properties:
248         - logrotate-default
249         - build-blocker:
250             use-build-blocker: true
251             block-level: 'NODE'
252             blocking-jobs:
253                 - 'apex-daily.*'
254                 - 'apex-deploy.*'
255                 - 'apex-build.*'
256                 - 'apex-runner.*'
257                 - 'apex-verify.*'
258         - throttle:
259             max-per-node: 1
260             max-total: 10
261             option: 'project'
262
263     builders:
264         - 'apex-build'
265         - trigger-builds:
266           - project: 'apex-deploy-virtual-gate-{stream}'
267             predefined-parameters: |
268               BUILD_DIRECTORY=apex-verify-gate-{stream}
269               OPNFV_CLEAN=yes
270             current-parameters: true
271             git-revision: false
272             block: true
273             same-node: true
274         - trigger-builds:
275           - project: 'functest-apex-{verify-slave}-suite-{stream}'
276             predefined-parameters: |
277               DEPLOY_SCENARIO=os-nosdn-nofeature-ha
278               FUNCTEST_SUITE_NAME=healthcheck
279             block: true
280             same-node: true
281         - 'apex-workspace-cleanup'
282
283 - job-template:
284     name: 'apex-runner-{platform}-{scenario}-{stream}'
285
286     # runner jobs for deploying manually
287
288     node: '{slave}'
289
290     disabled: false
291
292     parameters:
293         - apex-parameter:
294             gs-pathname: '{gs-pathname}'
295         - project-parameter:
296             project: '{project}'
297             branch: '{branch}'
298         - string:
299             name: GIT_BASE
300             default: https://gerrit.opnfv.org/gerrit/$PROJECT
301             description: "Used for overriding the GIT URL coming from parameters macro."
302
303     scm:
304         - git-scm
305
306     properties:
307         - logrotate-default
308         - build-blocker:
309             use-build-blocker: true
310             blocking-jobs:
311                 - 'apex-daily.*'
312                 - 'apex-verify.*'
313                 - 'apex-.*-promote.*'
314
315     builders:
316         - trigger-builds:
317           - project: 'apex-deploy-{platform}-{scenario}-{stream}'
318             predefined-parameters:
319               OPNFV_CLEAN=yes
320             git-revision: false
321             block: true
322         - trigger-builds:
323           - project: 'yardstick-apex-{slave}-daily-{stream}'
324             predefined-parameters:
325               DEPLOY_SCENARIO={scenario}
326             block: true
327             block-thresholds:
328                 build-step-failure-threshold: 'never'
329                 failure-threshold: 'never'
330                 unstable-threshold: 'FAILURE'
331         - trigger-builds:
332           - project: 'functest-apex-{slave}-daily-{stream}'
333             predefined-parameters:
334               DEPLOY_SCENARIO={scenario}
335             block: true
336             block-thresholds:
337                 build-step-failure-threshold: 'never'
338                 failure-threshold: 'never'
339                 unstable-threshold: 'FAILURE'
340
341 - job-template:
342     name: 'apex-runner-cperf-{stream}'
343
344     # runner cperf job
345
346     node: 'intel-pod2'
347
348     disabled: false
349
350     parameters:
351         - apex-parameter:
352             gs-pathname: '{gs-pathname}'
353         - project-parameter:
354             project: '{project}'
355             branch: '{branch}'
356         - string:
357             name: GIT_BASE
358             default: https://gerrit.opnfv.org/gerrit/$PROJECT
359             description: "Used for overriding the GIT URL coming from parameters macro."
360
361     scm:
362         - git-scm
363
364     properties:
365         - logrotate-default
366         - build-blocker:
367             use-build-blocker: false
368             block-level: 'NODE'
369             blocking-jobs:
370                 - 'apex-deploy.*'
371         - throttle:
372             max-per-node: 1
373             max-total: 10
374             option: 'project'
375
376     builders:
377         - trigger-builds:
378           - project: 'apex-deploy-baremetal-os-odl_l3-nofeature-ha-{stream}'
379             predefined-parameters:
380               OPNFV_CLEAN=yes
381             git-revision: false
382             block: true
383             same-node: true
384         - trigger-builds:
385           - project: 'cperf-apex-intel-pod2-daily-{stream}'
386             predefined-parameters:
387               DEPLOY_SCENARIO=os-odl_l3-nofeature-ha
388             block: true
389             same-node: true
390
391 - job-template:
392     name: 'apex-build-{stream}'
393
394     # Job template for builds
395     #
396     # Required Variables:
397     #     stream:    branch with - in place of / (eg. stable)
398     #     branch:    branch (eg. stable)
399     node: '{daily-slave}'
400
401     disabled: false
402
403     concurrent: true
404
405     parameters:
406         - project-parameter:
407             project: '{project}'
408             branch: '{branch}'
409         - apex-parameter:
410             gs-pathname: '{gs-pathname}'
411         - string:
412             name: GIT_BASE
413             default: https://gerrit.opnfv.org/gerrit/$PROJECT
414             description: "Used for overriding the GIT URL coming from parameters macro."
415
416     scm:
417         - git-scm
418
419     properties:
420         - logrotate-default
421         - build-blocker:
422             use-build-blocker: true
423             block-level: 'NODE'
424             blocking-jobs:
425                 - 'apex-deploy.*'
426         - throttle:
427             max-per-node: 1
428             max-total: 10
429             option: 'project'
430
431     builders:
432         - 'apex-build'
433         - trigger-builds:
434           - project: 'apex-deploy-virtual-os-nosdn-nofeature-noha-{stream}'
435             predefined-parameters: |
436               BUILD_DIRECTORY=apex-build-{stream}/.build
437               OPNFV_CLEAN=yes
438             git-revision: false
439             same-node: true
440             block: true
441         - 'apex-upload-artifact'
442
443 - job-template:
444     name: 'apex-deploy-virtual-{scenario}-{stream}'
445
446     # Job template for virtual deployment
447     #
448     # Required Variables:
449     #     stream:    branch with - in place of / (eg. stable)
450     #     branch:    branch (eg. stable)
451     node: '{slave}'
452
453     concurrent: true
454
455     disabled: false
456
457     scm:
458         - git-scm
459
460     parameters:
461         - project-parameter:
462             project: '{project}'
463             branch: '{branch}'
464         - apex-parameter:
465             gs-pathname: '{gs-pathname}'
466         - string:
467             name: DEPLOY_SCENARIO
468             default: '{scenario}'
469             description: "Scenario to deploy with."
470         - string:
471             name: OPNFV_CLEAN
472             default: 'no'
473             description: "Use yes in lower case to invoke clean. Indicates if the deploy environment should be cleaned before deployment"
474
475     properties:
476         - logrotate-default
477         - build-blocker:
478             use-build-blocker: true
479             block-level: 'NODE'
480             blocking-jobs:
481                 - 'apex-deploy.*'
482         - throttle:
483             max-per-node: 1
484             max-total: 10
485             option: 'project'
486
487     builders:
488         - 'apex-deploy'
489         - 'apex-workspace-cleanup'
490
491 - job-template:
492     name: 'apex-deploy-baremetal-{scenario}-{stream}'
493
494     # Job template for baremetal deployment
495     #
496     # Required Variables:
497     #     stream:    branch with - in place of / (eg. stable)
498     #     branch:    branch (eg. stable)
499     node: '{slave}'
500
501     disabled: false
502
503     scm:
504         - git-scm
505
506     parameters:
507         - project-parameter:
508             project: '{project}'
509             branch: '{branch}'
510         - apex-parameter:
511             gs-pathname: '{gs-pathname}'
512         - string:
513             name: DEPLOY_SCENARIO
514             default: '{scenario}'
515             description: "Scenario to deploy with."
516
517     properties:
518         - logrotate-default
519         - build-blocker:
520             use-build-blocker: true
521             block-level: 'NODE'
522             blocking-jobs:
523                 - 'apex-verify.*'
524                 - 'apex-deploy.*'
525                 - 'apex-build.*'
526
527
528     builders:
529         - 'apex-deploy'
530         - 'apex-workspace-cleanup'
531
532 # Daily
533 - job-template:
534     name: 'apex-daily-{stream}'
535
536     # Job template for daily build
537     #
538     # Required Variables:
539     #     stream:    branch with - in place of / (eg. stable)
540     #     branch:    branch (eg. stable)
541     node: '{daily-slave}'
542
543     disabled: false
544
545     scm:
546         - git-scm
547
548     parameters:
549         - project-parameter:
550             project: '{project}'
551             branch: '{branch}'
552         - apex-parameter:
553             gs-pathname: '{gs-pathname}'
554
555     properties:
556         - logrotate-default
557         - build-blocker:
558             use-build-blocker: true
559             block-level: 'NODE'
560             blocking-jobs:
561                 - 'apex-verify.*'
562                 - 'apex-deploy.*'
563                 - 'apex-build.*'
564                 - 'apex-runner.*'
565                 - 'apex-.*-promote.*'
566
567     triggers:
568         - 'apex-{stream}'
569
570     builders:
571         - trigger-builds:
572           - project: 'apex-build-{stream}'
573             git-revision: true
574             current-parameters: true
575             same-node: true
576             block: true
577         - trigger-builds:
578           - project: 'apex-deploy-baremetal-os-nosdn-nofeature-ha-{stream}'
579             predefined-parameters: |
580               BUILD_DIRECTORY=apex-build-{stream}/.build
581               OPNFV_CLEAN=yes
582             git-revision: true
583             same-node: true
584             block-thresholds:
585                 build-step-failure-threshold: 'never'
586             block: true
587         - trigger-builds:
588           - project: 'functest-apex-{daily-slave}-daily-{stream}'
589             predefined-parameters:
590               DEPLOY_SCENARIO=os-nosdn-nofeature-ha
591             block: true
592             same-node: true
593             block-thresholds:
594                 build-step-failure-threshold: 'never'
595                 failure-threshold: 'never'
596                 unstable-threshold: 'FAILURE'
597         - trigger-builds:
598           - project: 'yardstick-apex-{slave}-daily-{stream}'
599             predefined-parameters:
600               DEPLOY_SCENARIO=os-nosdn-nofeature-ha
601             block: true
602             same-node: true
603             block-thresholds:
604                 build-step-failure-threshold: 'never'
605                 failure-threshold: 'never'
606                 unstable-threshold: 'FAILURE'
607         # 1.dovetail only master by now, not sync with A/B/C branches
608         # 2.here the stream means the SUT stream, dovetail stream is defined in its own job
609         # 3.only debug testsuite here(includes basic testcase,
610         #   i.e. one tempest smoke ipv6, two vping from functest)
611         # 4.not used for release criteria or compliance,
612         #   only to debug the dovetail tool bugs with apex
613         - trigger-builds:
614             - project: 'dovetail-apex-{slave}-debug-{stream}'
615               current-parameters: false
616               predefined-parameters:
617                 DEPLOY_SCENARIO=os-nosdn-nofeature-ha
618               block: true
619               same-node: true
620               block-thresholds:
621                 build-step-failure-threshold: 'never'
622                 failure-threshold: 'never'
623                 unstable-threshold: 'FAILURE'
624         - trigger-builds:
625           - project: 'apex-deploy-baremetal-os-odl_l3-nofeature-ha-{stream}'
626             predefined-parameters: |
627               BUILD_DIRECTORY=apex-build-{stream}/.build
628               OPNFV_CLEAN=yes
629             git-revision: true
630             same-node: true
631             block-thresholds:
632                 build-step-failure-threshold: 'never'
633             block: true
634         - trigger-builds:
635           - project: 'functest-apex-{daily-slave}-daily-{stream}'
636             predefined-parameters:
637               DEPLOY_SCENARIO=os-odl_l3-nofeature-ha
638             block: true
639             same-node: true
640             block-thresholds:
641                 build-step-failure-threshold: 'never'
642                 failure-threshold: 'never'
643                 unstable-threshold: 'FAILURE'
644         - trigger-builds:
645           - project: 'yardstick-apex-{slave}-daily-{stream}'
646             predefined-parameters:
647               DEPLOY_SCENARIO=os-odl_l3-nofeature-ha
648             block: true
649             same-node: true
650             block-thresholds:
651                 build-step-failure-threshold: 'never'
652                 failure-threshold: 'never'
653                 unstable-threshold: 'FAILURE'
654         - trigger-builds:
655           - project: 'apex-deploy-baremetal-os-odl-bgpvpn-ha-{stream}'
656             predefined-parameters: |
657               BUILD_DIRECTORY=apex-build-{stream}/.build
658               OPNFV_CLEAN=yes
659             git-revision: true
660             same-node: true
661             block-thresholds:
662                 build-step-failure-threshold: 'never'
663             block: true
664         - trigger-builds:
665           - project: 'functest-apex-{daily-slave}-daily-{stream}'
666             predefined-parameters:
667               DEPLOY_SCENARIO=os-odl-bgpvpn-ha
668             block: true
669             same-node: true
670             block-thresholds:
671                 build-step-failure-threshold: 'never'
672                 failure-threshold: 'never'
673                 unstable-threshold: 'FAILURE'
674         - trigger-builds:
675           - project: 'yardstick-apex-{slave}-daily-{stream}'
676             predefined-parameters:
677               DEPLOY_SCENARIO=os-odl-bgpvpn-ha
678             block: true
679             same-node: true
680             block-thresholds:
681                 build-step-failure-threshold: 'never'
682                 failure-threshold: 'never'
683                 unstable-threshold: 'FAILURE'
684         - trigger-builds:
685           - project: 'apex-deploy-baremetal-os-odl-gluon-noha-{stream}'
686             predefined-parameters: |
687               BUILD_DIRECTORY=apex-build-{stream}/.build
688               OPNFV_CLEAN=yes
689             git-revision: true
690             same-node: true
691             block-thresholds:
692                 build-step-failure-threshold: 'never'
693             block: true
694         - trigger-builds:
695           - project: 'functest-apex-{daily-slave}-daily-{stream}'
696             predefined-parameters:
697               DEPLOY_SCENARIO=os-odl-gluon-noha
698             block: true
699             same-node: true
700             block-thresholds:
701                 build-step-failure-threshold: 'never'
702                 failure-threshold: 'never'
703                 unstable-threshold: 'FAILURE'
704         - trigger-builds:
705           - project: 'yardstick-apex-{slave}-daily-{stream}'
706             predefined-parameters:
707               DEPLOY_SCENARIO=os-odl-gluon-noha
708             block: true
709             same-node: true
710             block-thresholds:
711                 build-step-failure-threshold: 'never'
712                 failure-threshold: 'never'
713                 unstable-threshold: 'FAILURE'
714         - trigger-builds:
715           - project: 'apex-deploy-baremetal-os-odl_l2-fdio-noha-{stream}'
716             predefined-parameters: |
717               BUILD_DIRECTORY=apex-build-{stream}/.build
718               OPNFV_CLEAN=yes
719             git-revision: true
720             same-node: true
721             block-thresholds:
722                 build-step-failure-threshold: 'never'
723             block: true
724         - trigger-builds:
725           - project: 'functest-apex-{daily-slave}-daily-{stream}'
726             predefined-parameters:
727               DEPLOY_SCENARIO=os-odl_l2-fdio-noha
728             block: true
729             same-node: true
730             block-thresholds:
731                 build-step-failure-threshold: 'never'
732                 failure-threshold: 'never'
733                 unstable-threshold: 'FAILURE'
734         - trigger-builds:
735           - project: 'yardstick-apex-{slave}-daily-{stream}'
736             predefined-parameters:
737               DEPLOY_SCENARIO=os-odl_l2-fdio-noha
738             block: true
739             same-node: true
740             block-thresholds:
741                 build-step-failure-threshold: 'never'
742                 failure-threshold: 'never'
743                 unstable-threshold: 'FAILURE'
744         - trigger-builds:
745           - project: 'apex-deploy-baremetal-os-odl_l2-fdio-ha-{stream}'
746             predefined-parameters: |
747               BUILD_DIRECTORY=apex-build-{stream}/.build
748               OPNFV_CLEAN=yes
749             git-revision: true
750             same-node: true
751             block-thresholds:
752                 build-step-failure-threshold: 'never'
753             block: true
754         - trigger-builds:
755           - project: 'functest-apex-{daily-slave}-daily-{stream}'
756             predefined-parameters:
757               DEPLOY_SCENARIO=os-odl_l2-fdio-ha
758             block: true
759             same-node: true
760             block-thresholds:
761                 build-step-failure-threshold: 'never'
762                 failure-threshold: 'never'
763                 unstable-threshold: 'FAILURE'
764         - trigger-builds:
765           - project: 'yardstick-apex-{slave}-daily-{stream}'
766             predefined-parameters:
767               DEPLOY_SCENARIO=os-odl_l2-fdio-ha
768             block: true
769             same-node: true
770             block-thresholds:
771                 build-step-failure-threshold: 'never'
772                 failure-threshold: 'never'
773                 unstable-threshold: 'FAILURE'
774         - trigger-builds:
775           - project: 'apex-deploy-baremetal-os-nosdn-kvm-ha-{stream}'
776             predefined-parameters: |
777               BUILD_DIRECTORY=apex-build-{stream}/.build
778               OPNFV_CLEAN=yes
779             git-revision: true
780             same-node: true
781             block-thresholds:
782                 build-step-failure-threshold: 'never'
783             block: true
784         - trigger-builds:
785           - project: 'functest-apex-{daily-slave}-daily-{stream}'
786             predefined-parameters:
787               DEPLOY_SCENARIO=os-nosdn-kvm-ha
788             block: true
789             same-node: true
790             block-thresholds:
791                 build-step-failure-threshold: 'never'
792                 failure-threshold: 'never'
793                 unstable-threshold: 'FAILURE'
794         - trigger-builds:
795           - project: 'yardstick-apex-{slave}-daily-{stream}'
796             predefined-parameters:
797               DEPLOY_SCENARIO=os-nosdn-kvm-ha
798             block: true
799             same-node: true
800             block-thresholds:
801                 build-step-failure-threshold: 'never'
802                 failure-threshold: 'never'
803                 unstable-threshold: 'FAILURE'
804
805 # CSIT promote
806 - job-template:
807     name: 'apex-csit-promote-daily-{stream}'
808
809     # Job template for promoting CSIT Snapshots
810     #
811     # Required Variables:
812     #     stream:    branch with - in place of / (eg. stable)
813     #     branch:    branch (eg. stable)
814     node: '{daily-slave}'
815
816     disabled: false
817
818     scm:
819         - git-scm
820
821     parameters:
822         - project-parameter:
823             project: '{project}'
824             branch: '{branch}'
825         - apex-parameter:
826             gs-pathname: '{gs-pathname}'
827
828     properties:
829         - build-blocker:
830             use-build-blocker: true
831             block-level: 'NODE'
832             blocking-jobs:
833                 - 'apex-verify.*'
834                 - 'apex-deploy.*'
835                 - 'apex-build.*'
836                 - 'apex-runner.*'
837                 - 'apex-daily.*'
838
839     triggers:
840         - timed: '0 12 * * 0'
841
842     builders:
843         - 'apex-build'
844         - trigger-builds:
845           - project: 'apex-deploy-virtual-os-odl_l3-csit-noha-{stream}'
846             predefined-parameters: |
847               BUILD_DIRECTORY=apex-csit-promote-daily-{stream}
848               OPNFV_CLEAN=yes
849             git-revision: false
850             block: true
851             same-node: true
852         - trigger-builds:
853           - project: 'functest-apex-{daily-slave}-suite-{stream}'
854             predefined-parameters: |
855               DEPLOY_SCENARIO=os-odl_l3-nofeature-noha
856               FUNCTEST_SUITE_NAME=tempest_smoke_serial
857             block: true
858             same-node: true
859         - shell:
860             !include-raw-escape: ./apex-snapshot-create.sh
861         - shell:
862             !include-raw-escape: ./apex-upload-artifact.sh
863
864 # FDIO promote
865 - job-template:
866     name: 'apex-fdio-promote-daily-{stream}'
867
868     # Job template for promoting CSIT Snapshots
869     #
870     # Required Variables:
871     #     stream:    branch with - in place of / (eg. stable)
872     #     branch:    branch (eg. stable)
873     node: '{daily-slave}'
874
875     disabled: false
876
877     scm:
878         - git-scm
879
880     parameters:
881         - project-parameter:
882             project: '{project}'
883             branch: '{branch}'
884         - apex-parameter:
885             gs-pathname: '{gs-pathname}'
886
887     properties:
888         - build-blocker:
889             use-build-blocker: true
890             block-level: 'NODE'
891             blocking-jobs:
892                 - 'apex-verify.*'
893                 - 'apex-deploy.*'
894                 - 'apex-build.*'
895                 - 'apex-runner.*'
896                 - 'apex-daily.*'
897
898     builders:
899         - 'apex-build'
900         - trigger-builds:
901           - project: 'apex-deploy-virtual-os-odl_l2-fdio-noha-{stream}'
902             predefined-parameters: |
903               BUILD_DIRECTORY=apex-fdio-promote-daily-{stream}
904               OPNFV_CLEAN=yes
905             git-revision: false
906             block: true
907             same-node: true
908         - shell:
909             !include-raw-escape: ./apex-snapshot-create.sh
910         - shell:
911             !include-raw-escape: ./apex-upload-artifact.sh
912
913 - job-template:
914     name: 'apex-gs-clean-{stream}'
915
916     # Job template for clean
917     #
918     # Required Variables:
919     #     stream:    branch with - in place of / (eg. stable)
920     node: '{slave}'
921
922     disabled: false
923
924     parameters:
925         - project-parameter:
926             project: '{project}'
927             branch: '{branch}'
928         - apex-parameter:
929             gs-pathname: '{gs-pathname}'
930
931     builders:
932         - 'apex-gs-clean'
933
934     triggers:
935         - 'apex-gs-clean-{stream}'
936
937
938 ########################
939 # parameter macros
940 ########################
941 - parameter:
942     name: apex-parameter
943     parameters:
944         - string:
945             name: ARTIFACT_NAME
946             default: 'latest'
947             description: "RPM Artifact name that will be appended to GS_URL to deploy a specific artifact"
948         - string:
949             name: ARTIFACT_VERSION
950             default: 'daily'
951             description: "Artifact version type"
952         - string:
953             name: BUILD_DIRECTORY
954             default: $WORKSPACE/build
955             description: "Directory where the build artifact will be located upon the completion of the build."
956         - string:
957             name: CACHE_DIRECTORY
958             default: $HOME/opnfv/cache{gs-pathname}
959             description: "Directory where the cache to be used during the build is located."
960         - string:
961             name: GIT_BASE
962             default: https://gerrit.opnfv.org/gerrit/$PROJECT
963             description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
964         - string:
965             name: GS_PATHNAME
966             default: '{gs-pathname}'
967             description: "Version directory where opnfv artifacts are stored in gs repository"
968         - string:
969             name: GS_URL
970             default: artifacts.opnfv.org/$PROJECT{gs-pathname}
971             description: "URL to Google Storage."
972
973 ########################
974 # builder macros
975 ########################
976 - builder:
977     name: 'apex-unit-test'
978     builders:
979         - shell:
980             !include-raw: ./apex-unit-test.sh
981
982 - builder:
983     name: 'apex-build'
984     builders:
985         - shell:
986             !include-raw: ./apex-build.sh
987
988 - builder:
989     name: 'apex-workspace-cleanup'
990     builders:
991         - shell:
992             !include-raw: ./apex-workspace-cleanup.sh
993
994 - builder:
995     name: 'apex-upload-artifact'
996     builders:
997         - shell:
998             !include-raw: ./apex-upload-artifact.sh
999
1000 - builder:
1001     name: 'apex-gs-cleanup'
1002     builders:
1003         - shell:
1004             !include-raw: ./apex-gs-cleanup.sh
1005
1006 - builder:
1007     name: 'apex-deploy'
1008     builders:
1009         - shell:
1010             !include-raw: ./apex-deploy.sh
1011
1012
1013 #######################
1014 # trigger macros
1015 ########################
1016 - trigger:
1017     name: 'apex-master'
1018     triggers:
1019         - timed: '0 3 * * 7'
1020 - trigger:
1021     name: 'apex-danube'
1022     triggers:
1023         - timed: '0 12 * * *'
1024 - trigger:
1025     name: 'apex-gs-clean-{stream}'
1026     triggers:
1027         - timed: '0 2 * * *'