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