Merge "Add jenkins job to test deb"
[releng/builder.git] / jjb / packaging / packaging.yaml
1 ---
2 - project:
3     name: packaging
4     project-name: packaging
5
6     jobs:
7       - '{project-name}-verify-python-{stream}'
8       - 'packaging-build-rpm-{stream}'
9       - 'packaging-build-rpm-snap-{stream}'
10       - 'packaging-build-deb-{stream}'
11       - 'packaging-test-rpm-{stream}'
12       - 'packaging-test-deb-{stream}'
13       - 'packaging-test-puppet-{stream}'
14       - 'packaging-test-ansible-rpm-{stream}'
15       - 'packaging-test-ansible-deb-{stream}'
16
17     project: 'integration/packaging'
18
19     stream:
20       - master:
21           branch: 'master'
22
23 - job-template:
24     name: 'packaging-test-puppet-{stream}'
25
26     node: centos7-docker-2c-4g
27
28     project-type: freestyle
29
30     properties:
31       - opendaylight-infra-properties:
32           build-days-to-keep: 7
33
34     parameters:
35       - opendaylight-infra-parameters:
36           project: '{project}'
37           branch: '{branch}'
38           refspec: 'refs/heads/{branch}'
39           artifacts: '{archive-artifacts}'
40
41     scm:
42       - integration-gerrit-scm:
43           basedir: 'packaging'
44           refspec: '$GERRIT_REFSPEC'
45           branch: 'master'
46
47     wrappers:
48       - opendaylight-infra-wrappers:
49           build-timeout: '{build-timeout}'
50
51     builders:
52       - shell: !include-raw: include-raw-test-puppet.sh
53
54     triggers:
55       - timed: '@daily'
56
57 - job-template:
58     name: 'packaging-build-rpm-{stream}'
59
60     node: centos7-java-builder-2c-4g
61
62     project-type: freestyle
63
64     properties:
65       - opendaylight-infra-properties:
66           build-days-to-keep: 7
67
68     parameters:
69       - opendaylight-infra-parameters:
70           project: '{project}'
71           branch: '{branch}'
72           refspec: 'refs/heads/{branch}'
73           artifacts: '{archive-artifacts}'
74       - string:
75           name: DOWNLOAD_URL
76           # yamllint disable-line rule:line-length
77           default: 'https://nexus.opendaylight.org/content/repositories/public/org/opendaylight/integration/distribution-karaf/0.5.2-Boron/distribution-karaf-0.5.2-Boron.tar.gz'
78           description: 'URL to ODL tarball artifact to repackage into RPM'
79       - string:
80           name: CHANGELOG_DATE
81           default: 'Sun Aug 25 1991'
82           description: 'Date this RPM was defined'
83       - string:
84           name: CHANGELOG_NAME
85           default: 'Jenkins'
86           description: 'Name of person who defined RPM'
87       - string:
88           name: CHANGELOG_EMAIL
89           default: 'jenkins-donotreply@opendaylight.org'
90           description: 'Email of person who defined RPM'
91
92     scm:
93       - integration-gerrit-scm:
94           basedir: 'packaging'
95           refspec: '$GERRIT_REFSPEC'
96           branch: 'master'
97
98     wrappers:
99       - opendaylight-infra-wrappers:
100           build-timeout: '{build-timeout}'
101
102     builders:
103       - shell: !include-raw: include-raw-build-rpm.sh
104
105     publishers:
106       - archive-artifacts:
107           artifacts: '**/*.rpm'
108
109 - job-template:
110     name: 'packaging-build-rpm-snap-{stream}'
111
112     node: centos7-java-builder-2c-4g
113
114     project-type: freestyle
115
116     properties:
117       - opendaylight-infra-properties:
118           build-days-to-keep: 7
119
120     parameters:
121       - opendaylight-infra-parameters:
122           project: '{project}'
123           branch: '{branch}'
124           refspec: 'refs/heads/{branch}'
125           artifacts: '{archive-artifacts}'
126       - string:
127           name: VERSION_MAJOR
128           default: '6'
129           description: 'OpenDaylight major (element) version number to build'
130       - string:
131           name: VERSION_MINOR
132           default: '0'
133           description: 'OpenDaylight minor (SR) version number to build'
134       - string:
135           name: CHANGELOG_NAME
136           default: 'Jenkins'
137           description: 'Name of person who defined RPM'
138       - string:
139           name: CHANGELOG_EMAIL
140           default: 'jenkins-donotreply@opendaylight.org'
141           description: 'Email of person who defined RPM'
142
143     scm:
144       - integration-gerrit-scm:
145           basedir: 'packaging'
146           refspec: '$GERRIT_REFSPEC'
147           branch: 'master'
148
149     wrappers:
150       - opendaylight-infra-wrappers:
151           build-timeout: '{build-timeout}'
152
153     builders:
154       - shell: !include-raw: include-raw-build-rpm-snap.sh
155
156     publishers:
157       - archive-artifacts:
158           artifacts: '**/*.rpm'
159
160 - job-template:
161     name: 'packaging-test-rpm-{stream}'
162
163     node: centos7-java-builder-2c-4g
164
165     parameters:
166       - opendaylight-infra-parameters:
167           project: '{project}'
168           branch: '{branch}'
169           refspec: 'refs/heads/{branch}'
170           artifacts: '{archive-artifacts}'
171       - string:
172           name: URL
173           # yamllint disable-line rule:line-length
174           default: 'https://raw.githubusercontent.com/opendaylight/integration-packaging/master/rpm/example_repo_configs/opendaylight-52-release.repo'
175           description: 'Link to .repo or .rpm file'
176       - string:
177           name: REPO_FILE
178           default: '/etc/yum.repos.d/opendaylight-52-release.repo'
179           description: 'Name of the .repo file'
180
181     scm:
182       - integration-gerrit-scm:
183           basedir: 'packaging'
184           refspec: '$GERRIT_REFSPEC'
185           branch: 'master'
186
187     wrappers:
188       - opendaylight-infra-wrappers:
189           build-timeout: '{build-timeout}'
190
191     builders:
192       - shell: !include-raw: include-raw-test-rpm.sh
193       - shell: !include-raw: include-raw-test-karaf.expect
194
195     publishers:
196       - archive-artifacts:
197           artifacts: '**'
198
199 - job-template:
200     name: 'packaging-test-deb-{stream}'
201
202     node: ubuntu1604-mininet-ovs-25-2c-4g
203
204     parameters:
205       - opendaylight-infra-parameters:
206           project: '{project}'
207           branch: '{branch}'
208           refspec: 'refs/heads/{branch}'
209           artifacts: '{archive-artifacts}'
210       - string:
211           name: URL
212           # yamllint disable-line rule:line-length
213           default: 'http://download.opensuse.org/repositories/home:/akshitajha/xUbuntu_16.04/all/opendaylight_5.0.0-1_all.deb'
214           description: 'Link to .deb file'
215       - string:
216           name: REPO_FILE
217           default: 'ppa:odl-team/boron'
218           description: 'Name of the PPA repository'
219
220     scm:
221       - integration-gerrit-scm:
222           basedir: 'packaging'
223           refspec: '$GERRIT_REFSPEC'
224           branch: 'master'
225
226     wrappers:
227       - opendaylight-infra-wrappers:
228           build-timeout: '{build-timeout}'
229
230     builders:
231       - shell: !include-raw: include-raw-test-deb.sh
232       - shell: !include-raw: include-raw-test-karaf.expect
233
234     publishers:
235       - archive-artifacts:
236           artifacts: '**'
237
238 - job-template:
239     name: 'packaging-test-ansible-rpm-{stream}'
240
241     node: centos7-java-builder-2c-4g
242
243     project-type: freestyle
244
245     properties:
246       - opendaylight-infra-properties:
247           build-days-to-keep: 7
248
249     parameters:
250       - opendaylight-infra-parameters:
251           project: '{project}'
252           branch: '{branch}'
253           refspec: 'refs/heads/{branch}'
254           artifacts: '{archive-artifacts}'
255
256     scm:
257       - integration-gerrit-scm:
258           basedir: 'packaging'
259           refspec: '$GERRIT_REFSPEC'
260           branch: 'master'
261
262     wrappers:
263       - opendaylight-infra-wrappers:
264           build-timeout: '{build-timeout}'
265
266     builders:
267       - shell: !include-raw: include-raw-test-ansible-rpm.sh
268
269     triggers:
270       - timed: '@daily'
271
272
273 - job-template:
274     name: 'packaging-build-deb-{stream}'
275
276     node: ubuntu1404-mininet-2c-2g
277
278     project-type: freestyle
279
280     properties:
281       - opendaylight-infra-properties:
282           build-days-to-keep: 7
283
284     parameters:
285       - opendaylight-infra-parameters:
286           project: '{project}'
287           branch: '{branch}'
288           refspec: 'refs/heads/{branch}'
289           artifacts: '{archive-artifacts}'
290       - string:
291           name: VERSION_MAJOR
292           default: '5'
293           description: 'OpenDaylight major (element) version number to build'
294       - string:
295           name: VERSION_MINOR
296           default: '2'
297           description: 'OpenDaylight minor (SR) version number to build'
298       - string:
299           name: VERSION_PATCH
300           default: '0'
301           description: 'OpenDaylight patch version to build'
302       - string:
303           name: PKG_VERSION
304           default: '1'
305           description: 'Deb version for the given ODL major.minor.patch'
306       - string:
307           name: SYSD_COMMIT
308           default: 'ba1f409c1a46efd068b16ced6ddc8b32a412b03a'
309           description: 'Version of ODL systemd unitfile to download and package in ODL .deb'
310       - string:
311           name: CODENAME
312           default: 'Boron-SR2'
313           description: 'Elemental codename for the ODL release, including SR if applicable'
314       - string:
315           name: DOWNLOAD_URL
316           # yamllint disable-line rule:line-length
317           default: 'https://nexus.opendaylight.org/content/repositories/public/org/opendaylight/integration/distribution-karaf/0.5.2-Boron/distribution-karaf-0.5.2-Boron.tar.gz'
318           description: 'URL to ODL tarball artifact to repackage into .deb'
319       - string:
320           name: JAVA_VERSION
321           default: '8'
322           description: Java dependency for the ODL release
323       - string:
324           name: CHANGELOG_DATE
325           default: 'Mon, 1 Aug 2016'
326           description: 'Date this .deb was defined'
327       - string:
328           name: CHANGELOG_TIME
329           default: '17:48:42 +0530'
330           description: 'Time this .deb was defined'
331       - string:
332           name: CHANGELOG_NAME
333           default: 'Jenkins'
334           description: 'Name of person who defined .deb'
335       - string:
336           name: CHANGELOG_EMAIL
337           default: 'jenkins-donotreply@opendaylight.org'
338           description: 'Email of person who defined .deb'
339
340     scm:
341       - integration-gerrit-scm:
342           basedir: 'packaging'
343           refspec: '$GERRIT_REFSPEC'
344           branch: 'master'
345
346     wrappers:
347       - opendaylight-infra-wrappers:
348           build-timeout: '{build-timeout}'
349
350     builders:
351       - shell: !include-raw: include-raw-build-deb.sh
352
353     publishers:
354       - archive-artifacts:
355           artifacts: 'packaging/deb/opendaylight/*.deb'
356
357
358 - job-template:
359     name: 'packaging-test-ansible-deb-{stream}'
360
361     node: ubuntu1604-mininet-ovs-25-2c-4g
362
363     project-type: freestyle
364
365     properties:
366       - opendaylight-infra-properties:
367           build-days-to-keep: 7
368
369     parameters:
370       - opendaylight-infra-parameters:
371           project: '{project}'
372           branch: '{branch}'
373           refspec: 'refs/heads/{branch}'
374           artifacts: '{archive-artifacts}'
375
376     scm:
377       - integration-gerrit-scm:
378           basedir: 'packaging'
379           refspec: '$GERRIT_REFSPEC'
380           branch: 'master'
381
382     wrappers:
383       - opendaylight-infra-wrappers:
384           build-timeout: '{build-timeout}'
385
386     builders:
387       - shell: !include-raw: include-raw-test-ansible-deb.sh
388
389     triggers:
390       - timed: '@daily'