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