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