33c54ecedb25ee1708d601dd6ff11f7faefdbf10
[releng.git] / jjb / fuel / fuel-ci-jobs.yml
1 # jenkins job templates for Fuel
2 - project:
3
4     name: 'fuel'
5
6     project: '{name}'
7
8     installer: '{name}'
9
10 #--------------------------------
11 # BRANCH ANCHORS
12 #--------------------------------
13     master: &master
14         stream: master
15         branch: '{stream}'
16         gs-pathname: ''
17     brahmaputra: &brahmaputra
18         stream: brahmaputra
19         branch: 'stable/{stream}'
20         gs-pathname: '/{stream}'
21 #--------------------------------
22 # POD, INSTALLER, AND BRANCH MAPPING
23 #--------------------------------
24 #        brahmaputra
25 #--------------------------------
26     pod:
27         - opnfv-jump-2:
28             <<: *brahmaputra
29         - ericsson-pod1:
30             <<: *brahmaputra
31         - ericsson-pod2:
32             <<: *brahmaputra
33         - virtual:
34             <<: *brahmaputra
35 #--------------------------------
36 #        master
37 #--------------------------------
38         - ericsson-pod1:
39             <<: *master
40         - ericsson-pod2:
41             <<: *master
42         - virtual:
43             <<: *master
44 #--------------------------------
45 #       scenarios
46 #--------------------------------
47     scenario:
48         # HA scenarios
49         - 'os-onos-nofeature-ha':
50 #            auto-trigger-name: 'fuel-{scenario}-{pod}-trigger'
51             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
52         - 'os-odl_l2-nofeature-ha':
53             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
54         - 'os-odl_l3-nofeature-ha':
55             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
56         - 'os-odl_l2-bgpvpn-ha':
57             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
58         - 'os-nosdn-nofeature-ha':
59             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
60         - 'os-nosdn-kvm-ha':
61             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
62         - 'os-nosdn-kvm_ovs-ha':
63             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
64         - 'os-nosdn-ovs-ha':
65             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
66         - 'os-nosdn-vlan-ha':
67             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
68         # NOHA scenarios
69         - 'os-odl_l2-nofeature-noha':
70             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
71         - 'os-odl_l3-nofeature-noha':
72             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
73         - 'os-onos-nofeature-noha':
74             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
75         - 'os-nosdn-nofeature-noha':
76             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
77         - 'os-nosdn-kvm-noha':
78             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
79         - 'os-nosdn-kvm_ovs-noha':
80             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
81         - 'os-nosdn-ovs-noha':
82             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
83         - 'os-odl_l2-bgpvpn-noha':
84             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
85
86     jobs:
87         - 'fuel-{scenario}-{pod}-daily-{stream}'
88         - 'fuel-deploy-{pod}-daily-{stream}'
89
90 ########################
91 # job templates
92 ########################
93 - job-template:
94     name: 'fuel-{scenario}-{pod}-daily-{stream}'
95
96     concurrent: false
97
98     properties:
99         - throttle:
100             enabled: true
101             max-total: 1
102             max-per-node: 1
103         - build-blocker:
104             use-build-blocker: true
105             blocking-jobs:
106                 - 'fuel-os-.*?-{pod}-daily-{stream}'
107             block-level: 'NODE'
108
109     wrappers:
110         - build-name:
111             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
112
113     triggers:
114         - '{auto-trigger-name}'
115
116     parameters:
117         - project-parameter:
118             project: '{project}'
119         - '{installer}-defaults'
120         - '{pod}-defaults':
121             installer: '{installer}'
122         - string:
123             name: DEPLOY_SCENARIO
124             default: '{scenario}'
125         - fuel-ci-parameter:
126             gs-pathname: '{gs-pathname}'
127
128     builders:
129         - trigger-builds:
130             - project: 'fuel-deploy-{pod}-daily-{stream}'
131               current-parameters: false
132               predefined-parameters:
133                 DEPLOY_SCENARIO={scenario}
134               same-node: true
135               block: true
136         - trigger-builds:
137             - project: 'functest-fuel-{pod}-daily-{stream}'
138               current-parameters: false
139               predefined-parameters:
140                 DEPLOY_SCENARIO={scenario}
141               same-node: true
142               block: true
143               block-thresholds:
144                 build-step-failure-threshold: 'never'
145                 failure-threshold: 'never'
146                 unstable-threshold: 'FAILURE'
147         - trigger-builds:
148             - project: 'yardstick-fuel-{pod}-daily-{stream}'
149               current-parameters: false
150               predefined-parameters:
151                 DEPLOY_SCENARIO={scenario}
152               block: true
153               same-node: true
154               block-thresholds:
155                 build-step-failure-threshold: 'never'
156                 failure-threshold: 'never'
157                 unstable-threshold: 'FAILURE'
158
159 - job-template:
160     name: 'fuel-deploy-{pod}-daily-{stream}'
161
162     concurrent: false
163
164     properties:
165         - throttle:
166             enabled: true
167             max-total: 1
168             max-per-node: 1
169         - build-blocker:
170             use-build-blocker: true
171             blocking-jobs:
172                 - 'fuel-deploy-{pod}-daily-{stream}'
173                 - 'fuel-deploy-generic-daily-.*'
174             block-level: 'NODE'
175
176     parameters:
177         - project-parameter:
178             project: '{project}'
179         - '{installer}-defaults'
180         - '{pod}-defaults':
181             installer: '{installer}'
182         - string:
183             name: DEPLOY_SCENARIO
184             default: 'os-odl_l2-nofeature-ha'
185         - fuel-ci-parameter:
186             gs-pathname: '{gs-pathname}'
187
188     scm:
189         - git-scm:
190             credentials-id: '{ssh-credentials}'
191             refspec: ''
192             branch: '{branch}'
193
194     wrappers:
195         - build-name:
196             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
197
198     builders:
199         - shell:
200             !include-raw-escape: ./fuel-download-artifact.sh
201         - shell:
202             !include-raw-escape: ./fuel-deploy.sh
203
204     publishers:
205         - email:
206             recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com
207
208 ########################
209 # parameter macros
210 ########################
211 - parameter:
212     name: fuel-ci-parameter
213     parameters:
214         - string:
215             name: BUILD_DIRECTORY
216             default: $WORKSPACE/build_output
217             description: "Directory where the build artifact will be located upon the completion of the build."
218         - string:
219             name: CACHE_DIRECTORY
220             default: $HOME/opnfv/cache/$INSTALLER_TYPE
221             description: "Directory where the cache to be used during the build is located."
222         - string:
223             name: GS_URL
224             default: artifacts.opnfv.org/$PROJECT{gs-pathname}
225             description: "URL to Google Storage."
226 ########################
227 # trigger macros
228 ########################
229 # os-onos3-nofeature-ha trigger
230 - trigger:
231     name: 'fuel-os-onos-nofeature-ha-opnfv-jump-2-trigger'
232     triggers:
233         - timed: '0 20 * * *'
234 - trigger:
235     name: 'fuel-os-onos-nofeature-ha-ericsson-pod1-trigger'
236     triggers:
237         - timed: ''
238 - trigger:
239     name: 'fuel-os-onos-nofeature-ha-ericsson-pod2-trigger'
240     triggers:
241         - timed: ''
242 - trigger:
243     name: 'fuel-os-onos-nofeature-ha-virtual-trigger'
244     triggers:
245         - timed: ''
246
247 # os-odl_l2-nofeature-ha trigger
248 - trigger:
249     name: 'fuel-os-odl_l2-nofeature-ha-opnfv-jump-2-trigger'
250     triggers:
251         - timed: '0 0 * * *'
252 - trigger:
253     name: 'fuel-os-odl_l2-nofeature-ha-ericsson-pod1-trigger'
254     triggers:
255         - timed: ''
256 - trigger:
257     name: 'fuel-os-odl_l2-nofeature-ha-ericsson-pod2-trigger'
258     triggers:
259         - timed: ''
260 - trigger:
261     name: 'fuel-os-odl_l2-nofeature-ha-virtual-trigger'
262     triggers:
263         - timed: ''
264
265 # os-odl_l3-nofeature-ha trigger
266 - trigger:
267     name: 'fuel-os-odl_l3-nofeature-ha-opnfv-jump-2-trigger'
268     triggers:
269         - timed: '0 4 * * *'
270 - trigger:
271     name: 'fuel-os-odl_l3-nofeature-ha-ericsson-pod1-trigger'
272     triggers:
273         - timed: ''
274 - trigger:
275     name: 'fuel-os-odl_l3-nofeature-ha-ericsson-pod2-trigger'
276     triggers:
277         - timed: ''
278 - trigger:
279     name: 'fuel-os-odl_l3-nofeature-ha-virtual-trigger'
280     triggers:
281         - timed: ''
282
283 # os-odl_l2-bgpvpn-ha trigger
284 - trigger:
285     name: 'fuel-os-odl_l2-bgpvpn-ha-opnfv-jump-2-trigger'
286     triggers:
287         - timed: '0 8 * * *'
288 - trigger:
289     name: 'fuel-os-odl_l2-bgpvpn-ha-ericsson-pod1-trigger'
290     triggers:
291         - timed: ''
292 - trigger:
293     name: 'fuel-os-odl_l2-bgpvpn-ha-ericsson-pod2-trigger'
294     triggers:
295         - timed: ''
296 - trigger:
297     name: 'fuel-os-odl_l2-bgpvpn-ha-virtual-trigger'
298     triggers:
299         - timed: ''