Apex: changing Gluon scenario name to noha
[releng.git] / jjb / apex / apex.yml
1 - project:
2     name: apex
3     jobs:
4         - 'apex-verify-{stream}'
5         - 'apex-verify-unit-tests-{stream}'
6         - 'apex-runner-{platform}-{scenario}-{stream}'
7         - 'apex-runner-cperf-{stream}'
8         - 'apex-build-{stream}'
9         - 'apex-deploy-virtual-{scenario}-{stream}'
10         - 'apex-deploy-baremetal-{scenario}-{stream}'
11         - 'apex-daily-{stream}'
12         - 'apex-daily-colorado'
13         - 'apex-build-colorado'
14         - 'apex-deploy-baremetal-os-odl_l2-fdio-ha-colorado'
15
16     # stream:    branch with - in place of / (eg. stable-arno)
17     # branch:    branch (eg. stable/arno)
18     stream:
19         - master:
20             branch: 'master'
21             gs-pathname: ''
22             slave: 'lf-pod1'
23             verify-slave: 'apex-verify-master'
24             daily-slave: 'apex-daily-master'
25
26     project: 'apex'
27
28     scenario:
29          - 'os-nosdn-nofeature-noha'
30          - 'os-nosdn-nofeature-ha'
31          - 'os-nosdn-nofeature-ha-ipv6'
32          - 'os-nosdn-ovs-noha'
33          - 'os-nosdn-fdio-noha'
34          - 'os-nosdn-fdio-ha'
35          - 'os-odl_l2-fdio-ha'
36          - 'os-odl_l2-netvirt_gbp_fdio-noha'
37          - 'os-odl_l2-sfc-noha'
38          - 'os-odl_l3-nofeature-ha'
39          - 'os-odl-bgpvpn-ha'
40          - 'os-odl-gluon-noha'
41          - 'os-odl_l3-fdio-noha'
42          - 'os-odl_l3-fdio-ha'
43          - 'os-odl_l3-fdio_dvr-noha'
44          - 'os-odl_l3-fdio_dvr-ha'
45          - 'os-onos-nofeature-ha'
46
47     platform:
48          - 'baremetal'
49          - 'virtual'
50
51 # Unit Test
52 - job-template:
53     name: 'apex-verify-unit-tests-{stream}'
54
55     node: '{verify-slave}'
56
57     concurrent: true
58
59     parameters:
60         - apex-parameter:
61             gs-pathname: '{gs-pathname}'
62         - project-parameter:
63             project: '{project}'
64             branch: '{branch}'
65         - string:
66             name: GIT_BASE
67             default: https://gerrit.opnfv.org/gerrit/$PROJECT
68             description: "Used for overriding the GIT URL coming from parameters macro."
69
70     scm:
71         - git-scm-gerrit
72
73     triggers:
74         - gerrit:
75             server-name: 'gerrit.opnfv.org'
76             trigger-on:
77                 - patchset-created-event:
78                     exclude-drafts: 'false'
79                     exclude-trivial-rebase: 'false'
80                     exclude-no-code-change: 'true'
81                 - draft-published-event
82                 - comment-added-contains-event:
83                     comment-contains-value: 'recheck'
84                 - comment-added-contains-event:
85                     comment-contains-value: 'reverify'
86             projects:
87               - project-compare-type: 'ANT'
88                 project-pattern: 'apex'
89                 branches:
90                   - branch-compare-type: 'ANT'
91                     branch-pattern: '**/{branch}'
92                 file-paths:
93                   - compare-type: ANT
94                     pattern: 'tests/**'
95     properties:
96         - logrotate-default
97         - throttle:
98             max-per-node: 1
99             max-total: 10
100             option: 'project'
101
102     builders:
103         - 'apex-unit-test'
104
105 # Verify
106 - job-template:
107     name: 'apex-verify-{stream}'
108
109     node: '{verify-slave}'
110
111     concurrent: true
112
113     parameters:
114         - apex-parameter:
115             gs-pathname: '{gs-pathname}'
116         - project-parameter:
117             project: '{project}'
118             branch: '{branch}'
119         - string:
120             name: GIT_BASE
121             default: https://gerrit.opnfv.org/gerrit/$PROJECT
122             description: "Used for overriding the GIT URL coming from parameters macro."
123
124     scm:
125         - git-scm-gerrit
126
127     triggers:
128         - gerrit:
129             server-name: 'gerrit.opnfv.org'
130             trigger-on:
131                 - patchset-created-event:
132                     exclude-drafts: 'false'
133                     exclude-trivial-rebase: 'false'
134                     exclude-no-code-change: 'true'
135                 - draft-published-event
136                 - comment-added-contains-event:
137                     comment-contains-value: 'recheck'
138                 - comment-added-contains-event:
139                     comment-contains-value: 'reverify'
140             projects:
141               - project-compare-type: 'ANT'
142                 project-pattern: 'apex'
143                 branches:
144                   - branch-compare-type: 'ANT'
145                     branch-pattern: '**/{branch}'
146                 file-paths:
147                   - compare-type: ANT
148                     pattern: 'ci/**'
149                   - compare-type: ANT
150                     pattern: 'build/**'
151                   - compare-type: ANT
152                     pattern: 'lib/**'
153                   - compare-type: ANT
154                     pattern: 'config/**'
155
156     properties:
157         - logrotate-default
158         - build-blocker:
159             use-build-blocker: true
160             block-level: 'NODE'
161             blocking-jobs:
162                 - 'apex-daily.*'
163                 - 'apex-deploy.*'
164                 - 'apex-build.*'
165                 - 'apex-runner.*'
166                 - 'apex-verify.*'
167         - throttle:
168             max-per-node: 1
169             max-total: 10
170             option: 'project'
171
172     builders:
173         - 'apex-unit-test'
174         - 'apex-build'
175         - trigger-builds:
176           - project: 'apex-deploy-virtual-os-nosdn-nofeature-ha-{stream}'
177             predefined-parameters: |
178               BUILD_DIRECTORY=apex-verify-{stream}
179               OPNFV_CLEAN=yes
180             git-revision: false
181             block: true
182             same-node: true
183         - trigger-builds:
184           - project: 'functest-apex-{verify-slave}-suite-{stream}'
185             predefined-parameters: |
186               DEPLOY_SCENARIO=os-nosdn-nofeature-ha
187               FUNCTEST_SUITE_NAME=healthcheck
188             block: true
189             same-node: true
190         - trigger-builds:
191           - project: 'apex-deploy-virtual-os-odl_l3-nofeature-ha-{stream}'
192             predefined-parameters: |
193               BUILD_DIRECTORY=apex-verify-{stream}
194               OPNFV_CLEAN=yes
195             git-revision: false
196             block: true
197             same-node: true
198         - trigger-builds:
199           - project: 'functest-apex-{verify-slave}-suite-{stream}'
200             predefined-parameters: |
201               DEPLOY_SCENARIO=os-odl_l3-nofeature-ha
202               FUNCTEST_SUITE_NAME=healthcheck
203             block: true
204             same-node: true
205         - 'apex-workspace-cleanup'
206
207 - job-template:
208     name: 'apex-runner-{platform}-{scenario}-{stream}'
209
210     # runner jobs for deploying manually
211
212     node: '{slave}'
213
214     disabled: false
215
216     parameters:
217         - apex-parameter:
218             gs-pathname: '{gs-pathname}'
219         - project-parameter:
220             project: '{project}'
221             branch: '{branch}'
222         - string:
223             name: GIT_BASE
224             default: https://gerrit.opnfv.org/gerrit/$PROJECT
225             description: "Used for overriding the GIT URL coming from parameters macro."
226
227     scm:
228         - git-scm
229
230     properties:
231         - logrotate-default
232         - build-blocker:
233             use-build-blocker: true
234             blocking-jobs:
235                 - 'apex-daily.*'
236                 - 'apex-verify.*'
237
238     builders:
239         - trigger-builds:
240           - project: 'apex-deploy-{platform}-{scenario}-{stream}'
241             predefined-parameters:
242               OPNFV_CLEAN=yes
243             git-revision: false
244             block: true
245         - trigger-builds:
246           - project: 'yardstick-apex-{slave}-daily-{stream}'
247             predefined-parameters:
248               DEPLOY_SCENARIO={scenario}
249             block: true
250             block-thresholds:
251                 build-step-failure-threshold: 'never'
252                 failure-threshold: 'never'
253                 unstable-threshold: 'FAILURE'
254         - trigger-builds:
255           - project: 'functest-apex-{slave}-daily-{stream}'
256             predefined-parameters:
257               DEPLOY_SCENARIO={scenario}
258             block: true
259             block-thresholds:
260                 build-step-failure-threshold: 'never'
261                 failure-threshold: 'never'
262                 unstable-threshold: 'FAILURE'
263
264 - job-template:
265     name: 'apex-runner-cperf-{stream}'
266
267     # runner cperf job
268
269     node: 'intel-pod2'
270
271     disabled: false
272
273     parameters:
274         - apex-parameter:
275             gs-pathname: '{gs-pathname}'
276         - project-parameter:
277             project: '{project}'
278             branch: '{branch}'
279         - string:
280             name: GIT_BASE
281             default: https://gerrit.opnfv.org/gerrit/$PROJECT
282             description: "Used for overriding the GIT URL coming from parameters macro."
283
284     scm:
285         - git-scm
286
287     properties:
288         - logrotate-default
289         - build-blocker:
290             use-build-blocker: false
291             block-level: 'NODE'
292             blocking-jobs:
293                 - 'apex-deploy.*'
294         - throttle:
295             max-per-node: 1
296             max-total: 10
297             option: 'project'
298
299     builders:
300         - trigger-builds:
301           - project: 'apex-deploy-baremetal-os-odl_l3-nofeature-ha-{stream}'
302             predefined-parameters:
303               OPNFV_CLEAN=yes
304             git-revision: false
305             block: true
306             same-node: true
307         - trigger-builds:
308           - project: 'cperf-apex-intel-pod2-daily-{stream}'
309             predefined-parameters:
310               DEPLOY_SCENARIO=os-odl_l3-nofeature-ha
311             block: true
312             same-node: true
313
314 - job-template:
315     name: 'apex-build-{stream}'
316
317     # Job template for builds
318     #
319     # Required Variables:
320     #     stream:    branch with - in place of / (eg. stable)
321     #     branch:    branch (eg. stable)
322     node: '{daily-slave}'
323
324     disabled: false
325
326     concurrent: true
327
328     parameters:
329         - project-parameter:
330             project: '{project}'
331             branch: '{branch}'
332         - apex-parameter:
333             gs-pathname: '{gs-pathname}'
334         - string:
335             name: GIT_BASE
336             default: https://gerrit.opnfv.org/gerrit/$PROJECT
337             description: "Used for overriding the GIT URL coming from parameters macro."
338
339     scm:
340         - git-scm
341
342     properties:
343         - logrotate-default
344         - build-blocker:
345             use-build-blocker: true
346             block-level: 'NODE'
347             blocking-jobs:
348                 - 'apex-deploy.*'
349         - throttle:
350             max-per-node: 1
351             max-total: 10
352             option: 'project'
353
354     builders:
355         - 'apex-build'
356         - trigger-builds:
357           - project: 'apex-deploy-virtual-os-nosdn-nofeature-noha-{stream}'
358             predefined-parameters: |
359               BUILD_DIRECTORY=apex-build-{stream}/.build
360               OPNFV_CLEAN=yes
361             git-revision: false
362             same-node: true
363             block: true
364         - 'apex-upload-artifact'
365
366 - job-template:
367     name: 'apex-deploy-virtual-{scenario}-{stream}'
368
369     # Job template for virtual deployment
370     #
371     # Required Variables:
372     #     stream:    branch with - in place of / (eg. stable)
373     #     branch:    branch (eg. stable)
374     node: '{slave}'
375
376     concurrent: true
377
378     disabled: false
379
380     scm:
381         - git-scm
382
383     parameters:
384         - project-parameter:
385             project: '{project}'
386             branch: '{branch}'
387         - apex-parameter:
388             gs-pathname: '{gs-pathname}'
389         - string:
390             name: DEPLOY_SCENARIO
391             default: '{scenario}'
392             description: "Scenario to deploy with."
393         - string:
394             name: OPNFV_CLEAN
395             default: 'no'
396             description: "Use yes in lower case to invoke clean. Indicates if the deploy environment should be cleaned before deployment"
397
398     properties:
399         - logrotate-default
400         - build-blocker:
401             use-build-blocker: true
402             block-level: 'NODE'
403             blocking-jobs:
404                 - 'apex-deploy.*'
405         - throttle:
406             max-per-node: 1
407             max-total: 10
408             option: 'project'
409
410     builders:
411         - 'apex-deploy'
412         - 'apex-workspace-cleanup'
413
414 - job-template:
415     name: 'apex-deploy-baremetal-{scenario}-{stream}'
416
417     # Job template for baremetal deployment
418     #
419     # Required Variables:
420     #     stream:    branch with - in place of / (eg. stable)
421     #     branch:    branch (eg. stable)
422     node: '{slave}'
423
424     disabled: false
425
426     scm:
427         - git-scm
428
429     parameters:
430         - project-parameter:
431             project: '{project}'
432             branch: '{branch}'
433         - apex-parameter:
434             gs-pathname: '{gs-pathname}'
435         - string:
436             name: DEPLOY_SCENARIO
437             default: '{scenario}'
438             description: "Scenario to deploy with."
439
440     properties:
441         - logrotate-default
442         - build-blocker:
443             use-build-blocker: true
444             block-level: 'NODE'
445             blocking-jobs:
446                 - 'apex-verify.*'
447                 - 'apex-deploy.*'
448                 - 'apex-build.*'
449
450
451     builders:
452         - 'apex-deploy'
453         - 'apex-workspace-cleanup'
454
455 # Daily
456 - job-template:
457     name: 'apex-daily-{stream}'
458
459     # Job template for daily build
460     #
461     # Required Variables:
462     #     stream:    branch with - in place of / (eg. stable)
463     #     branch:    branch (eg. stable)
464     node: '{daily-slave}'
465
466     disabled: false
467
468     scm:
469         - git-scm
470
471     parameters:
472         - project-parameter:
473             project: '{project}'
474             branch: '{branch}'
475         - apex-parameter:
476             gs-pathname: '{gs-pathname}'
477
478     properties:
479         - logrotate-default
480         - build-blocker:
481             use-build-blocker: true
482             block-level: 'NODE'
483             blocking-jobs:
484                 - 'apex-verify.*'
485                 - 'apex-deploy.*'
486                 - 'apex-build.*'
487                 - 'apex-runner.*'
488
489     triggers:
490         - 'apex-{stream}'
491
492     builders:
493         - trigger-builds:
494           - project: 'apex-build-{stream}'
495             git-revision: true
496             current-parameters: true
497             same-node: true
498             block: true
499         - trigger-builds:
500           - project: 'apex-deploy-baremetal-os-nosdn-nofeature-ha-{stream}'
501             predefined-parameters: |
502               BUILD_DIRECTORY=apex-build-{stream}/.build
503               OPNFV_CLEAN=yes
504             git-revision: true
505             same-node: true
506             block-thresholds:
507                 build-step-failure-threshold: 'never'
508             block: true
509         - trigger-builds:
510           - project: 'functest-apex-{daily-slave}-daily-{stream}'
511             predefined-parameters:
512               DEPLOY_SCENARIO=os-nosdn-nofeature-ha
513             block: true
514             same-node: true
515             block-thresholds:
516                 build-step-failure-threshold: 'never'
517                 failure-threshold: 'never'
518                 unstable-threshold: 'FAILURE'
519         - trigger-builds:
520           - project: 'yardstick-apex-{slave}-daily-{stream}'
521             predefined-parameters:
522               DEPLOY_SCENARIO=os-nosdn-nofeature-ha
523             block: true
524             same-node: true
525             block-thresholds:
526                 build-step-failure-threshold: 'never'
527                 failure-threshold: 'never'
528                 unstable-threshold: 'FAILURE'
529         - trigger-builds:
530           - project: 'apex-deploy-baremetal-os-odl_l3-nofeature-ha-{stream}'
531             predefined-parameters: |
532               BUILD_DIRECTORY=apex-build-{stream}/.build
533               OPNFV_CLEAN=yes
534             git-revision: true
535             same-node: true
536             block-thresholds:
537                 build-step-failure-threshold: 'never'
538             block: true
539         - trigger-builds:
540           - project: 'functest-apex-{daily-slave}-daily-{stream}'
541             predefined-parameters:
542               DEPLOY_SCENARIO=os-odl_l3-nofeature-ha
543             block: true
544             same-node: true
545             block-thresholds:
546                 build-step-failure-threshold: 'never'
547                 failure-threshold: 'never'
548                 unstable-threshold: 'FAILURE'
549         - trigger-builds:
550           - project: 'yardstick-apex-{slave}-daily-{stream}'
551             predefined-parameters:
552               DEPLOY_SCENARIO=os-odl_l3-nofeature-ha
553             block: true
554             same-node: true
555             block-thresholds:
556                 build-step-failure-threshold: 'never'
557                 failure-threshold: 'never'
558                 unstable-threshold: 'FAILURE'
559
560
561 # Colorado Build
562 - job-template:
563     name: 'apex-build-colorado'
564
565     # Job template for builds
566     #
567     # Required Variables:
568     #     stream:    branch with - in place of / (eg. stable)
569     #     branch:    branch (eg. stable)
570     node: 'apex-daily-colorado'
571
572     disabled: false
573
574     concurrent: true
575
576     parameters:
577         - project-parameter:
578             project: '{project}'
579             branch: 'stable/colorado'
580         - apex-parameter:
581             gs-pathname: '/colorado'
582         - string:
583             name: GIT_BASE
584             default: https://gerrit.opnfv.org/gerrit/$PROJECT
585             description: "Used for overriding the GIT URL coming from parameters macro."
586
587     scm:
588         - git-scm
589
590     properties:
591         - logrotate-default
592         - build-blocker:
593             use-build-blocker: true
594             block-level: 'NODE'
595             blocking-jobs:
596                 - 'apex-deploy.*'
597         - throttle:
598             max-per-node: 1
599             max-total: 10
600             option: 'project'
601
602     builders:
603         - 'apex-build'
604         - 'apex-upload-artifact'
605
606
607 # Colorado FDIO Deploy
608 - job-template:
609     name: 'apex-deploy-baremetal-os-odl_l2-fdio-ha-colorado'
610
611     # Job template for baremetal deployment
612     #
613     # Required Variables:
614     #     stream:    branch with - in place of / (eg. stable)
615     #     branch:    branch (eg. stable)
616     node: 'lf-pod1'
617
618     disabled: false
619
620     scm:
621         - git-scm
622
623     parameters:
624         - project-parameter:
625             project: '{project}'
626             branch: 'stable/colorado'
627         - apex-parameter:
628             gs-pathname: '/colorado'
629         - string:
630             name: DEPLOY_SCENARIO
631             default: 'os-odl_l2-fdio-ha'
632             description: "Scenario to deploy with."
633
634     properties:
635         - logrotate-default
636         - build-blocker:
637             use-build-blocker: true
638             block-level: 'NODE'
639             blocking-jobs:
640                 - 'apex-verify.*'
641                 - 'apex-deploy.*'
642                 - 'apex-build.*'
643
644
645     builders:
646         - 'apex-deploy'
647         - 'apex-workspace-cleanup'
648
649 # Colorado FDIO Daily
650 - job-template:
651     name: 'apex-daily-colorado'
652
653     # Job template for daily build
654     #
655     # Required Variables:
656     #     stream:    branch with - in place of / (eg. stable)
657     #     branch:    branch (eg. stable)
658     node: 'apex-daily-colorado'
659
660     disabled: false
661
662     scm:
663         - git-scm
664
665     parameters:
666         - project-parameter:
667             project: '{project}'
668             branch: 'stable/colorado'
669         - apex-parameter:
670             gs-pathname: '/colorado'
671
672     properties:
673         - logrotate-default
674         - build-blocker:
675             use-build-blocker: true
676             block-level: 'NODE'
677             blocking-jobs:
678                 - 'apex-verify.*'
679                 - 'apex-deploy.*'
680                 - 'apex-build.*'
681                 - 'apex-runner.*'
682
683     triggers:
684         - 'apex-colorado'
685
686     builders:
687         - trigger-builds:
688           - project: 'apex-build-colorado'
689             git-revision: true
690             current-parameters: true
691             same-node: true
692             block: true
693         - trigger-builds:
694           - project: 'apex-deploy-baremetal-os-odl_l2-fdio-ha-colorado'
695             predefined-parameters: |
696               BUILD_DIRECTORY=apex-build-colorado/.build
697               OPNFV_CLEAN=yes
698             git-revision: true
699             same-node: true
700             block-thresholds:
701                 build-step-failure-threshold: 'never'
702             block: true
703         - trigger-builds:
704           - project: 'functest-apex-apex-daily-colorado-daily-colorado'
705             predefined-parameters:
706               DEPLOY_SCENARIO=os-odl_l2-fdio-ha
707             block: true
708             same-node: true
709             block-thresholds:
710                 build-step-failure-threshold: 'never'
711                 failure-threshold: 'never'
712                 unstable-threshold: 'FAILURE'
713
714 - job-template:
715     name: 'apex-gs-clean-{stream}'
716
717     # Job template for clean
718     #
719     # Required Variables:
720     #     stream:    branch with - in place of / (eg. stable)
721     node: '{slave}'
722
723     disabled: false
724
725     parameters:
726         - project-parameter:
727             project: '{project}'
728             branch: '{branch}'
729         - apex-parameter:
730             gs-pathname: '{gs-pathname}'
731
732     builders:
733         - 'apex-gs-clean'
734
735     triggers:
736         - 'apex-gs-clean-{stream}'
737
738
739 ########################
740 # parameter macros
741 ########################
742 - parameter:
743     name: apex-parameter
744     parameters:
745         - string:
746             name: ARTIFACT_NAME
747             default: 'latest'
748             description: "RPM Artifact name that will be appended to GS_URL to deploy a specific artifact"
749         - string:
750             name: ARTIFACT_VERSION
751             default: 'daily'
752             description: "Artifact version type"
753         - string:
754             name: BUILD_DIRECTORY
755             default: $WORKSPACE/build
756             description: "Directory where the build artifact will be located upon the completion of the build."
757         - string:
758             name: CACHE_DIRECTORY
759             default: $HOME/opnfv/cache{gs-pathname}
760             description: "Directory where the cache to be used during the build is located."
761         - string:
762             name: GIT_BASE
763             default: https://gerrit.opnfv.org/gerrit/$PROJECT
764             description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
765         - string:
766             name: GS_PATHNAME
767             default: '{gs-pathname}'
768             description: "Version directory where opnfv artifacts are stored in gs repository"
769         - string:
770             name: GS_URL
771             default: artifacts.opnfv.org/$PROJECT{gs-pathname}
772             description: "URL to Google Storage."
773
774 ########################
775 # builder macros
776 ########################
777 - builder:
778     name: 'apex-unit-test'
779     builders:
780         - shell:
781             !include-raw: ./apex-unit-test.sh
782
783 - builder:
784     name: 'apex-build'
785     builders:
786         - shell:
787             !include-raw: ./apex-build.sh
788
789 - builder:
790     name: 'apex-workspace-cleanup'
791     builders:
792         - shell:
793             !include-raw: ./apex-workspace-cleanup.sh
794
795 - builder:
796     name: 'apex-upload-artifact'
797     builders:
798         - shell:
799             !include-raw: ./apex-upload-artifact.sh
800
801 - builder:
802     name: 'apex-gs-cleanup'
803     builders:
804         - shell:
805             !include-raw: ./apex-gs-cleanup.sh
806
807 - builder:
808     name: 'apex-deploy'
809     builders:
810         - shell:
811             !include-raw: ./apex-deploy.sh
812
813
814 #######################
815 # trigger macros
816 ########################
817 - trigger:
818     name: 'apex-master'
819     triggers:
820         - timed: '0 3 * * *'
821 - trigger:
822     name: 'apex-colorado'
823     triggers:
824         - timed: '0 12 * * *'
825 - trigger:
826     name: 'apex-gs-clean-{stream}'
827     triggers:
828         - timed: '0 2 * * *'