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