Apex: fix daily scm passing and yardstick deploy blocking
[releng.git] / jjb / apex / apex.yml
1 - project:
2     name: 'apex'
3     project: 'apex'
4     jobs:
5         - 'apex-verify-{stream}'
6         - 'apex-verify-gate-{stream}'
7         - 'apex-verify-unit-tests-{stream}'
8         - 'apex-runner-cperf-{stream}'
9         - 'apex-build-{stream}'
10         - 'apex-deploy-{platform}-{stream}'
11         - 'apex-daily-master'
12         - 'apex-daily-danube'
13         - 'apex-csit-promote-daily-{stream}'
14         - 'apex-fdio-promote-daily-{stream}'
15         - 'apex-verify-iso-{stream}'
16         - 'apex-deploy-test-baremetal-{stream}'
17         - 'apex-upload-snapshot'
18         - 'apex-create-snapshot'
19     # stream:    branch with - in place of / (eg. stable-arno)
20     # branch:    branch (eg. stable/arno)
21     stream:
22         - master:
23             branch: 'master'
24             gs-pathname: ''
25             build-slave: 'apex-build-master'
26             virtual-slave: 'apex-virtual-master'
27             baremetal-slave: 'apex-baremetal-master'
28             verify-scenario: 'os-odl-nofeature-ha'
29
30         - danube:
31             branch: 'stable/danube'
32             gs-pathname: '/danube'
33             build-slave: 'apex-build-danube'
34             virtual-slave: 'apex-virtual-danube'
35             baremetal-slave: 'apex-baremetal-danube'
36             verify-scenario: 'os-odl_l3-nofeature-ha'
37             disabled: false
38
39     platform:
40          - 'baremetal'
41          - 'virtual'
42
43 # Unit Test
44 - job-template:
45     name: 'apex-verify-unit-tests-{stream}'
46
47     node: '{build-slave}'
48
49     concurrent: true
50
51     parameters:
52         - apex-parameter:
53             gs-pathname: '{gs-pathname}'
54         - project-parameter:
55             project: '{project}'
56             branch: '{branch}'
57
58     scm:
59         - git-scm-gerrit
60
61     triggers:
62         - gerrit:
63             server-name: 'gerrit.opnfv.org'
64             trigger-on:
65                 - patchset-created-event:
66                     exclude-drafts: 'false'
67                     exclude-trivial-rebase: 'false'
68                     exclude-no-code-change: 'true'
69                 - draft-published-event
70                 - comment-added-contains-event:
71                     comment-contains-value: 'recheck'
72                 - comment-added-contains-event:
73                     comment-contains-value: 'reverify'
74             projects:
75               - project-compare-type: 'ANT'
76                 project-pattern: 'apex'
77                 branches:
78                   - branch-compare-type: 'ANT'
79                     branch-pattern: '**/{branch}'
80                 file-paths:
81                   - compare-type: ANT
82                     pattern: 'tests/**'
83     properties:
84         - logrotate-default
85         - throttle:
86             max-per-node: 1
87             max-total: 10
88             option: 'project'
89
90     builders:
91         - shell:
92             !include-raw-escape: ./apex-unit-test.sh
93
94 # Verify
95 - job-template:
96     name: 'apex-verify-{stream}'
97
98     node: '{virtual-slave}'
99
100     concurrent: true
101
102     project-type: 'multijob'
103
104     parameters:
105         - apex-parameter:
106             gs-pathname: '{gs-pathname}/dev'
107         - project-parameter:
108             project: '{project}'
109             branch: '{branch}'
110         - string:
111             name: ARTIFACT_VERSION
112             default: dev
113             description: "Used for overriding the ARTIFACT_VERSION"
114     scm:
115         - git-scm-gerrit
116
117     triggers:
118         - gerrit:
119             server-name: 'gerrit.opnfv.org'
120             trigger-on:
121                 - patchset-created-event:
122                     exclude-drafts: 'false'
123                     exclude-trivial-rebase: 'false'
124                     exclude-no-code-change: 'true'
125                 - draft-published-event
126                 - comment-added-contains-event:
127                     comment-contains-value: 'recheck'
128                 - comment-added-contains-event:
129                     comment-contains-value: 'reverify'
130             projects:
131               - project-compare-type: 'ANT'
132                 project-pattern: 'apex'
133                 branches:
134                   - branch-compare-type: 'ANT'
135                     branch-pattern: '**/{branch}'
136                 file-paths:
137                   - compare-type: ANT
138                     pattern: 'ci/**'
139                   - compare-type: ANT
140                     pattern: 'build/**'
141                   - compare-type: ANT
142                     pattern: 'lib/**'
143                   - compare-type: ANT
144                     pattern: 'config/**'
145
146     properties:
147         - logrotate-default
148         - build-blocker:
149             use-build-blocker: true
150             block-level: 'NODE'
151             blocking-jobs:
152                 - 'apex-daily.*'
153                 - 'apex-deploy.*'
154                 - 'apex-runner.*'
155         - throttle:
156             max-per-node: 3
157             max-total: 10
158             option: 'project'
159
160     builders:
161         - description-setter:
162             description: "Built on $NODE_NAME"
163         - multijob:
164             name: basic
165             condition: SUCCESSFUL
166             projects:
167                 - name: 'apex-verify-unit-tests-{stream}'
168                   current-parameters: false
169                   predefined-parameters: |
170                     GERRIT_BRANCH=$GERRIT_BRANCH
171                     GERRIT_REFSPEC=$GERRIT_REFSPEC
172                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
173                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
174                   node-parameters: false
175                   kill-phase-on: FAILURE
176                   abort-all-job: true
177                   git-revision: true
178         - multijob:
179             name: build
180             condition: SUCCESSFUL
181             projects:
182                 - name: 'apex-build-{stream}'
183                   current-parameters: false
184                   predefined-parameters: |
185                     ARTIFACT_VERSION=$ARTIFACT_VERSION
186                     GERRIT_BRANCH=$GERRIT_BRANCH
187                     GERRIT_REFSPEC=$GERRIT_REFSPEC
188                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
189                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
190                   node-parameters: false
191                   kill-phase-on: FAILURE
192                   abort-all-job: true
193                   git-revision: true
194         - multijob:
195             name: deploy-virtual
196             condition: SUCCESSFUL
197             projects:
198                 - name: 'apex-deploy-virtual-{stream}'
199                   current-parameters: false
200                   predefined-parameters: |
201                     ARTIFACT_VERSION=$ARTIFACT_VERSION
202                     DEPLOY_SCENARIO={verify-scenario}
203                     OPNFV_CLEAN=yes
204                     GERRIT_BRANCH=$GERRIT_BRANCH
205                     GERRIT_REFSPEC=$GERRIT_REFSPEC
206                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
207                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
208                   node-parameters: true
209                   kill-phase-on: FAILURE
210                   abort-all-job: true
211                   git-revision: true
212         - multijob:
213             name: functest-smoke
214             condition: SUCCESSFUL
215             projects:
216               - name: 'functest-apex-virtual-suite-{stream}'
217                 current-parameters: false
218                 predefined-parameters: |
219                   DEPLOY_SCENARIO={verify-scenario}
220                   FUNCTEST_SUITE_NAME=healthcheck
221                   GERRIT_BRANCH=$GERRIT_BRANCH
222                   GERRIT_REFSPEC=$GERRIT_REFSPEC
223                   GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
224                   GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
225                 node-parameters: true
226                 kill-phase-on: FAILURE
227                 abort-all-job: true
228                 git-revision: false
229
230 # Verify Scenario Gate
231 - job-template:
232     name: 'apex-verify-gate-{stream}'
233
234     node: '{virtual-slave}'
235
236     concurrent: true
237
238     project-type: 'multijob'
239
240     parameters:
241         - apex-parameter:
242             gs-pathname: '{gs-pathname}/dev'
243         - project-parameter:
244             project: '{project}'
245             branch: '{branch}'
246         - string:
247             name: GIT_BASE
248             default: https://gerrit.opnfv.org/gerrit/$PROJECT
249             description: "Used for overriding the GIT URL coming from parameters macro."
250         - string:
251             name: ARTIFACT_VERSION
252             default: dev
253             description: "Used for overriding the ARTIFACT_VERSION"
254
255     scm:
256         - git-scm-gerrit
257
258     triggers:
259         - gerrit:
260             server-name: 'gerrit.opnfv.org'
261             trigger-on:
262                 - comment-added-contains-event:
263                     comment-contains-value: '^Patch Set [0-9]+: Code-Review\+2.*start-gate-scenario:.*'
264             projects:
265               - project-compare-type: 'ANT'
266                 project-pattern: 'apex'
267                 branches:
268                   - branch-compare-type: 'ANT'
269                     branch-pattern: '**/{branch}'
270                 file-paths:
271                   - compare-type: ANT
272                     pattern: 'ci/**'
273                   - compare-type: ANT
274                     pattern: 'build/**'
275                   - compare-type: ANT
276                     pattern: 'lib/**'
277                   - compare-type: ANT
278                     pattern: 'config/**'
279
280     properties:
281         - logrotate-default
282         - build-blocker:
283             use-build-blocker: true
284             block-level: 'NODE'
285             blocking-jobs:
286                 - 'apex-daily.*'
287                 - 'apex-deploy.*'
288                 - 'apex-runner.*'
289         - throttle:
290             max-per-node: 3
291             max-total: 10
292             option: 'project'
293
294     builders:
295         - multijob:
296             name: deploy-virtual
297             condition: SUCCESSFUL
298             projects:
299                 - name: 'apex-deploy-virtual-{stream}'
300                   current-parameters: false
301                   predefined-parameters: |
302                     ARTIFACT_VERSION=$ARTIFACT_VERSION
303                     DEPLOY_SCENARIO=gate
304                     OPNFV_CLEAN=yes
305                     GERRIT_BRANCH=$GERRIT_BRANCH
306                     GERRIT_REFSPEC=$GERRIT_REFSPEC
307                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
308                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
309                   node-parameters: true
310                   kill-phase-on: FAILURE
311                   abort-all-job: true
312                   git-revision: true
313         - multijob:
314             name: functest-smoke
315             condition: SUCCESSFUL
316             projects:
317               - name: 'functest-apex-virtual-suite-{stream}'
318                 current-parameters: false
319                 predefined-parameters: |
320                   DEPLOY_SCENARIO={verify-scenario}
321                   FUNCTEST_SUITE_NAME=healthcheck
322                   GERRIT_BRANCH=$GERRIT_BRANCH
323                   GERRIT_REFSPEC=$GERRIT_REFSPEC
324                   GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
325                   GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
326                 node-parameters: true
327                 kill-phase-on: FAILURE
328                 abort-all-job: true
329                 git-revision: false
330
331 - job-template:
332     name: 'apex-runner-cperf-{stream}'
333
334     # runner cperf job
335     project-type: 'multijob'
336     node: 'intel-pod2'
337
338     disabled: false
339
340     parameters:
341         - apex-parameter:
342             gs-pathname: '{gs-pathname}'
343         - project-parameter:
344             project: '{project}'
345             branch: '{branch}'
346         - string:
347             name: GIT_BASE
348             default: https://gerrit.opnfv.org/gerrit/$PROJECT
349             description: "Used for overriding the GIT URL coming from parameters macro."
350
351     scm:
352         - git-scm
353
354     properties:
355         - logrotate-default
356         - build-blocker:
357             use-build-blocker: false
358             block-level: 'NODE'
359             blocking-jobs:
360                 - 'apex-deploy.*'
361         - throttle:
362             max-per-node: 1
363             max-total: 10
364             option: 'project'
365
366     builders:
367         - description-setter:
368             description: "Deployed on $NODE_NAME"
369         - multijob:
370             name: 'Baremetal Deploy'
371             condition: ALWAYS
372             projects:
373                 - name: 'apex-deploy-baremetal-{stream}'
374                   node-parameters: false
375                   current-parameters: true
376                   predefined-parameters: |
377                     OPNFV_CLEAN=yes
378                     DEPLOY_SCENARIO={verify-scenario}
379                   kill-phase-on: FAILURE
380                   abort-all-job: true
381                   git-revision: false
382         - multijob:
383             name: Functest
384             condition: ALWAYS
385             projects:
386                 - name: 'functest-apex-baremetal-daily-{stream}'
387                   node-parameters: true
388                   current-parameters: false
389                   predefined-parameters:
390                     DEPLOY_SCENARIO={verify-scenario}
391                   kill-phase-on: NEVER
392                   abort-all-job: false
393                   git-revision: false
394
395 # Build phase
396 - job-template:
397     name: 'apex-build-{stream}'
398
399     # Job template for builds
400     #
401     # Required Variables:
402     #     stream:    branch with - in place of / (eg. stable)
403     #     branch:    branch (eg. stable)
404     node: '{build-slave}'
405
406     disabled: false
407
408     concurrent: true
409
410     parameters:
411         - '{project}-defaults'
412         - project-parameter:
413             project: '{project}'
414             branch: '{branch}'
415         - apex-parameter:
416             gs-pathname: '{gs-pathname}'
417
418     scm:
419         - git-scm-gerrit
420
421     wrappers:
422         - timeout:
423             timeout: 90
424             fail: true
425
426     properties:
427         - logrotate-default
428         - throttle:
429             max-per-node: 3
430             max-total: 10
431             option: 'project'
432
433     builders:
434         - 'apex-build'
435         - inject:
436            properties-content: ARTIFACT_TYPE=rpm
437         - 'apex-upload-artifact'
438
439 # ISO verify job
440 - job-template:
441     name: 'apex-verify-iso-{stream}'
442
443     # Job template for builds
444     #
445     # Required Variables:
446     #     stream:    branch with - in place of / (eg. stable)
447     #     branch:    branch (eg. stable)
448     node: '{virtual-slave}'
449
450     disabled: false
451
452     concurrent: true
453
454     parameters:
455         - project-parameter:
456             project: '{project}'
457             branch: '{branch}'
458         - apex-parameter:
459             gs-pathname: '{gs-pathname}'
460         - string:
461             name: GIT_BASE
462             default: https://gerrit.opnfv.org/gerrit/$PROJECT
463             description: "Used for overriding the GIT URL coming from parameters macro."
464
465     scm:
466         - git-scm
467
468     properties:
469         - logrotate-default
470         - build-blocker:
471             use-build-blocker: true
472             block-level: 'NODE'
473             blocking-jobs:
474                 - 'apex-deploy.*'
475         - throttle:
476             max-per-node: 1
477             max-total: 10
478             option: 'project'
479
480     builders:
481         - 'apex-iso-verify'
482         - inject:
483            properties-content: ARTIFACT_TYPE=iso
484         - 'apex-upload-artifact'
485
486 # Deploy job
487 - job-template:
488     name: 'apex-deploy-{platform}-{stream}'
489
490     # Job template for virtual deployment
491     #
492     # Required Variables:
493     #     stream:    branch with - in place of / (eg. stable)
494     #     branch:    branch (eg. stable)
495     node: 'apex-{platform}-{stream}'
496
497     concurrent: true
498
499     disabled: false
500
501     scm:
502         - git-scm-gerrit
503
504     wrappers:
505         - timeout:
506             timeout: 120
507             fail: true
508
509     parameters:
510         - project-parameter:
511             project: '{project}'
512             branch: '{branch}'
513         - apex-parameter:
514             gs-pathname: '{gs-pathname}'
515         - string:
516             name: DEPLOY_SCENARIO
517             default: '{verify-scenario}'
518             description: "Scenario to deploy with."
519         - string:
520             name: OPNFV_CLEAN
521             default: 'no'
522             description: "Use yes in lower case to invoke clean. Indicates if the deploy environment should be cleaned before deployment"
523
524     properties:
525         - logrotate-default
526         - build-blocker:
527             use-build-blocker: true
528             block-level: 'NODE'
529             blocking-jobs:
530                 - 'apex-deploy.*'
531                 - 'functest.*'
532                 - 'yardstick.*'
533         - throttle:
534             max-per-node: 1
535             max-total: 10
536             option: 'project'
537
538     builders:
539         - description-setter:
540             description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
541         - 'apex-download-artifact'
542         - 'apex-deploy'
543         - 'apex-workspace-cleanup'
544
545
546 # Baremetal Deploy and Test
547 - job-template:
548     name: 'apex-deploy-test-baremetal-{stream}'
549
550     # Job template for daily build
551     #
552     # Required Variables:
553     #     stream:    branch with - in place of / (eg. stable)
554     #     branch:    branch (eg. stable)
555     project-type: 'multijob'
556
557     disabled: false
558
559     scm:
560         - git-scm
561
562     parameters:
563         - '{project}-defaults'
564         - '{project}-baremetal-{stream}-defaults'
565         - project-parameter:
566             project: '{project}'
567             branch: '{branch}'
568         - apex-parameter:
569             gs-pathname: '{gs-pathname}'
570         - string:
571             name: DEPLOY_SCENARIO
572             default: '{verify-scenario}'
573             description: "Scenario to deploy with."
574     properties:
575         - logrotate-default
576         - build-blocker:
577             use-build-blocker: true
578             block-level: 'NODE'
579             blocking-jobs:
580                 - 'apex-verify.*'
581                 - 'apex-deploy.*'
582                 - 'apex-runner.*'
583                 - 'apex-.*-promote.*'
584     builders:
585         - description-setter:
586             description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
587         - multijob:
588             name: 'Baremetal Deploy'
589             condition: ALWAYS
590             projects:
591                 - name: 'apex-deploy-baremetal-{stream}'
592                   node-parameters: true
593                   current-parameters: true
594                   predefined-parameters: |
595                     OPNFV_CLEAN=yes
596                   kill-phase-on: FAILURE
597                   abort-all-job: true
598                   git-revision: false
599         - multijob:
600             name: Functest
601             condition: ALWAYS
602             projects:
603                 - name: 'functest-apex-baremetal-daily-{stream}'
604                   node-parameters: true
605                   current-parameters: false
606                   predefined-parameters:
607                     DEPLOY_SCENARIO=$DEPLOY_SCENARIO
608                   kill-phase-on: NEVER
609                   abort-all-job: false
610                   git-revision: false
611         - multijob:
612             name: Yardstick
613             condition: ALWAYS
614             projects:
615                 - name: 'yardstick-apex-baremetal-daily-{stream}'
616                   node-parameters: true
617                   current-parameters: false
618                   predefined-parameters:
619                     DEPLOY_SCENARIO=$DEPLOY_SCENARIO
620                   kill-phase-on: NEVER
621                   abort-all-job: false
622                   git-revision: false
623
624
625 # danube Daily
626 - job-template:
627     name: 'apex-daily-danube'
628
629     # Job template for daily build
630     #
631     # Required Variables:
632     #     stream:    branch with - in place of / (eg. stable)
633     #     branch:    branch (eg. stable)
634     project-type: 'multijob'
635
636     node: 'apex-baremetal-danube'
637
638     disabled: false
639
640     scm:
641         - git-scm
642
643     parameters:
644         - '{project}-defaults'
645         - '{project}-baremetal-danube-defaults'
646         - project-parameter:
647             project: '{project}'
648             branch: 'stable/danube'
649         - apex-parameter:
650             gs-pathname: '/danube'
651
652     properties:
653         - logrotate-default
654
655     triggers:
656         - 'apex-danube'
657
658     builders:
659         - multijob:
660             name: build
661             condition: SUCCESSFUL
662             projects:
663                 - name: 'apex-build-danube'
664                   current-parameters: false
665                   predefined-parameters: |
666                     GERRIT_BRANCH=$GERRIT_BRANCH
667                     GERRIT_REFSPEC=''
668                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
669                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
670                   node-parameters: true
671                   kill-phase-on: FAILURE
672                   abort-all-job: true
673                   git-revision: true
674         - multijob:
675             name: 'Verify and upload ISO'
676             condition: SUCCESSFUL
677             projects:
678                 - name: 'apex-verify-iso-danube'
679                   current-parameters: false
680                   predefined-parameters: |
681                     BUILD_DIRECTORY=apex-build-danube/.build
682                     GERRIT_BRANCH=$GERRIT_BRANCH
683                     GERRIT_REFSPEC=''
684                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
685                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
686                   node-parameters: true
687                   kill-phase-on: FAILURE
688                   abort-all-job: true
689                   git-revision: true
690         - multijob:
691             name: Baremetal Deploy and Test Phase
692             condition: SUCCESSFUL
693             projects:
694
695                 - name: 'apex-deploy-test-baremetal-danube'
696                   node-parameters: false
697                   current-parameters: false
698                   predefined-parameters: |
699                     DEPLOY_SCENARIO=os-nosdn-nofeature-noha
700                     OPNFV_CLEAN=yes
701                   kill-phase-on: NEVER
702                   abort-all-job: true
703                   git-revision: false
704
705                 - name: 'apex-deploy-test-baremetal-danube'
706                   node-parameters: false
707                   current-parameters: false
708                   predefined-parameters: |
709                     DEPLOY_SCENARIO=os-nosdn-nofeature-ha
710                     OPNFV_CLEAN=yes
711                   kill-phase-on: NEVER
712                   abort-all-job: true
713                   git-revision: false
714
715                 - name: 'apex-deploy-test-baremetal-danube'
716                   node-parameters: false
717                   current-parameters: false
718                   predefined-parameters: |
719                     DEPLOY_SCENARIO=os-nosdn-nofeature-ha-ipv6
720                     OPNFV_CLEAN=yes
721                   kill-phase-on: NEVER
722                   abort-all-job: true
723                   git-revision: false
724
725                 - name: 'apex-deploy-test-baremetal-danube'
726                   node-parameters: false
727                   current-parameters: false
728                   predefined-parameters: |
729                     DEPLOY_SCENARIO=os-nosdn-ovs-noha
730                     OPNFV_CLEAN=yes
731                   kill-phase-on: NEVER
732                   abort-all-job: true
733                   git-revision: false
734
735                 - name: 'apex-deploy-test-baremetal-danube'
736                   node-parameters: false
737                   current-parameters: false
738                   predefined-parameters: |
739                     DEPLOY_SCENARIO=os-nosdn-ovs-ha
740                     OPNFV_CLEAN=yes
741                   kill-phase-on: NEVER
742                   abort-all-job: true
743                   git-revision: false
744
745                 - name: 'apex-deploy-test-baremetal-danube'
746                   node-parameters: false
747                   current-parameters: false
748                   predefined-parameters: |
749                     DEPLOY_SCENARIO=os-nosdn-fdio-noha
750                     OPNFV_CLEAN=yes
751                   kill-phase-on: NEVER
752                   abort-all-job: true
753                   git-revision: false
754
755                 - name: 'apex-deploy-test-baremetal-danube'
756                   node-parameters: false
757                   current-parameters: false
758                   predefined-parameters: |
759                     DEPLOY_SCENARIO=os-nosdn-fdio-ha
760                     OPNFV_CLEAN=yes
761                   kill-phase-on: NEVER
762                   abort-all-job: true
763                   git-revision: false
764
765                 - name: 'apex-deploy-test-baremetal-danube'
766                   node-parameters: false
767                   current-parameters: false
768                   predefined-parameters: |
769                     DEPLOY_SCENARIO=os-nosdn-kvm-ha
770                     OPNFV_CLEAN=yes
771                   kill-phase-on: NEVER
772                   abort-all-job: true
773                   git-revision: false
774
775                 - name: 'apex-deploy-test-baremetal-danube'
776                   node-parameters: false
777                   current-parameters: false
778                   predefined-parameters: |
779                     DEPLOY_SCENARIO=os-nosdn-kvm-noha
780                     OPNFV_CLEAN=yes
781                   kill-phase-on: NEVER
782                   abort-all-job: true
783                   git-revision: false
784
785                 - name: 'apex-deploy-test-baremetal-danube'
786                   node-parameters: false
787                   current-parameters: false
788                   predefined-parameters: |
789                     DEPLOY_SCENARIO=os-odl_l2-fdio-noha
790                     OPNFV_CLEAN=yes
791                   kill-phase-on: NEVER
792                   abort-all-job: true
793                   git-revision: false
794
795                 - name: 'apex-deploy-test-baremetal-danube'
796                   node-parameters: false
797                   current-parameters: false
798                   predefined-parameters: |
799                     DEPLOY_SCENARIO=os-odl_l2-fdio-ha
800                     OPNFV_CLEAN=yes
801                   kill-phase-on: NEVER
802                   abort-all-job: true
803                   git-revision: false
804
805                 - name: 'apex-deploy-test-baremetal-danube'
806                   node-parameters: false
807                   current-parameters: false
808                   predefined-parameters: |
809                     DEPLOY_SCENARIO=os-odl_l2-netvirt_gbp_fdio-noha
810                     OPNFV_CLEAN=yes
811                   kill-phase-on: NEVER
812                   abort-all-job: true
813                   git-revision: false
814
815                 - name: 'apex-deploy-test-baremetal-danube'
816                   node-parameters: false
817                   current-parameters: false
818                   predefined-parameters: |
819                     DEPLOY_SCENARIO=os-odl_l2-sfc-noha
820                     OPNFV_CLEAN=yes
821                   kill-phase-on: NEVER
822                   abort-all-job: true
823                   git-revision: false
824
825                 - name: 'apex-deploy-test-baremetal-danube'
826                   node-parameters: false
827                   current-parameters: false
828                   predefined-parameters: |
829                     DEPLOY_SCENARIO=os-odl_l3-nofeature-noha
830                     OPNFV_CLEAN=yes
831                   kill-phase-on: NEVER
832                   abort-all-job: true
833                   git-revision: false
834
835                 - name: 'apex-deploy-test-baremetal-danube'
836                   node-parameters: false
837                   current-parameters: false
838                   predefined-parameters: |
839                     DEPLOY_SCENARIO=os-odl_l3-nofeature-ha
840                     OPNFV_CLEAN=yes
841                   kill-phase-on: NEVER
842                   abort-all-job: true
843                   git-revision: false
844
845                 - name: 'apex-deploy-test-baremetal-danube'
846                   node-parameters: false
847                   current-parameters: false
848                   predefined-parameters: |
849                     DEPLOY_SCENARIO=os-odl_l3-ovs-noha
850                     OPNFV_CLEAN=yes
851                   kill-phase-on: NEVER
852                   abort-all-job: true
853                   git-revision: false
854
855                 - name: 'apex-deploy-test-baremetal-danube'
856                   node-parameters: false
857                   current-parameters: false
858                   predefined-parameters: |
859                     DEPLOY_SCENARIO=os-odl_l3-ovs-ha
860                     OPNFV_CLEAN=yes
861                   kill-phase-on: NEVER
862                   abort-all-job: true
863                   git-revision: false
864
865                 - name: 'apex-deploy-test-baremetal-danube'
866                   node-parameters: false
867                   current-parameters: false
868                   predefined-parameters: |
869                     DEPLOY_SCENARIO=os-odl-bgpvpn-ha
870                     OPNFV_CLEAN=yes
871                   kill-phase-on: NEVER
872                   abort-all-job: true
873                   git-revision: false
874
875                 - name: 'apex-deploy-test-baremetal-danube'
876                   node-parameters: false
877                   current-parameters: false
878                   predefined-parameters: |
879                     DEPLOY_SCENARIO=os-odl-gluon-noha
880                     OPNFV_CLEAN=yes
881                   kill-phase-on: NEVER
882                   abort-all-job: true
883                   git-revision: false
884
885                 - name: 'apex-deploy-test-baremetal-danube'
886                   node-parameters: false
887                   current-parameters: false
888                   predefined-parameters: |
889                     DEPLOY_SCENARIO=os-odl_l3-fdio-noha
890                     OPNFV_CLEAN=yes
891                   kill-phase-on: NEVER
892                   abort-all-job: true
893                   git-revision: false
894
895                 - name: 'apex-deploy-test-baremetal-danube'
896                   node-parameters: false
897                   current-parameters: false
898                   predefined-parameters: |
899                     DEPLOY_SCENARIO=os-odl_l3-fdio-ha
900                     OPNFV_CLEAN=yes
901                   kill-phase-on: NEVER
902                   abort-all-job: true
903                   git-revision: false
904
905                 - name: 'apex-deploy-test-baremetal-danube'
906                   node-parameters: false
907                   current-parameters: false
908                   predefined-parameters: |
909                     DEPLOY_SCENARIO=os-odl_l3-fdio_dvr-noha
910                     OPNFV_CLEAN=yes
911                   kill-phase-on: NEVER
912                   abort-all-job: true
913                   git-revision: false
914
915                 - name: 'apex-deploy-test-baremetal-danube'
916                   node-parameters: false
917                   current-parameters: false
918                   predefined-parameters: |
919                     DEPLOY_SCENARIO=os-odl_l3-fdio_dvr-ha
920                     OPNFV_CLEAN=yes
921                   kill-phase-on: NEVER
922                   abort-all-job: true
923                   git-revision: false
924
925                 - name: 'apex-deploy-test-baremetal-danube'
926                   node-parameters: false
927                   current-parameters: false
928                   predefined-parameters: |
929                     DEPLOY_SCENARIO=os-odl_l3-csit-noha
930                     OPNFV_CLEAN=yes
931                   kill-phase-on: NEVER
932                   abort-all-job: true
933                   git-revision: false
934
935                 - name: 'apex-deploy-test-baremetal-danube'
936                   node-parameters: false
937                   current-parameters: false
938                   predefined-parameters: |
939                     DEPLOY_SCENARIO=os-onos-nofeature-ha
940                     OPNFV_CLEAN=yes
941                   kill-phase-on: NEVER
942                   abort-all-job: true
943                   git-revision: false
944
945                 - name: 'apex-deploy-test-baremetal-danube'
946                   node-parameters: false
947                   current-parameters: false
948                   predefined-parameters: |
949                     DEPLOY_SCENARIO=os-ovn-nofeature-noha
950                     OPNFV_CLEAN=yes
951                   kill-phase-on: NEVER
952                   abort-all-job: true
953                   git-revision: false
954
955
956 # master Daily
957 - job-template:
958     name: 'apex-daily-master'
959
960     # Job template for daily build
961     #
962     # Required Variables:
963     #     stream:    branch with - in place of / (eg. stable)
964     #     branch:    branch (eg. stable)
965     project-type: 'multijob'
966
967     node: 'apex-baremetal-master'
968
969     disabled: false
970
971     scm:
972         - git-scm
973
974     parameters:
975         - '{project}-defaults'
976         - '{project}-baremetal-master-defaults'
977         - project-parameter:
978             project: '{project}'
979             branch: 'master'
980         - apex-parameter:
981             gs-pathname: ''
982
983     properties:
984         - logrotate-default
985
986     triggers:
987         - 'apex-master'
988
989     builders:
990         - multijob:
991             name: build
992             condition: SUCCESSFUL
993             projects:
994                 - name: 'apex-build-master'
995                   current-parameters: false
996                   predefined-parameters: |
997                     GERRIT_BRANCH=$GERRIT_BRANCH
998                     GERRIT_REFSPEC=''
999                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
1000                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
1001                   node-parameters: true
1002                   kill-phase-on: FAILURE
1003                   abort-all-job: true
1004                   git-revision: true
1005         - multijob:
1006             name: 'Verify and upload ISO'
1007             condition: SUCCESSFUL
1008             projects:
1009                 - name: 'apex-verify-iso-master'
1010                   current-parameters: false
1011                   predefined-parameters: |
1012                     BUILD_DIRECTORY=apex-build-master/.build
1013                     GERRIT_BRANCH=$GERRIT_BRANCH
1014                     GERRIT_REFSPEC=''
1015                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
1016                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
1017                   node-parameters: true
1018                   kill-phase-on: FAILURE
1019                   abort-all-job: true
1020                   git-revision: true
1021         - multijob:
1022             name: Baremetal Deploy and Test Phase
1023             condition: SUCCESSFUL
1024             projects:
1025
1026                 - name: 'apex-deploy-test-baremetal-master'
1027                   node-parameters: false
1028                   current-parameters: false
1029                   predefined-parameters: |
1030                     DEPLOY_SCENARIO=os-nosdn-nofeature-noha
1031                     OPNFV_CLEAN=yes
1032                   kill-phase-on: NEVER
1033                   abort-all-job: true
1034                   git-revision: false
1035
1036                 - name: 'apex-deploy-test-baremetal-master'
1037                   node-parameters: false
1038                   current-parameters: false
1039                   predefined-parameters: |
1040                     DEPLOY_SCENARIO=os-nosdn-nofeature-ha
1041                     OPNFV_CLEAN=yes
1042                   kill-phase-on: NEVER
1043                   abort-all-job: true
1044                   git-revision: false
1045
1046                 - name: 'apex-deploy-test-baremetal-master'
1047                   node-parameters: false
1048                   current-parameters: false
1049                   predefined-parameters: |
1050                     DEPLOY_SCENARIO=os-odl-nofeature-ha
1051                     OPNFV_CLEAN=yes
1052                   kill-phase-on: NEVER
1053                   abort-all-job: true
1054                   git-revision: false
1055
1056                 - name: 'apex-deploy-test-baremetal-master'
1057                   node-parameters: false
1058                   current-parameters: false
1059                   predefined-parameters: |
1060                     DEPLOY_SCENARIO=os-odl-nofeature-noha
1061                     OPNFV_CLEAN=yes
1062                   kill-phase-on: NEVER
1063                   abort-all-job: true
1064                   git-revision: false
1065
1066
1067
1068 # snapshot create
1069 - job-template:
1070     name: 'apex-create-snapshot'
1071
1072     # Job template for clean
1073     #
1074     # Required Variables:
1075     #     stream:    branch with - in place of / (eg. stable)
1076
1077     disabled: false
1078
1079     builders:
1080         - shell:
1081             !include-raw-escape: ./apex-snapshot-create.sh
1082
1083 # snapshot upload
1084 - job-template:
1085     name: 'apex-upload-snapshot'
1086
1087     # Job template for clean
1088     #
1089     # Required Variables:
1090     #     stream:    branch with - in place of / (eg. stable)
1091
1092     disabled: false
1093
1094     builders:
1095         - inject:
1096            properties-content: ARTIFACT_TYPE=snapshot
1097         - 'apex-upload-artifact'
1098
1099 # CSIT promote
1100 - job-template:
1101     name: 'apex-csit-promote-daily-{stream}'
1102
1103     # Job template for promoting CSIT Snapshots
1104     #
1105     # Required Variables:
1106     #     stream:    branch with - in place of / (eg. stable)
1107     #     branch:    branch (eg. stable)
1108     node: '{virtual-slave}'
1109     project-type: 'multijob'
1110     disabled: false
1111
1112     scm:
1113         - git-scm
1114
1115     parameters:
1116         - project-parameter:
1117             project: '{project}'
1118             branch: '{branch}'
1119         - apex-parameter:
1120             gs-pathname: '{gs-pathname}'
1121
1122     properties:
1123         - build-blocker:
1124             use-build-blocker: true
1125             block-level: 'NODE'
1126             blocking-jobs:
1127                 - 'apex-verify.*'
1128                 - 'apex-deploy.*'
1129                 - 'apex-runner.*'
1130                 - 'apex-daily.*'
1131
1132     triggers:
1133         - timed: '0 12 * * 0'
1134
1135     builders:
1136         - multijob:
1137             name: build
1138             condition: SUCCESSFUL
1139             projects:
1140                 - name: 'apex-build-{stream}'
1141                   current-parameters: false
1142                   predefined-parameters: |
1143                     GERRIT_BRANCH=$GERRIT_BRANCH
1144                     GERRIT_REFSPEC=$GERRIT_REFSPEC
1145                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
1146                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
1147                   node-parameters: false
1148                   kill-phase-on: FAILURE
1149                   abort-all-job: true
1150                   git-revision: true
1151         - multijob:
1152             name: deploy-virtual
1153             condition: SUCCESSFUL
1154             projects:
1155                 - name: 'apex-deploy-virtual-{stream}'
1156                   current-parameters: false
1157                   predefined-parameters: |
1158                     DEPLOY_SCENARIO=os-odl_l3-csit-noha
1159                     OPNFV_CLEAN=yes
1160                     GERRIT_BRANCH=$GERRIT_BRANCH
1161                     GERRIT_REFSPEC=$GERRIT_REFSPEC
1162                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
1163                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
1164                   node-parameters: true
1165                   kill-phase-on: FAILURE
1166                   abort-all-job: true
1167                   git-revision: false
1168         - multijob:
1169             name: functest-smoke
1170             condition: SUCCESSFUL
1171             projects:
1172               - name: 'functest-apex-virtual-suite-{stream}'
1173                 current-parameters: false
1174                 predefined-parameters: |
1175                   DEPLOY_SCENARIO=os-odl_l3-nofeature-noha
1176                   FUNCTEST_SUITE_NAME=tempest_smoke_serial
1177                   GERRIT_BRANCH=$GERRIT_BRANCH
1178                   GERRIT_REFSPEC=$GERRIT_REFSPEC
1179                   GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
1180                   GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
1181                 node-parameters: true
1182                 kill-phase-on: FAILURE
1183                 abort-all-job: true
1184                 git-revision: false
1185         - multijob:
1186             name: create snapshot
1187             condition: SUCCESSFUL
1188             projects:
1189               - name: 'apex-create-snapshot'
1190                 current-parameters: true
1191                 node-parameters: true
1192                 kill-phase-on: FAILURE
1193                 abort-all-job: true
1194                 git-revision: false
1195         - multijob:
1196             name: upload snapshot
1197             condition: SUCCESSFUL
1198             projects:
1199               - name: 'apex-upload-snapshot'
1200                 current-parameters: true
1201                 node-parameters: true
1202                 kill-phase-on: FAILURE
1203                 abort-all-job: true
1204                 git-revision: false
1205
1206 # FDIO promote
1207 - job-template:
1208     name: 'apex-fdio-promote-daily-{stream}'
1209
1210     # Job template for promoting CSIT Snapshots
1211     #
1212     # Required Variables:
1213     #     stream:    branch with - in place of / (eg. stable)
1214     #     branch:    branch (eg. stable)
1215     node: '{virtual-slave}'
1216     project-type: 'multijob'
1217     disabled: false
1218
1219     scm:
1220         - git-scm
1221
1222     parameters:
1223         - project-parameter:
1224             project: '{project}'
1225             branch: '{branch}'
1226         - apex-parameter:
1227             gs-pathname: '{gs-pathname}'
1228
1229     properties:
1230         - build-blocker:
1231             use-build-blocker: true
1232             block-level: 'NODE'
1233             blocking-jobs:
1234                 - 'apex-verify.*'
1235                 - 'apex-deploy.*'
1236                 - 'apex-runner.*'
1237                 - 'apex-daily.*'
1238
1239     builders:
1240         - multijob:
1241             name: build
1242             condition: SUCCESSFUL
1243             projects:
1244                 - name: 'apex-build-{stream}'
1245                   current-parameters: false
1246                   predefined-parameters: |
1247                     GERRIT_BRANCH=$GERRIT_BRANCH
1248                     GERRIT_REFSPEC=$GERRIT_REFSPEC
1249                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
1250                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
1251                   node-parameters: false
1252                   kill-phase-on: FAILURE
1253                   abort-all-job: true
1254                   git-revision: true
1255         - multijob:
1256             name: deploy-virtual
1257             condition: SUCCESSFUL
1258             projects:
1259                 - name: 'apex-deploy-virtual-{stream}'
1260                   current-parameters: false
1261                   predefined-parameters: |
1262                     DEPLOY_SCENARIO=os-odl_l2-netvirt_gbp_fdio-noha
1263                     OPNFV_CLEAN=yes
1264                     GERRIT_BRANCH=$GERRIT_BRANCH
1265                     GERRIT_REFSPEC=$GERRIT_REFSPEC
1266                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
1267                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
1268                   node-parameters: true
1269                   kill-phase-on: FAILURE
1270                   abort-all-job: true
1271                   git-revision: false
1272         - multijob:
1273             name: create snapshot
1274             condition: SUCCESSFUL
1275             projects:
1276               - name: 'apex-create-snapshot'
1277                 current-parameters: true
1278                 node-parameters: true
1279                 kill-phase-on: FAILURE
1280                 abort-all-job: true
1281                 git-revision: false
1282         - multijob:
1283             name: upload snapshot
1284             condition: SUCCESSFUL
1285             projects:
1286               - name: 'apex-upload-snapshot'
1287                 current-parameters: true
1288                 node-parameters: true
1289                 kill-phase-on: FAILURE
1290                 abort-all-job: true
1291                 git-revision: false
1292
1293 - job-template:
1294     name: 'apex-gs-clean-{stream}'
1295
1296     # Job template for clean
1297     #
1298     # Required Variables:
1299     #     stream:    branch with - in place of / (eg. stable)
1300     node: '{slave}'
1301
1302     disabled: false
1303
1304     parameters:
1305         - project-parameter:
1306             project: '{project}'
1307             branch: '{branch}'
1308         - apex-parameter:
1309             gs-pathname: '{gs-pathname}'
1310
1311     builders:
1312         - 'apex-gs-clean'
1313
1314     triggers:
1315         - 'apex-gs-clean-{stream}'
1316
1317 ########################
1318 # parameter macros
1319 ########################
1320 - parameter:
1321     name: apex-parameter
1322     parameters:
1323         - string:
1324             name: ARTIFACT_NAME
1325             default: 'latest'
1326             description: "RPM Artifact name that will be appended to GS_URL to deploy a specific artifact"
1327         - string:
1328             name: ARTIFACT_VERSION
1329             default: 'daily'
1330             description: "Artifact version type"
1331         - string:
1332             name: BUILD_DIRECTORY
1333             default: $WORKSPACE/.build
1334             description: "Directory where the build artifact will be located upon the completion of the build."
1335         - string:
1336             name: CACHE_DIRECTORY
1337             default: $HOME/opnfv/apex-cache{gs-pathname}
1338             description: "Directory where the cache to be used during the build is located."
1339         - string:
1340             name: GIT_BASE
1341             default: https://gerrit.opnfv.org/gerrit/$PROJECT
1342             description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
1343         - string:
1344             name: GS_PATHNAME
1345             default: '{gs-pathname}'
1346             description: "Version directory where opnfv artifacts are stored in gs repository"
1347         - string:
1348             name: GS_URL
1349             default: $GS_BASE{gs-pathname}
1350             description: "URL to Google Storage."
1351
1352 ########################
1353 # builder macros
1354 ########################
1355 - builder:
1356     name: 'apex-unit-test'
1357     builders:
1358         - shell:
1359             !include-raw: ./apex-unit-test.sh
1360
1361 - builder:
1362     name: 'apex-build'
1363     builders:
1364         - shell:
1365             !include-raw: ./apex-build.sh
1366
1367 - builder:
1368     name: 'apex-workspace-cleanup'
1369     builders:
1370         - shell:
1371             !include-raw: ./apex-workspace-cleanup.sh
1372
1373 - builder:
1374     name: 'apex-iso-verify'
1375     builders:
1376         - shell:
1377             !include-raw: ./apex-iso-verify.sh
1378
1379
1380 - builder:
1381     name: 'apex-upload-artifact'
1382     builders:
1383         - shell:
1384             !include-raw: ./apex-upload-artifact.sh
1385
1386 - builder:
1387     name: 'apex-download-artifact'
1388     builders:
1389         - shell:
1390             !include-raw: ./apex-download-artifact.sh
1391
1392 - builder:
1393     name: 'apex-gs-cleanup'
1394     builders:
1395         - shell:
1396             !include-raw: ./apex-gs-cleanup.sh
1397
1398 - builder:
1399     name: 'apex-deploy'
1400     builders:
1401         - shell:
1402             !include-raw: ./apex-deploy.sh
1403
1404 #######################
1405 # trigger macros
1406 ########################
1407 - trigger:
1408     name: 'apex-master'
1409     triggers:
1410         - timed: '0 3 1 1 7'
1411 - trigger:
1412     name: 'apex-danube'
1413     triggers:
1414         - timed: '0 12 * * *'
1415 - trigger:
1416     name: 'apex-gs-clean-{stream}'
1417     triggers:
1418         - timed: '0 2 * * *'