Stream must be broadcasted
[releng.git] / jjb / releng / releng-jobs.yaml
1 ---
2 - scm:
3     name: releng-scm
4     scm:
5       - git:
6           url: 'https://gerrit.opnfv.org/gerrit/releng'
7           refspec: '+refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/*'
8           submodule:
9             recursive: true
10           branches:
11             - '{ref}'
12
13 - trigger:
14     name: releng-patchset-created
15     triggers:
16       - gerrit:
17           trigger-on:
18             - patchset-created-event
19             - comment-added-contains-event:
20                 comment-contains-value: 'recheck'
21             - comment-added-contains-event:
22                 comment-contains-value: 'reverify'
23           projects:
24             - project-compare-type: 'ANT'
25               project-pattern: 'releng'
26               branches:
27                 - branch-compare-type: 'ANT'
28                   branch-pattern: 'master'
29
30 - trigger:
31     name: releng-patchset-merged
32     triggers:
33       - gerrit:
34           trigger-on:
35             - change-merged-event
36             - comment-added-contains-event:
37                 comment-contains-value: 'remerge'
38           projects:
39             - project-compare-type: 'ANT'
40               project-pattern: 'releng'
41               branches:
42                 - branch-compare-type: 'ANT'
43                   branch-pattern: 'master'
44
45 - builder:
46     name: releng-jjb-verify
47     builders:
48       - shell: |
49           sudo apt-get -o DPkg::Lock::Timeout=300 update && \
50           sudo DEBIAN_FRONTEND=noninteractive apt-get \
51             -o DPkg::Lock::Timeout=300 dist-upgrade -y
52           sudo DEBIAN_FRONTEND=noninteractive \
53           apt-get -o DPkg::Lock::Timeout=300 install jenkins-job-builder -y
54           jenkins-jobs test --recursive -o tmp jjb/
55           rm -rf tmp
56
57 - builder:
58     name: releng-jjb-merge
59     builders:
60       - shell: |
61           sudo apt-get -o DPkg::Lock::Timeout=300 update && \
62           sudo DEBIAN_FRONTEND=noninteractive apt-get \
63             -o DPkg::Lock::Timeout=300 dist-upgrade -y
64           sudo DEBIAN_FRONTEND=noninteractive \
65           apt-get -o DPkg::Lock::Timeout=300 install jenkins-job-builder -y
66           jenkins-jobs update --recursive --delete-old jjb/
67
68 - parameter:
69     name: releng-jjb-node
70     parameters:
71       - label:
72           name: node
73           default: '{node}'
74
75 - job-template:
76     name: releng-jjb-verify
77     triggers:
78       - releng-patchset-created
79     scm:
80       - releng-scm:
81           ref: $GERRIT_REFSPEC
82     parameters:
83       - releng-jjb-node:
84           node: opnfv-build
85     builders:
86       - releng-jjb-verify
87
88 - project:
89     name: releng-jjb-verify
90     jobs:
91       - releng-jjb-verify
92
93 - job-template:
94     name: releng-jjb-merge
95     triggers:
96       - releng-patchset-merged
97     scm:
98       - releng-scm:
99           ref: master
100     parameters:
101       - releng-jjb-node:
102           node: opnfv-build
103     builders:
104       - releng-jjb-merge
105
106 - project:
107     name: releng-jjb-merge
108     jobs:
109       - releng-jjb-merge
110
111 - scm:
112     name: opnfv-scm
113     scm:
114       - git:
115           url: 'https://gerrit.opnfv.org/gerrit/{project}'
116           refspec: '+refs/heads/*:refs/remotes/origin/* +refs/changes/*:refs/changes/*'
117           submodule:
118             recursive: true
119           branches:
120             - '{ref}'
121
122 - trigger:
123     name: releng-tox-patchset-created
124     triggers:
125       - gerrit:
126           trigger-on:
127             - patchset-created-event
128             - comment-added-contains-event:
129                 comment-contains-value: recheck
130             - comment-added-contains-event:
131                 comment-contains-value: reverify
132           server-name: gerrit.opnfv.org
133           projects:
134             - project-compare-type: 'REG_EXP'
135               project-pattern: '^(?!functest).*'
136               branches:
137                 - branch-compare-type: 'ANT'
138                   branch-pattern: master
139                 - branch-compare-type: 'ANT'
140                   branch-pattern: stable/nile
141                 - branch-compare-type: 'ANT'
142                   branch-pattern: stable/moselle
143
144 - builder:
145     name: releng-tox
146     builders:
147       - shell: |
148           [ -f tox.ini ] || exit 0
149           sudo apt-get -o DPkg::Lock::Timeout=300 update && \
150           sudo DEBIAN_FRONTEND=noninteractive apt-get \
151             -o DPkg::Lock::Timeout=300 dist-upgrade -y
152           sudo DEBIAN_FRONTEND=noninteractive \
153           apt-get -o DPkg::Lock::Timeout=300 install tox -y
154           tox --recreate
155
156 - parameter:
157     name: releng-tox-node
158     parameters:
159       - label:
160           name: node
161           default: '{node}'
162
163 - job-template:
164     name: releng-tox
165     triggers:
166       - releng-tox-patchset-created
167     scm:
168       - opnfv-scm:
169           ref: $GERRIT_REFSPEC
170           project: $GERRIT_PROJECT
171     parameters:
172       - releng-tox-node:
173           node: opnfv-build
174     builders:
175       - releng-tox
176
177 - project:
178     name: releng-tox
179     jobs:
180       - releng-tox
181
182 - project:
183     name: releng-release-jobs
184     stream:
185       - fraser
186       - gambia
187       - hunter
188       - iruya
189       - jerma
190       - kali
191       - leguer
192       - lakelse
193       - moselle
194       - v1.21
195       - v1.22
196       - v1.23
197       - v1.24
198       - v1.25
199       - xena
200       - wallaby
201       - yoga
202       - zed
203     jobs:
204       - 'releng-release-{stream}-verify'
205       - 'releng-release-{stream}-merge'
206
207 - parameter:
208     name: stream-parameter
209     parameters:
210       - string:
211           name: STREAM
212           default: '{stream}'
213
214 - job-template:
215     name: 'releng-release-{stream}-verify'
216     scm:
217       - releng-scm:
218           ref: $GERRIT_REFSPEC
219     parameters:
220       - releng-jjb-node:
221           node: opnfv-build
222       - stream-parameter:
223           stream: '{stream}'
224     triggers:
225       - gerrit:
226           server-name: 'gerrit.opnfv.org'
227           trigger-on:
228             - patchset-created-event:
229                 exclude-drafts: 'false'
230                 exclude-trivial-rebase: 'false'
231                 exclude-no-code-change: 'false'
232             - comment-added-contains-event:
233                 comment-contains-value: 'recheck'
234             - comment-added-contains-event:
235                 comment-contains-value: 'reverify'
236           projects:
237             - project-compare-type: 'ANT'
238               project-pattern: 'releng'
239               branches:
240                 - branch-compare-type: 'ANT'
241                   branch-pattern: '**/master'
242               file-paths:
243                 - compare-type: ANT
244                   pattern: 'releases/{stream}/**'
245                 - compare-type: ANT
246                   pattern: 'releases/schema.yaml'
247                 - compare-type: ANT
248                   pattern: 'releases/scripts/verify_schema.py'
249     builders:
250       - shell: |
251           sudo apt-get -o DPkg::Lock::Timeout=300 update && \
252           sudo DEBIAN_FRONTEND=noninteractive apt-get \
253             -o DPkg::Lock::Timeout=300 dist-upgrade -y
254           sudo DEBIAN_FRONTEND=noninteractive \
255           apt-get -o DPkg::Lock::Timeout=300 install python3-pygerrit2 \
256             python3-ruamel.yaml  -y
257       - shell: !include-raw-escape:
258           - branch-or-tag.sh
259
260 - job-template:
261     name: 'releng-release-{stream}-merge'
262     triggers:
263       - releng-patchset-merged
264     scm:
265       - releng-scm:
266           ref: master
267     parameters:
268       - releng-jjb-node:
269           node: opnfv-build
270       - stream-parameter:
271           stream: '{stream}'
272     triggers:
273       - gerrit:
274           trigger-on:
275             - change-merged-event
276             - comment-added-contains-event:
277                 comment-contains-value: 'remerge'
278           projects:
279             - project-compare-type: 'ANT'
280               project-pattern: 'releng'
281               branches:
282                 - branch-compare-type: 'ANT'
283                   branch-pattern: 'master'
284               file-paths:
285                 - compare-type: ANT
286                   pattern: 'releases/{stream}/**'
287     builders:
288       - shell: |
289           sudo apt-get -o DPkg::Lock::Timeout=300 update && \
290           sudo DEBIAN_FRONTEND=noninteractive apt-get \
291             -o DPkg::Lock::Timeout=300 dist-upgrade -y
292           sudo DEBIAN_FRONTEND=noninteractive \
293           apt-get -o DPkg::Lock::Timeout=300 install python3-pygerrit2 \
294             python3-ruamel.yaml  -y
295       - shell: !include-raw-escape:
296           - branch-or-tag.sh