add missing dist files ignored by .gitignore
[releng.git] / jjb / apex / apex.yml.j2
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                     ARTIFACT_VERSION=$ARTIFACT_VERSION
203                     DEPLOY_SCENARIO={verify-scenario}
204                     OPNFV_CLEAN=yes
205                     GERRIT_BRANCH=$GERRIT_BRANCH
206                     GERRIT_REFSPEC=$GERRIT_REFSPEC
207                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
208                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
209                   node-parameters: true
210                   kill-phase-on: FAILURE
211                   abort-all-job: true
212                   git-revision: true
213         - multijob:
214             name: functest-smoke
215             condition: SUCCESSFUL
216             projects:
217               - name: 'functest-apex-virtual-suite-{stream}'
218                 current-parameters: false
219                 predefined-parameters: |
220                   DEPLOY_SCENARIO={verify-scenario}
221                   FUNCTEST_SUITE_NAME=healthcheck
222                   GERRIT_BRANCH=$GERRIT_BRANCH
223                   GERRIT_REFSPEC=$GERRIT_REFSPEC
224                   GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
225                   GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
226                 node-parameters: true
227                 kill-phase-on: FAILURE
228                 abort-all-job: true
229                 git-revision: false
230
231 # Verify Scenario Gate
232 - job-template:
233     name: 'apex-verify-gate-{stream}'
234
235     node: '{virtual-slave}'
236
237     concurrent: true
238
239     project-type: 'multijob'
240
241     parameters:
242         - apex-parameter:
243             gs-pathname: '{gs-pathname}/dev'
244         - project-parameter:
245             project: '{project}'
246             branch: '{branch}'
247         - string:
248             name: GIT_BASE
249             default: https://gerrit.opnfv.org/gerrit/$PROJECT
250             description: "Used for overriding the GIT URL coming from parameters macro."
251         - string:
252             name: ARTIFACT_VERSION
253             default: dev
254             description: "Used for overriding the ARTIFACT_VERSION"
255
256     scm:
257         - git-scm-gerrit
258
259     triggers:
260         - gerrit:
261             server-name: 'gerrit.opnfv.org'
262             trigger-on:
263                 - comment-added-contains-event:
264                     comment-contains-value: '^Patch Set [0-9]+: Code-Review\+2.*start-gate-scenario:.*'
265             projects:
266               - project-compare-type: 'ANT'
267                 project-pattern: 'apex'
268                 branches:
269                   - branch-compare-type: 'ANT'
270                     branch-pattern: '**/{branch}'
271                 file-paths:
272                   - compare-type: ANT
273                     pattern: 'ci/**'
274                   - compare-type: ANT
275                     pattern: 'build/**'
276                   - compare-type: ANT
277                     pattern: 'lib/**'
278                   - compare-type: ANT
279                     pattern: 'config/**'
280
281     properties:
282         - logrotate-default
283         - build-blocker:
284             use-build-blocker: true
285             block-level: 'NODE'
286             blocking-jobs:
287                 - 'apex-daily.*'
288                 - 'apex-deploy.*'
289                 - 'apex-build.*'
290                 - 'apex-runner.*'
291                 - 'apex-verify.*'
292         - throttle:
293             max-per-node: 1
294             max-total: 10
295             option: 'project'
296
297     builders:
298         - multijob:
299             name: deploy-virtual
300             condition: SUCCESSFUL
301             projects:
302                 - name: 'apex-deploy-virtual-{stream}'
303                   current-parameters: false
304                   predefined-parameters: |
305                     ARTIFACT_VERSION=$ARTIFACT_VERSION
306                     DEPLOY_SCENARIO=gate
307                     OPNFV_CLEAN=yes
308                     GERRIT_BRANCH=$GERRIT_BRANCH
309                     GERRIT_REFSPEC=$GERRIT_REFSPEC
310                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
311                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
312                   node-parameters: true
313                   kill-phase-on: FAILURE
314                   abort-all-job: true
315                   git-revision: true
316         - multijob:
317             name: functest-smoke
318             condition: SUCCESSFUL
319             projects:
320               - name: 'functest-apex-virtual-suite-{stream}'
321                 current-parameters: false
322                 predefined-parameters: |
323                   DEPLOY_SCENARIO={verify-scenario}
324                   FUNCTEST_SUITE_NAME=healthcheck
325                   GERRIT_BRANCH=$GERRIT_BRANCH
326                   GERRIT_REFSPEC=$GERRIT_REFSPEC
327                   GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
328                   GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
329                 node-parameters: true
330                 kill-phase-on: FAILURE
331                 abort-all-job: true
332                 git-revision: false
333
334 - job-template:
335     name: 'apex-runner-cperf-{stream}'
336
337     # runner cperf job
338     project-type: 'multijob'
339     node: 'intel-pod2'
340
341     disabled: false
342
343     parameters:
344         - apex-parameter:
345             gs-pathname: '{gs-pathname}'
346         - project-parameter:
347             project: '{project}'
348             branch: '{branch}'
349         - string:
350             name: GIT_BASE
351             default: https://gerrit.opnfv.org/gerrit/$PROJECT
352             description: "Used for overriding the GIT URL coming from parameters macro."
353
354     scm:
355         - git-scm
356
357     properties:
358         - logrotate-default
359         - build-blocker:
360             use-build-blocker: false
361             block-level: 'NODE'
362             blocking-jobs:
363                 - 'apex-deploy.*'
364         - throttle:
365             max-per-node: 1
366             max-total: 10
367             option: 'project'
368
369     builders:
370         - description-setter:
371             description: "Deployed on $NODE_NAME"
372         - multijob:
373             name: 'Baremetal Deploy'
374             condition: ALWAYS
375             projects:
376                 - name: 'apex-deploy-baremetal-{stream}'
377                   node-parameters: false
378                   current-parameters: true
379                   predefined-parameters: |
380                     OPNFV_CLEAN=yes
381                     DEPLOY_SCENARIO={verify-scenario}
382                   kill-phase-on: FAILURE
383                   abort-all-job: true
384                   git-revision: false
385         - multijob:
386             name: Functest
387             condition: ALWAYS
388             projects:
389                 - name: 'functest-apex-baremetal-daily-{stream}'
390                   node-parameters: true
391                   current-parameters: false
392                   predefined-parameters:
393                     DEPLOY_SCENARIO={verify-scenario}
394                   kill-phase-on: NEVER
395                   abort-all-job: false
396                   git-revision: false
397
398 # Build phase
399 - job-template:
400     name: 'apex-build-{stream}'
401
402     # Job template for builds
403     #
404     # Required Variables:
405     #     stream:    branch with - in place of / (eg. stable)
406     #     branch:    branch (eg. stable)
407     node: '{build-slave}'
408
409     disabled: false
410
411     concurrent: true
412
413     parameters:
414         - '{project}-defaults'
415         - project-parameter:
416             project: '{project}'
417             branch: '{branch}'
418         - apex-parameter:
419             gs-pathname: '{gs-pathname}'
420
421     scm:
422         - git-scm-gerrit
423
424     wrappers:
425         - timeout:
426             timeout: 90
427             fail: true
428
429     properties:
430         - logrotate-default
431         - throttle:
432             max-per-node: 1
433             max-total: 10
434             option: 'project'
435
436     builders:
437         - 'apex-build'
438         - inject:
439            properties-content: ARTIFACT_TYPE=rpm
440         - 'apex-upload-artifact'
441
442 # ISO verify job
443 - job-template:
444     name: 'apex-verify-iso-{stream}'
445
446     # Job template for builds
447     #
448     # Required Variables:
449     #     stream:    branch with - in place of / (eg. stable)
450     #     branch:    branch (eg. stable)
451     node: '{virtual-slave}'
452
453     disabled: false
454
455     concurrent: true
456
457     parameters:
458         - project-parameter:
459             project: '{project}'
460             branch: '{branch}'
461         - apex-parameter:
462             gs-pathname: '{gs-pathname}'
463         - string:
464             name: GIT_BASE
465             default: https://gerrit.opnfv.org/gerrit/$PROJECT
466             description: "Used for overriding the GIT URL coming from parameters macro."
467
468     scm:
469         - git-scm
470
471     properties:
472         - logrotate-default
473         - build-blocker:
474             use-build-blocker: true
475             block-level: 'NODE'
476             blocking-jobs:
477                 - 'apex-deploy.*'
478         - throttle:
479             max-per-node: 1
480             max-total: 10
481             option: 'project'
482
483     builders:
484         - 'apex-iso-verify'
485         - inject:
486            properties-content: ARTIFACT_TYPE=iso
487         - 'apex-upload-artifact'
488
489 # Deploy job
490 - job-template:
491     name: 'apex-deploy-{platform}-{stream}'
492
493     # Job template for virtual deployment
494     #
495     # Required Variables:
496     #     stream:    branch with - in place of / (eg. stable)
497     #     branch:    branch (eg. stable)
498     node: 'apex-{platform}-{stream}'
499
500     concurrent: true
501
502     disabled: false
503
504     scm:
505         - git-scm-gerrit
506
507     wrappers:
508         - timeout:
509             timeout: 120
510             fail: true
511
512     parameters:
513         - project-parameter:
514             project: '{project}'
515             branch: '{branch}'
516         - apex-parameter:
517             gs-pathname: '{gs-pathname}'
518         - string:
519             name: DEPLOY_SCENARIO
520             default: '{verify-scenario}'
521             description: "Scenario to deploy with."
522         - string:
523             name: OPNFV_CLEAN
524             default: 'no'
525             description: "Use yes in lower case to invoke clean. Indicates if the deploy environment should be cleaned before deployment"
526
527     properties:
528         - logrotate-default
529         - build-blocker:
530             use-build-blocker: true
531             block-level: 'NODE'
532             blocking-jobs:
533                 - 'apex-deploy.*'
534         - throttle:
535             max-per-node: 1
536             max-total: 10
537             option: 'project'
538
539     builders:
540         - description-setter:
541             description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
542         - 'apex-download-artifact'
543         - 'apex-deploy'
544         - 'apex-workspace-cleanup'
545
546
547 # Baremetal Deploy and Test
548 - job-template:
549     name: 'apex-deploy-test-baremetal-{stream}'
550
551     # Job template for daily build
552     #
553     # Required Variables:
554     #     stream:    branch with - in place of / (eg. stable)
555     #     branch:    branch (eg. stable)
556     project-type: 'multijob'
557
558     disabled: false
559
560     scm:
561         - git-scm
562
563     parameters:
564         - '{project}-defaults'
565         - '{project}-baremetal-{stream}-defaults'
566         - project-parameter:
567             project: '{project}'
568             branch: '{branch}'
569         - apex-parameter:
570             gs-pathname: '{gs-pathname}'
571         - string:
572             name: DEPLOY_SCENARIO
573             default: '{verify-scenario}'
574             description: "Scenario to deploy with."
575     properties:
576         - logrotate-default
577         - build-blocker:
578             use-build-blocker: true
579             block-level: 'NODE'
580             blocking-jobs:
581                 - 'apex-verify.*'
582                 - 'apex-deploy.*'
583                 - 'apex-runner.*'
584                 - 'apex-.*-promote.*'
585     builders:
586         - description-setter:
587             description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
588         - multijob:
589             name: 'Baremetal Deploy'
590             condition: ALWAYS
591             projects:
592                 - name: 'apex-deploy-baremetal-{stream}'
593                   node-parameters: true
594                   current-parameters: true
595                   predefined-parameters: |
596                     OPNFV_CLEAN=yes
597                   kill-phase-on: FAILURE
598                   abort-all-job: true
599                   git-revision: false
600         - multijob:
601             name: Functest
602             condition: ALWAYS
603             projects:
604                 - name: 'functest-apex-baremetal-daily-{stream}'
605                   node-parameters: true
606                   current-parameters: false
607                   predefined-parameters:
608                     DEPLOY_SCENARIO=$DEPLOY_SCENARIO
609                   kill-phase-on: NEVER
610                   abort-all-job: false
611                   git-revision: false
612         - multijob:
613             name: Yardstick
614             condition: ALWAYS
615             projects:
616                 - name: 'yardstick-apex-baremetal-daily-{stream}'
617                   node-parameters: true
618                   current-parameters: false
619                   predefined-parameters:
620                     DEPLOY_SCENARIO=$DEPLOY_SCENARIO
621                   kill-phase-on: NEVER
622                   abort-all-job: false
623                   git-revision: false
624
625 {% for stream in scenarios %}
626 # {{ stream }} Daily
627 - job-template:
628     name: 'apex-daily-{{ stream }}'
629
630     # Job template for daily build
631     #
632     # Required Variables:
633     #     stream:    branch with - in place of / (eg. stable)
634     #     branch:    branch (eg. stable)
635     project-type: 'multijob'
636
637     node: '{{ build_slave[stream] }}'
638
639     disabled: false
640
641     scm:
642         - git-scm
643
644     parameters:
645         - '{project}-defaults'
646         - '{project}-baremetal-{{ stream }}-defaults'
647         - project-parameter:
648             project: '{project}'
649             branch: '{{ branch[stream] }}'
650         - apex-parameter:
651             gs-pathname: '{{ gspathname[stream] }}'
652
653     properties:
654         - logrotate-default
655
656     triggers:
657         - 'apex-{{ stream }}'
658
659     builders:
660         - multijob:
661             name: build
662             condition: SUCCESSFUL
663             projects:
664                 - name: 'apex-build-{{ stream }}'
665                   current-parameters: false
666                   predefined-parameters: |
667                     GERRIT_BRANCH=$GERRIT_BRANCH
668                     GERRIT_REFSPEC=$GERRIT_REFSPEC
669                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
670                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
671                   node-parameters: true
672                   kill-phase-on: FAILURE
673                   abort-all-job: true
674                   git-revision: true
675         - multijob:
676             name: 'Verify and upload ISO'
677             condition: SUCCESSFUL
678             projects:
679                 - name: 'apex-verify-iso-{{ stream }}'
680                   current-parameters: false
681                   predefined-parameters: |
682                     BUILD_DIRECTORY=apex-build-{{ stream }}/.build
683                     GERRIT_BRANCH=$GERRIT_BRANCH
684                     GERRIT_REFSPEC=$GERRIT_REFSPEC
685                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
686                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
687                   node-parameters: true
688                   kill-phase-on: FAILURE
689                   abort-all-job: true
690                   git-revision: true
691         - multijob:
692             name: Baremetal Deploy and Test Phase
693             condition: SUCCESSFUL
694             projects:
695 {% for scenario in scenarios[stream] %}
696                 - name: 'apex-deploy-test-baremetal-{{ stream }}'
697                   node-parameters: false
698                   current-parameters: false
699                   predefined-parameters: |
700                     DEPLOY_SCENARIO={{scenario}}
701                     OPNFV_CLEAN=yes
702                   kill-phase-on: NEVER
703                   abort-all-job: true
704                   git-revision: false
705 {% endfor %}
706 {% endfor %}
707
708 # snapshot create
709 - job-template:
710     name: 'apex-create-snapshot'
711
712     # Job template for clean
713     #
714     # Required Variables:
715     #     stream:    branch with - in place of / (eg. stable)
716
717     disabled: false
718
719     builders:
720         - shell:
721             !include-raw-escape: ./apex-snapshot-create.sh
722
723 # snapshot upload
724 - job-template:
725     name: 'apex-upload-snapshot'
726
727     # Job template for clean
728     #
729     # Required Variables:
730     #     stream:    branch with - in place of / (eg. stable)
731
732     disabled: false
733
734     builders:
735         - inject:
736            properties-content: ARTIFACT_TYPE=snapshot
737         - 'apex-upload-artifact'
738
739 # CSIT promote
740 - job-template:
741     name: 'apex-csit-promote-daily-{stream}'
742
743     # Job template for promoting CSIT Snapshots
744     #
745     # Required Variables:
746     #     stream:    branch with - in place of / (eg. stable)
747     #     branch:    branch (eg. stable)
748     node: '{virtual-slave}'
749     project-type: 'multijob'
750     disabled: false
751
752     scm:
753         - git-scm
754
755     parameters:
756         - project-parameter:
757             project: '{project}'
758             branch: '{branch}'
759         - apex-parameter:
760             gs-pathname: '{gs-pathname}'
761
762     properties:
763         - build-blocker:
764             use-build-blocker: true
765             block-level: 'NODE'
766             blocking-jobs:
767                 - 'apex-verify.*'
768                 - 'apex-deploy.*'
769                 - 'apex-build.*'
770                 - 'apex-runner.*'
771                 - 'apex-daily.*'
772
773     triggers:
774         - timed: '0 12 * * 0'
775
776     builders:
777         - multijob:
778             name: build
779             condition: SUCCESSFUL
780             projects:
781                 - name: 'apex-build-{stream}'
782                   current-parameters: false
783                   predefined-parameters: |
784                     GERRIT_BRANCH=$GERRIT_BRANCH
785                     GERRIT_REFSPEC=$GERRIT_REFSPEC
786                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
787                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
788                   node-parameters: false
789                   kill-phase-on: FAILURE
790                   abort-all-job: true
791                   git-revision: true
792         - multijob:
793             name: deploy-virtual
794             condition: SUCCESSFUL
795             projects:
796                 - name: 'apex-deploy-virtual-{stream}'
797                   current-parameters: false
798                   predefined-parameters: |
799                     DEPLOY_SCENARIO=os-odl_l3-csit-noha
800                     OPNFV_CLEAN=yes
801                     GERRIT_BRANCH=$GERRIT_BRANCH
802                     GERRIT_REFSPEC=$GERRIT_REFSPEC
803                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
804                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
805                   node-parameters: true
806                   kill-phase-on: FAILURE
807                   abort-all-job: true
808                   git-revision: false
809         - multijob:
810             name: functest-smoke
811             condition: SUCCESSFUL
812             projects:
813               - name: 'functest-apex-virtual-suite-{stream}'
814                 current-parameters: false
815                 predefined-parameters: |
816                   DEPLOY_SCENARIO=os-odl_l3-nofeature-noha
817                   FUNCTEST_SUITE_NAME=tempest_smoke_serial
818                   GERRIT_BRANCH=$GERRIT_BRANCH
819                   GERRIT_REFSPEC=$GERRIT_REFSPEC
820                   GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
821                   GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
822                 node-parameters: true
823                 kill-phase-on: FAILURE
824                 abort-all-job: true
825                 git-revision: false
826         - multijob:
827             name: create snapshot
828             condition: SUCCESSFUL
829             projects:
830               - name: 'apex-create-snapshot'
831                 current-parameters: true
832                 node-parameters: true
833                 kill-phase-on: FAILURE
834                 abort-all-job: true
835                 git-revision: false
836         - multijob:
837             name: upload snapshot
838             condition: SUCCESSFUL
839             projects:
840               - name: 'apex-upload-snapshot'
841                 current-parameters: true
842                 node-parameters: true
843                 kill-phase-on: FAILURE
844                 abort-all-job: true
845                 git-revision: false
846
847 # FDIO promote
848 - job-template:
849     name: 'apex-fdio-promote-daily-{stream}'
850
851     # Job template for promoting CSIT Snapshots
852     #
853     # Required Variables:
854     #     stream:    branch with - in place of / (eg. stable)
855     #     branch:    branch (eg. stable)
856     node: '{virtual-slave}'
857     project-type: 'multijob'
858     disabled: false
859
860     scm:
861         - git-scm
862
863     parameters:
864         - project-parameter:
865             project: '{project}'
866             branch: '{branch}'
867         - apex-parameter:
868             gs-pathname: '{gs-pathname}'
869
870     properties:
871         - build-blocker:
872             use-build-blocker: true
873             block-level: 'NODE'
874             blocking-jobs:
875                 - 'apex-verify.*'
876                 - 'apex-deploy.*'
877                 - 'apex-build.*'
878                 - 'apex-runner.*'
879                 - 'apex-daily.*'
880
881     builders:
882         - multijob:
883             name: build
884             condition: SUCCESSFUL
885             projects:
886                 - name: 'apex-build-{stream}'
887                   current-parameters: false
888                   predefined-parameters: |
889                     GERRIT_BRANCH=$GERRIT_BRANCH
890                     GERRIT_REFSPEC=$GERRIT_REFSPEC
891                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
892                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
893                   node-parameters: false
894                   kill-phase-on: FAILURE
895                   abort-all-job: true
896                   git-revision: true
897         - multijob:
898             name: deploy-virtual
899             condition: SUCCESSFUL
900             projects:
901                 - name: 'apex-deploy-virtual-{stream}'
902                   current-parameters: false
903                   predefined-parameters: |
904                     DEPLOY_SCENARIO=os-odl_l2-netvirt_gbp_fdio-noha
905                     OPNFV_CLEAN=yes
906                     GERRIT_BRANCH=$GERRIT_BRANCH
907                     GERRIT_REFSPEC=$GERRIT_REFSPEC
908                     GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
909                     GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
910                   node-parameters: true
911                   kill-phase-on: FAILURE
912                   abort-all-job: true
913                   git-revision: false
914         - multijob:
915             name: create snapshot
916             condition: SUCCESSFUL
917             projects:
918               - name: 'apex-create-snapshot'
919                 current-parameters: true
920                 node-parameters: true
921                 kill-phase-on: FAILURE
922                 abort-all-job: true
923                 git-revision: false
924         - multijob:
925             name: upload snapshot
926             condition: SUCCESSFUL
927             projects:
928               - name: 'apex-upload-snapshot'
929                 current-parameters: true
930                 node-parameters: true
931                 kill-phase-on: FAILURE
932                 abort-all-job: true
933                 git-revision: false
934
935 - job-template:
936     name: 'apex-gs-clean-{stream}'
937
938     # Job template for clean
939     #
940     # Required Variables:
941     #     stream:    branch with - in place of / (eg. stable)
942     node: '{slave}'
943
944     disabled: false
945
946     parameters:
947         - project-parameter:
948             project: '{project}'
949             branch: '{branch}'
950         - apex-parameter:
951             gs-pathname: '{gs-pathname}'
952
953     builders:
954         - 'apex-gs-clean'
955
956     triggers:
957         - 'apex-gs-clean-{stream}'
958
959 ########################
960 # parameter macros
961 ########################
962 - parameter:
963     name: apex-parameter
964     parameters:
965         - string:
966             name: ARTIFACT_NAME
967             default: 'latest'
968             description: "RPM Artifact name that will be appended to GS_URL to deploy a specific artifact"
969         - string:
970             name: ARTIFACT_VERSION
971             default: 'daily'
972             description: "Artifact version type"
973         - string:
974             name: BUILD_DIRECTORY
975             default: $WORKSPACE/.build
976             description: "Directory where the build artifact will be located upon the completion of the build."
977         - string:
978             name: CACHE_DIRECTORY
979             default: $HOME/opnfv/apex-cache{gs-pathname}
980             description: "Directory where the cache to be used during the build is located."
981         - string:
982             name: GIT_BASE
983             default: https://gerrit.opnfv.org/gerrit/$PROJECT
984             description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
985         - string:
986             name: GS_PATHNAME
987             default: '{gs-pathname}'
988             description: "Version directory where opnfv artifacts are stored in gs repository"
989         - string:
990             name: GS_URL
991             default: $GS_BASE{gs-pathname}
992             description: "URL to Google Storage."
993
994 ########################
995 # builder macros
996 ########################
997 - builder:
998     name: 'apex-unit-test'
999     builders:
1000         - shell:
1001             !include-raw: ./apex-unit-test.sh
1002
1003 - builder:
1004     name: 'apex-build'
1005     builders:
1006         - shell:
1007             !include-raw: ./apex-build.sh
1008
1009 - builder:
1010     name: 'apex-workspace-cleanup'
1011     builders:
1012         - shell:
1013             !include-raw: ./apex-workspace-cleanup.sh
1014
1015 - builder:
1016     name: 'apex-iso-verify'
1017     builders:
1018         - shell:
1019             !include-raw: ./apex-iso-verify.sh
1020
1021
1022 - builder:
1023     name: 'apex-upload-artifact'
1024     builders:
1025         - shell:
1026             !include-raw: ./apex-upload-artifact.sh
1027
1028 - builder:
1029     name: 'apex-download-artifact'
1030     builders:
1031         - shell:
1032             !include-raw: ./apex-download-artifact.sh
1033
1034 - builder:
1035     name: 'apex-gs-cleanup'
1036     builders:
1037         - shell:
1038             !include-raw: ./apex-gs-cleanup.sh
1039
1040 - builder:
1041     name: 'apex-deploy'
1042     builders:
1043         - shell:
1044             !include-raw: ./apex-deploy.sh
1045
1046 #######################
1047 # trigger macros
1048 ########################
1049 - trigger:
1050     name: 'apex-master'
1051     triggers:
1052         - timed: '0 3 1 1 7'
1053 - trigger:
1054     name: 'apex-danube'
1055     triggers:
1056         - timed: '0 12 * * *'
1057 - trigger:
1058     name: 'apex-gs-clean-{stream}'
1059     triggers:
1060         - timed: '0 2 * * *'