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