Merge "Add additional test scenario: onos, ovno, promise, doctor"
[releng.git] / jjb / joid / joid-ci-jobs.yml
1 ########################
2 # Job configuration for joid
3 ########################
4 - project:
5
6     name: 'joid'
7
8     project: '{name}'
9
10     installer: '{name}'
11
12 #--------------------------------
13 # BRANCH ANCHORS
14 #--------------------------------
15     master: &master
16         stream: master
17         branch: '{stream}'
18         gs-pathname: ''
19     brahmaputra: &brahmaputra
20         stream: brahmaputra
21         branch: 'stable/{stream}'
22         gs-pathname: '/{stream}'
23 #--------------------------------
24 # POD, INSTALLER, AND BRANCH MAPPING
25 #--------------------------------
26 #        brahmaputra
27 #--------------------------------
28     pod:
29         - intel-pod5:
30             <<: *brahmaputra
31 #--------------------------------
32 #           master
33 #--------------------------------
34         - intel-pod6:
35             <<: *master
36         - orange-pod2:
37             <<: *master
38         - juniper-pod1:
39             <<: *master
40 #--------------------------------
41 # new scenario descriptions
42     scenario:
43         - 'os-nosdn-nofeature-noha':
44             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
45         - 'os-nosdn-nofeature-ha':
46             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
47         - 'os-odl_l2-nofeature-ha':
48             auto-trigger-name: 'joid-{scenario}-{pod}-trigger'
49         - 'os-odl_l2-nofeature-noha':
50             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
51         - 'os-onos-nofeature-ha':
52             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
53         - 'os-onos-nofeature-noha':
54             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
55         - 'os-ocl-nofeature-ha':
56             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
57         - 'os-ocl-nofeature-noha':
58             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
59
60     jobs:
61         - 'joid-{scenario}-{pod}-daily-{stream}'
62         - 'joid-deploy-{pod}-daily-{stream}'
63
64 ########################
65 # job templates
66 ########################
67 - job-template:
68     name: 'joid-{scenario}-{pod}-daily-{stream}'
69
70     project-type: multijob
71
72     node: intel-build
73
74     concurrent: false
75
76     properties:
77         - throttle:
78             enabled: true
79             max-total: 1
80             max-per-node: 1
81         - build-blocker:
82             use-build-blocker: true
83             blocking-jobs:
84                 - 'joid-os-.*?-{pod}-daily-{stream}'
85
86     wrappers:
87         - build-name:
88             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
89
90     triggers:
91         - '{auto-trigger-name}'
92
93     parameters:
94         - project-parameter:
95             project: '{project}'
96         - '{installer}-defaults'
97         - '{pod}-defaults'
98         - string:
99             name: DEPLOY_SCENARIO
100             default: '{scenario}'
101
102     builders:
103         - multijob:
104             name: deploy
105             condition: SUCCESSFUL
106             projects:
107                 - name: 'joid-deploy-{pod}-daily-{stream}'
108                   current-parameters: false
109                   predefined-parameters: 'DEPLOY_SCENARIO={scenario}'
110                   kill-phase-on: FAILURE
111         - multijob:
112             name: functest
113             condition: COMPLETED
114             projects:
115                 - name: 'functest-joid-{pod}-daily-{stream}'
116                   current-parameters: false
117                   predefined-parameters: 'DEPLOY_SCENARIO={scenario}'
118                   kill-phase-on: NEVER
119         - multijob:
120             name: yardstick
121             condition: COMPLETED
122             projects:
123                 - name: 'yardstick-joid-{pod}-daily-{stream}'
124                   current-parameters: false
125                   predefined-parameters: 'DEPLOY_SCENARIO={scenario}'
126                   kill-phase-on: NEVER
127
128 - job-template:
129     name: 'joid-deploy-{pod}-daily-{stream}'
130
131     concurrent: false
132
133     properties:
134         - throttle:
135             enabled: true
136             max-total: 1
137             max-per-node: 1
138         - build-blocker:
139             use-build-blocker: true
140             blocking-jobs:
141                 - 'joid-deploy-{pod}-daily-{stream}'
142
143     wrappers:
144         - build-name:
145             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
146         - timeout:
147             timeout: 180
148             fail: true
149
150     parameters:
151         - project-parameter:
152             project: '{project}'
153         - '{installer}-defaults'
154         - '{pod}-defaults'
155
156     scm:
157         - git-scm:
158             credentials-id: '{ssh-credentials}'
159             refspec: ''
160             branch: '{branch}'
161
162     builders:
163         - 'builder-macro'
164
165 ########################
166 # builder macros
167 ########################
168 - builder:
169     name: 'builder-macro'
170     builders:
171         - shell: |
172             #!/bin/bash
173             echo "Running $INSTALLER_TYPE with controller $SDN_CONTROLLER"
174             echo
175             echo "------ First Executing clean.sh ------"
176             cd $WORKSPACE/ci
177             ./clean.sh
178         - shell:
179             !include-raw: ./joid-deploy.sh
180
181 ########################
182 # trigger macros
183 ########################
184 - trigger:
185     name: 'joid-os-odl_l2-nofeature-ha-intel-pod5-trigger'
186     triggers:
187         - timed: '0 2 * * *'
188 - trigger:
189     name: 'joid-os-odl_l2-nofeature-ha-intel-pod6-trigger'
190     triggers:
191         - timed: '0 2 * * *'
192 - trigger:
193     name: 'joid-os-odl_l2-nofeature-ha-orange-pod2-trigger'
194     triggers:
195         - timed: ''
196 - trigger:
197     name: 'joid-os-odl_l2-nofeature-ha-juniper-pod1-trigger'
198     triggers:
199         - timed: ''