Merge "Create Stable Branch Jobs for clover"
[releng.git] / jjb / auto / auto.yaml
1 ---
2 # jenkins job templates for Auto
3 - project:
4     name: 'auto-ci-jobs'
5     project: 'auto'
6
7     # -------------------------------
8     # BRANCH ANCHORS
9     # -------------------------------
10     stream:
11       - master:
12           branch: '{stream}'
13           gs-pathname: ''
14           disabled: false
15       - gambia:
16           branch: 'stable/{stream}'
17           gs-pathname: '/{stream}'
18           disabled: false
19       - fraser:
20           branch: 'stable/{stream}'
21           gs-pathname: '/{stream}'
22           disabled: false
23     # -------------------------------
24     # DEPLOY TYPE ANCHORS
25     # -------------------------------
26     baremetal: &baremetal
27       installer: 'fuel'
28       slave-label: 'auto-baremetal'
29     # -------------------------------
30     # POD, INSTALLER, AND BRANCH MAPPING
31     # -------------------------------
32     # CI POD's
33     # -------------------------------
34     pod:
35       - auto-baremetal:
36           <<: *baremetal
37     # -------------------------------
38     #       scenarios
39     # -------------------------------
40     scenario:
41       # HA scenarios
42       - 'os-nosdn-onap-ha':
43           auto-trigger-name: 'fuel-{scenario}-{pod}-{stream}-trigger'
44
45     jobs:
46       - 'fuel-{scenario}-{pod}-auto-daily-{stream}'
47       - 'fuel-deploy-{pod}-daily-{stream}'
48       - 'auto-daily-{stream}'
49       - 'auto-verify-{stream}'
50       - 'auto-merge-{stream}'
51
52 ########################
53 # job templates
54 ########################
55 - job-template:
56     name: 'fuel-{scenario}-{pod}-auto-daily-{stream}'
57
58     disabled: '{obj:disabled}'
59
60     concurrent: false
61
62     properties:
63       - logrotate-default
64       - throttle:
65           enabled: true
66           max-total: 4
67           max-per-node: 1
68           option: 'project'
69       - build-blocker:
70           use-build-blocker: true
71           blocking-jobs:
72             - 'fuel-os-.*?-{pod}-auto-daily-.*'
73           blocking-level: 'NODE'
74
75     wrappers:
76       - build-name:
77           name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
78
79     triggers:
80       - '{auto-trigger-name}'
81
82     parameters:
83       - project-parameter:
84           project: '{project}'
85           branch: '{branch}'
86       - '{installer}-defaults':
87           gs-pathname: '{gs-pathname}'
88       - '{slave-label}-defaults':
89           installer: '{installer}'
90       - string:
91           name: DEPLOY_SCENARIO
92           default: '{scenario}'
93
94     builders:
95       - trigger-builds:
96           - project: 'fuel-deploy-{pod}-daily-{stream}'
97             current-parameters: false
98             predefined-parameters: |
99               DEPLOY_SCENARIO=os-nosdn-nofeature-ha
100               PROJECT=armband
101             same-node: true
102             block: true
103
104 - job-template:
105     name: 'auto-daily-{stream}'
106
107     disabled: '{obj:disabled}'
108
109     properties:
110       - logrotate-default
111       - build-blocker:
112           use-build-blocker: true
113           blocking-jobs:
114             - 'auto-daily-.*'
115           blocking-level: 'NODE'
116
117     parameters:
118       - project-parameter:
119           project: '{project}'
120           branch: '{branch}'
121       - 'intel-pod18-defaults'
122
123     scm:
124       - git-scm
125
126     triggers:
127       - timed: '0 16 * * *'
128
129     builders:
130       - shell: |
131           pwd
132           ./ci/build-auto.sh daily
133
134 - job-template:
135     name: 'auto-verify-{stream}'
136
137     disabled: '{obj:disabled}'
138
139     project-type: freestyle
140
141     concurrent: true
142
143     properties:
144       - logrotate-default
145
146     parameters:
147       - project-parameter:
148           project: '{project}'
149           branch: '{branch}'
150       - 'opnfv-build-ubuntu-defaults'
151
152     scm:
153       - git-scm-gerrit
154
155     triggers:
156       - gerrit:
157           server-name: 'gerrit.opnfv.org'
158           trigger-on:
159             - patchset-created-event:
160                 exclude-drafts: 'false'
161                 exclude-trivial-rebase: 'false'
162                 exclude-no-code-change: 'false'
163             - draft-published-event
164             - comment-added-contains-event:
165                 comment-contains-value: 'recheck'
166             - comment-added-contains-event:
167                 comment-contains-value: 'reverify'
168           projects:
169             - project-compare-type: 'ANT'
170               project-pattern: '{project}'
171               branches:
172                 - branch-compare-type: 'ANT'
173                   branch-pattern: '**/{branch}'
174               forbidden-file-paths:
175                 - compare-type: ANT
176                   pattern: 'docs/**'
177
178     builders:
179       - shell: |
180           pwd
181           ./ci/build-auto.sh verify
182
183 - job-template:
184     name: 'auto-merge-{stream}'
185
186     disabled: '{obj:disabled}'
187
188     project-type: freestyle
189
190     concurrent: true
191
192     properties:
193       - logrotate-default
194
195     parameters:
196       - project-parameter:
197           project: '{project}'
198           branch: '{branch}'
199       - 'opnfv-build-ubuntu-defaults'
200
201     scm:
202       - git-scm
203
204     triggers:
205       - gerrit:
206           server-name: 'gerrit.opnfv.org'
207           trigger-on:
208             - change-merged-event
209             - comment-added-contains-event:
210                 comment-contains-value: 'remerge'
211           projects:
212             - project-compare-type: 'ANT'
213               project-pattern: '{project}'
214               branches:
215                 - branch-compare-type: 'ANT'
216                   branch-pattern: '**/{branch}'
217               forbidden-file-paths:
218                 - compare-type: ANT
219                   pattern: 'docs/**'
220
221     builders:
222       - shell: |
223           pwd
224           ./ci/build-auto.sh merge
225
226 ########################
227 # trigger macros
228 ########################
229 # CI PODs
230 # ----------------------------------------------------------------
231 # Auto CI Baremetal Triggers running against master branch
232 # ----------------------------------------------------------------
233 - trigger:
234     name: 'fuel-os-nosdn-onap-ha-auto-baremetal-master-trigger'
235     triggers:
236       - timed: ''
237 # ---------------------------------------------------------------------
238 # Auto CI Baremetal Triggers running against fraser branch
239 # ---------------------------------------------------------------------
240 - trigger:
241     name: 'fuel-os-nosdn-onap-ha-auto-baremetal-fraser-trigger'
242     triggers:
243       - timed: ''
244 # ---------------------------------------------------------------------
245 # Auto CI Baremetal Triggers running against gambia branch
246 # ---------------------------------------------------------------------
247 - trigger:
248     name: 'fuel-os-nosdn-onap-ha-auto-baremetal-gambia-trigger'
249     triggers:
250       - timed: ''