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