fuel, armband: Hard set dovetail stream to master
[releng.git] / jjb / armband / armband-ci-jobs.yml
1 ---
2 # jenkins job templates for Armband
3 - project:
4     name: 'armband-ci'
5     project: 'armband'
6
7     # -------------------------------
8     # BRANCH ANCHORS
9     # -------------------------------
10     master: &master
11       stream: master
12       branch: '{stream}'
13       gs-pathname: ''
14       disabled: false
15     euphrates: &euphrates
16       stream: euphrates
17       branch: 'stable/{stream}'
18       gs-pathname: '/{stream}'
19       disabled: false
20     # -------------------------------
21     # POD, INSTALLER, AND BRANCH MAPPING
22     # -------------------------------
23     # CI POD's
24     # -------------------------------
25     #        euphrates
26     # -------------------------------
27     pod:
28       - armband-baremetal:
29           slave-label: armband-baremetal
30           installer: fuel
31           <<: *euphrates
32       - armband-virtual:
33           slave-label: armband-virtual
34           installer: fuel
35           <<: *euphrates
36       # -------------------------------
37       #        master
38       # -------------------------------
39       - armband-baremetal:
40           slave-label: armband-baremetal
41           installer: fuel
42           <<: *master
43       - armband-virtual:
44           slave-label: armband-virtual
45           installer: fuel
46           <<: *master
47     # -------------------------------
48     #       scenarios
49     # -------------------------------
50     scenario:
51       # HA scenarios
52       - 'os-nosdn-nofeature-ha':
53           auto-trigger-name: '{installer}-{scenario}-{pod}-{stream}-trigger'
54       - 'os-odl-nofeature-ha':
55           auto-trigger-name: '{installer}-{scenario}-{pod}-{stream}-trigger'
56
57       # NOHA scenarios
58       - 'os-nosdn-nofeature-noha':
59           auto-trigger-name: '{installer}-{scenario}-{pod}-{stream}-trigger'
60
61     jobs:
62       - '{installer}-{scenario}-{pod}-daily-{stream}'
63       - '{installer}-deploy-{pod}-daily-{stream}'
64
65 ########################
66 # job templates
67 ########################
68 - job-template:
69     name: '{installer}-{scenario}-{pod}-daily-{stream}'
70
71     disabled: '{obj:disabled}'
72
73     concurrent: false
74
75     properties:
76       - logrotate-default
77       - throttle:
78           enabled: true
79           max-total: 4
80           max-per-node: 1
81           option: 'project'
82       - build-blocker:
83           use-build-blocker: true
84           blocking-jobs:
85             - '{installer}-os-.*?-{pod}-daily-.*'
86             - 'armband-verify-.*'
87           block-level: 'NODE'
88
89     wrappers:
90       - build-name:
91           name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
92
93     triggers:
94       - '{auto-trigger-name}'
95
96     parameters:
97       - project-parameter:
98           project: '{project}'
99           branch: '{branch}'
100       - '{installer}-defaults':
101           gs-pathname: '{gs-pathname}'
102       - '{slave-label}-defaults':
103           installer: '{installer}'
104       - string:
105           name: DEPLOY_SCENARIO
106           default: '{scenario}'
107
108     builders:
109       - trigger-builds:
110           - project: '{installer}-deploy-{pod}-daily-{stream}'
111             current-parameters: false
112             predefined-parameters:
113               DEPLOY_SCENARIO={scenario}
114             same-node: true
115             block: true
116       - trigger-builds:
117           - project: 'functest-{installer}-{pod}-arm-daily-{stream}'
118             current-parameters: false
119             predefined-parameters:
120               DEPLOY_SCENARIO={scenario}
121             block: true
122             same-node: true
123             block-thresholds:
124               build-step-failure-threshold: 'never'
125               failure-threshold: 'never'
126               unstable-threshold: 'FAILURE'
127       - trigger-builds:
128           - project: 'yardstick-{installer}-{pod}-daily-{stream}'
129             current-parameters: false
130             predefined-parameters:
131               DEPLOY_SCENARIO={scenario}
132             block: true
133             same-node: true
134             block-thresholds:
135               build-step-failure-threshold: 'never'
136               failure-threshold: 'never'
137               unstable-threshold: 'FAILURE'
138       # 1.dovetail only master, based on D release
139       # 2.here the stream means the SUT stream,
140       #   dovetail stream is defined in its own job
141       # 3.only proposed_tests testsuite here(refstack, ha, ipv6, bgpvpn)
142       # 4.not used for release criteria or compliance,
143       #   only to debug the dovetail tool bugs with arm pods
144       # 5.only run against scenario os-(nosdn|odl)-(nofeature-bgpvpn)-ha
145       - conditional-step:
146           condition-kind: regex-match
147           regex: os-(nosdn|odl)-(nofeature|bgpvpn)-ha
148           label: '{scenario}'
149           steps:
150             - trigger-builds:
151                 - project: 'dovetail-{installer}-{pod}-proposed_tests-master'
152                   current-parameters: false
153                   predefined-parameters:
154                     DEPLOY_SCENARIO={scenario}
155                   block: true
156                   same-node: true
157                   block-thresholds:
158                     build-step-failure-threshold: 'never'
159                     failure-threshold: 'never'
160                     unstable-threshold: 'FAILURE'
161
162 - job-template:
163     name: '{installer}-deploy-{pod}-daily-{stream}'
164
165     concurrent: true
166
167     properties:
168       - logrotate-default
169       - throttle:
170           enabled: true
171           max-total: 4
172           max-per-node: 1
173           option: 'project'
174       - build-blocker:
175           use-build-blocker: true
176           blocking-jobs:
177             - '{installer}-deploy-{pod}-daily-{stream}'
178             - '{installer}-deploy-generic-daily-.*'
179           block-level: 'NODE'
180
181     parameters:
182       - project-parameter:
183           project: '{project}'
184           branch: '{branch}'
185       - '{installer}-defaults':
186           gs-pathname: '{gs-pathname}'
187       - '{slave-label}-defaults':
188           installer: '{installer}'
189       - string:
190           name: DEPLOY_SCENARIO
191           default: 'os-odl-nofeature-ha'
192
193     scm:
194       - git-scm
195
196     wrappers:
197       - build-name:
198           name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
199
200     builders:
201       - shell:
202           !include-raw-escape: ../fuel/fuel-deploy.sh
203
204     publishers:
205       - email:
206           recipients: armband@enea.com
207       - email-jenkins-admins-on-failure
208
209 ########################
210 # trigger macros
211 ########################
212 # CI PODs
213 # ----------------------------------------------------------------
214 # Enea Armband CI Baremetal Triggers running against master branch
215 # ----------------------------------------------------------------
216 - trigger:
217     name: 'fuel-os-nosdn-nofeature-ha-armband-baremetal-master-trigger'
218     triggers:
219       - timed: '0 16 * * 2,4,6'
220 - trigger:
221     name: 'fuel-os-nosdn-nofeature-noha-armband-baremetal-master-trigger'
222     triggers:
223       - timed: ''
224 - trigger:
225     name: 'fuel-os-odl-nofeature-ha-armband-baremetal-master-trigger'
226     triggers:
227       - timed: '0 16 * * 1,3,5,7'
228 # ---------------------------------------------------------------------
229 # Enea Armband CI Baremetal Triggers running against euphrates branch
230 # ---------------------------------------------------------------------
231 - trigger:
232     name: 'fuel-os-nosdn-nofeature-ha-armband-baremetal-euphrates-trigger'
233     triggers:
234       - timed: '0 1 * * 2,4,6'
235 - trigger:
236     name: 'fuel-os-nosdn-nofeature-noha-armband-baremetal-euphrates-trigger'
237     triggers:
238       - timed: ''
239 - trigger:
240     name: 'fuel-os-odl-nofeature-ha-armband-baremetal-euphrates-trigger'
241     triggers:
242       - timed: '0 1 * * 1,3,5,7'
243 # --------------------------------------------------------------
244 # Enea Armband CI Virtual Triggers running against master branch
245 # --------------------------------------------------------------
246 - trigger:
247     name: 'fuel-os-nosdn-nofeature-ha-armband-virtual-master-trigger'
248     triggers:
249       - timed: ''
250 - trigger:
251     name: 'fuel-os-nosdn-nofeature-noha-armband-virtual-master-trigger'
252     triggers:
253       - timed: ''
254 - trigger:
255     name: 'fuel-os-odl-nofeature-ha-armband-virtual-master-trigger'
256     triggers:
257       - timed: ''
258 # -------------------------------------------------------------------
259 # Enea Armband CI Virtual Triggers running against euphrates branch
260 # -------------------------------------------------------------------
261 - trigger:
262     name: 'fuel-os-nosdn-nofeature-ha-armband-virtual-euphrates-trigger'
263     triggers:
264       - timed: ''
265 - trigger:
266     name: 'fuel-os-nosdn-nofeature-noha-armband-virtual-euphrates-trigger'
267     triggers:
268       - timed: ''
269 - trigger:
270     name: 'fuel-os-odl-nofeature-ha-armband-virtual-euphrates-trigger'
271     triggers:
272       - timed: ''