Disable packaging jobs for debs
[releng/builder.git] / jjb / packaging / packaging.yaml
1 ---
2 - project:
3     name: packaging
4     project-name: packaging
5
6     jobs:
7       - '{project-name}-rtd-jobs':
8           build-node: centos7-builder-2c-2g
9           doc-dir: .tox/docs/tmp/html
10           project-pattern: integration/packaging
11           rtd-build-url: https://readthedocs.org/api/v2/webhook/odl-integrationpackaging/32928/
12           rtd-token: 371d63c43ad99b0745bb7779e3488c5e255c1180
13       - 'packaging-build-rpm-{stream}'
14       - 'packaging-build-rpm-{distro}-snap-{stream}'
15       - 'packaging-build-deb-{stream}':
16           disable-job: true
17       - 'packaging-verify-full-rpm-master'
18       - 'packaging-verify-rpm-master'
19       - 'packaging-test-rpm-master'
20       - 'packaging-test-rpm-upgrade-master'
21       - 'packaging-test-deb-master':
22           disable-job: true
23       - gerrit-tox-verify:
24           branch: master
25           stream: master
26
27     project: 'integration/packaging'
28
29     stream:
30       - neon
31       - fluorine
32       - sodium
33
34     distro:
35       - opensuse-42
36       - epel-7
37     branch: 'master'
38
39     # common parameters required for 'lf-infra-deploy-maven-file' builder
40     group-id: 'org.opendaylight.integration-packaging'
41     upload-files-dir: '$WORKSPACE/upload_files'
42     maven-repo-url: '$NEXUS_URL/content/repositories/$REPO_ID'
43
44 - job-template:
45     name: 'packaging-build-rpm-{stream}'
46
47     disable-job: false
48
49     node: centos7-builder-2c-2g
50
51     project-type: freestyle
52     disabled: '{disable-job}'
53
54     mvn-opts: ''
55     mvn-params: ''
56     mvn-version: mvn33
57
58     properties:
59       - opendaylight-infra-properties:
60           build-days-to-keep: 7
61
62     parameters:
63       - opendaylight-infra-parameters:
64           os-cloud: '{os-cloud}'
65           project: '{project}'
66           branch: '{branch}'
67           refspec: 'refs/heads/{branch}'
68           artifacts: '{archive-artifacts}'
69       - lf-infra-maven-parameters:
70           mvn-opts: '{mvn-opts}'
71           mvn-params: '{mvn-params}'
72           mvn-version: '{mvn-version}'
73           staging-profile-id: ''
74       - string:
75           name: DOWNLOAD_URL
76           # yamllint disable-line rule:line-length
77           default: 'https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.8.4/karaf-0.8.4.tar.gz'
78           description: 'URL to ODL tarball artifact to repackage into RPM'
79       - string:
80           name: CHANGELOG_NAME
81           default: 'Jenkins'
82           description: 'Name of person who defined RPM'
83       - string:
84           name: CHANGELOG_EMAIL
85           default: 'jenkins-donotreply@opendaylight.org'
86           description: 'Email of person who defined RPM'
87       - string:
88           name: DEPLOY_TO_REPO
89           default: 'opendaylight-{stream}-epel-7-x86_64-devel'
90           description: 'Repository to deploy resulting package to'
91       - string:
92           name: PKG_VERSION_OVERRIDE
93           default: ''
94           description: 'Override autodetected package component of RPM version (maj.min.pat-pkg)'
95
96     scm:
97       - integration-gerrit-scm:
98           basedir: 'packaging'
99           refspec: '$GERRIT_REFSPEC'
100           branch: 'master'
101
102     wrappers:
103       - opendaylight-infra-wrappers:
104           build-timeout: '{build-timeout}'
105
106     builders:
107       - lf-infra-pre-build
108       - shell: !include-raw-escape: build-rpm.sh
109       - install-test-uninstall-rpm
110       - lf-infra-deploy-maven-file:
111           global-settings-file: 'global-settings'
112           settings-file: 'packaging-settings'
113           mvn-version: '{mvn-version}'
114           repo-id: '$DEPLOY_TO_REPO'
115           group-id: '{group-id}'
116           upload-files-dir: '{upload-files-dir}'
117           maven-repo-url: '{maven-repo-url}'
118
119     publishers:
120       - lf-infra-publish
121
122
123 - job-template:
124     name: 'packaging-build-rpm-{distro}-snap-{stream}'
125
126     node: centos7-docker-2c-2g
127     disable-job: false
128
129     project-type: freestyle
130     disabled: '{disable-job}'
131
132     mvn-opts: ''
133     mvn-params: ''
134     mvn-version: mvn33
135
136     properties:
137       - opendaylight-infra-properties:
138           build-days-to-keep: 7
139
140     parameters:
141       - opendaylight-infra-parameters:
142           os-cloud: '{os-cloud}'
143           project: '{project}'
144           branch: '{branch}'
145           refspec: 'refs/heads/{branch}'
146           artifacts: '{archive-artifacts}'
147       - lf-infra-maven-parameters:
148           mvn-opts: '{mvn-opts}'
149           mvn-params: '{mvn-params}'
150           mvn-version: '{mvn-version}'
151           staging-profile-id: ''
152       - string:
153           name: CHANGELOG_NAME
154           default: 'Jenkins'
155           description: 'Name of person who defined RPM'
156       - string:
157           name: CHANGELOG_EMAIL
158           default: 'jenkins-donotreply@opendaylight.org'
159           description: 'Email of person who defined RPM'
160
161     scm:
162       - integration-gerrit-scm:
163           basedir: 'packaging'
164           refspec: '$GERRIT_REFSPEC'
165           branch: 'master'
166
167     wrappers:
168       - opendaylight-infra-wrappers:
169           build-timeout: '{build-timeout}'
170
171     builders:
172       - lf-infra-pre-build
173       - inject:
174           properties-content: |
175               STREAM={stream}
176               DISTRO={distro}
177       - shell: !include-raw: build-rpm-snap-docker.sh
178       - shell: !include-raw: test-rpm-docker.sh
179       - lf-infra-deploy-maven-file:
180           global-settings-file: 'global-settings'
181           settings-file: 'packaging-settings'
182           mvn-version: '{mvn-version}'
183           repo-id: 'opendaylight-{stream}-{distro}-x86_64-devel'
184           group-id: '{group-id}'
185           upload-files-dir: '{upload-files-dir}'
186           maven-repo-url: '{maven-repo-url}'
187
188     triggers:
189       - timed: '@daily'
190
191     publishers:
192       - lf-infra-publish
193
194
195 - job-template:
196     name: 'packaging-verify-rpm-master'
197
198     node: centos7-builder-2c-2g
199     disable-job: false
200
201     project-type: freestyle
202     disabled: '{disable-job}'
203
204     parameters:
205       - opendaylight-infra-parameters:
206           os-cloud: '{os-cloud}'
207           project: '{project}'
208           branch: '{branch}'
209           refspec: 'refs/heads/{branch}'
210           artifacts: '{archive-artifacts}'
211
212     scm:
213       - integration-gerrit-scm:
214           basedir: 'packaging'
215           refspec: '$GERRIT_REFSPEC'
216           branch: 'master'
217
218     wrappers:
219       - opendaylight-infra-wrappers:
220           build-timeout: '{build-timeout}'
221
222     builders:
223       # Test Fluorine SR2 release tarball
224       - inject:
225           # yamllint disable-line rule:line-length
226           properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.9.2/karaf-0.9.2.tar.gz'
227       - shell: !include-raw-escape: build-rpm.sh
228       - install-test-uninstall-rpm
229
230       # Test Neon SR1 ('Managed Release Common Distro') release tarball
231       - inject:
232           # yamllint disable-line rule:line-length
233           properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/public/org/opendaylight/integration/opendaylight/0.10.1/opendaylight-0.10.1.tar.gz'
234       - shell: !include-raw-escape: build-rpm.sh
235       - install-test-uninstall-rpm
236
237       # Test latest Neon snapshot
238       - inject:
239           properties-content: 'STREAM=neon'
240       - shell: !include-raw: build-rpm-snap.sh
241       - install-test-uninstall-rpm
242
243       # Test latest Sodium snapshot
244       - inject:
245           properties-content: 'STREAM=sodium'
246       - shell: !include-raw: build-rpm-snap.sh
247       - install-test-uninstall-rpm
248
249     triggers:
250       - timed: '@weekly'
251       - gerrit-trigger-patch-submitted:
252           gerrit-server-name: '{gerrit-server-name}'
253           project: '{project}'
254           branch: '{branch}'
255           files: 'packages/**'
256           forbidden-files: ''
257
258     publishers:
259       - lf-infra-publish
260
261
262 - job-template:
263     name: 'packaging-verify-full-rpm-master'
264
265     node: centos7-builder-2c-2g
266     disable-job: false
267
268     project-type: freestyle
269     disabled: '{disable-job}'
270
271     parameters:
272       - opendaylight-infra-parameters:
273           os-cloud: '{os-cloud}'
274           project: '{project}'
275           branch: '{branch}'
276           refspec: 'refs/heads/{branch}'
277           artifacts: '{archive-artifacts}'
278
279     scm:
280       - integration-gerrit-scm:
281           basedir: 'packaging'
282           refspec: '$GERRIT_REFSPEC'
283           branch: 'master'
284
285     wrappers:
286       - opendaylight-infra-wrappers:
287           build-timeout: '{build-timeout}'
288
289     builders:
290       # Test Fluorine ('Managed Release Common Distro') release tarball
291       - inject:
292           # yamllint disable-line rule:line-length
293           properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/public/org/opendaylight/integration/opendaylight/0.9.0/opendaylight-0.9.0.tar.gz'
294       - shell: !include-raw-escape: build-rpm.sh
295       - install-test-uninstall-rpm
296
297       # Test Fluorine SR1 release tarball
298       - inject:
299           # yamllint disable-line rule:line-length
300           properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.9.1/karaf-0.9.1.tar.gz'
301       - shell: !include-raw-escape: build-rpm.sh
302       - install-test-uninstall-rpm
303
304       # Test Fluorine SR2 release tarball
305       - inject:
306           # yamllint disable-line rule:line-length
307           properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.9.2/karaf-0.9.2.tar.gz'
308       - shell: !include-raw-escape: build-rpm.sh
309       - install-test-uninstall-rpm
310
311       # Test Fluorine pre-release autorelease tarball
312       # NB: This will need to be updated as old builds expire
313       # NB: Commented out to reduce maintenance
314       # - inject:
315       # yamllint disable-line rule:line-length
316       #     properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/autorelease-2621/org/opendaylight/integration/karaf/0.9.2/karaf-0.9.2.tar.gz'
317       # - shell: !include-raw-escape: build-rpm.sh
318       # - install-test-uninstall-rpm
319
320       # Test Fluorine multipatch zip (no parallel tarball available)
321       # NB: This will need to be updated as old builds expire
322       # NB: Commented out to reduce maintenance
323       # - inject:
324       # yamllint disable-line rule:line-length
325       #     properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.9.2-SNAPSHOT/karaf-0.9.2-20181222.162905-8.zip'
326       # - shell: !include-raw-escape: build-rpm.sh
327       # - install-test-uninstall-rpm
328
329       # Test latest Fluorine snapshot
330       - inject:
331           properties-content: 'STREAM=fluorine'
332       - shell: !include-raw: build-rpm-snap.sh
333       - install-test-uninstall-rpm
334
335       # Test Neon SR1 release tarball
336       - inject:
337           # yamllint disable-line rule:line-length
338           properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.10.1/karaf-0.10.1.tar.gz'
339       - shell: !include-raw-escape: build-rpm.sh
340       - install-test-uninstall-rpm
341
342       # Test Neon pre-release autorelease tarball
343       # NB: This will need to be updated as old builds expire
344       # NB: Commented out to reduce maintenance
345       # - inject:
346       # yamllint disable-line rule:line-length
347       #     properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/autorelease-2620/org/opendaylight/integration/karaf/0.10.0/karaf-0.10.0.tar.g'
348       # - shell: !include-raw-escape: build-rpm.sh
349       # - install-test-uninstall-rpm
350
351       # Test Neon multipatch zip (no parallel tarball available)
352       # NB: This will need to be updated as old builds expire
353       # NB: Commented out to reduce maintenance
354       # - inject:
355       # yamllint disable-line rule:line-length
356       #     properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.10.0-SNAPSHOT/karaf-0.10.0-20190103.173010-50.zip'
357       # - shell: !include-raw-escape: build-rpm.sh
358       # - install-test-uninstall-rpm
359
360       # Test latest Neon snapshot
361       - inject:
362           properties-content: 'STREAM=neon'
363       - shell: !include-raw: build-rpm-snap.sh
364       - install-test-uninstall-rpm
365
366       # Test latest Sodium snapshot
367       - inject:
368           properties-content: 'STREAM=sodium'
369       - shell: !include-raw: build-rpm-snap.sh
370       - install-test-uninstall-rpm
371
372     triggers:
373       - timed: '@weekly'
374       - gerrit:
375           server-name: '{gerrit-server-name}'
376           trigger-on:
377             - comment-added-contains-event:
378                 comment-contains-value: 'verify-rpm-full'
379           projects:
380             - project-compare-type: ANT
381               project-pattern: '{project}'
382               branches:
383                 - branch-compare-type: ANT
384                   branch-pattern: '**/{branch}'
385
386     publishers:
387       - lf-infra-publish
388
389
390 - job-template:
391     name: 'packaging-test-rpm-master'
392
393     node: centos7-builder-2c-2g
394     disable-job: false
395
396     disabled: '{disable-job}'
397
398     parameters:
399       - opendaylight-infra-parameters:
400           os-cloud: '{os-cloud}'
401           project: '{project}'
402           branch: '{branch}'
403           refspec: 'refs/heads/{branch}'
404           artifacts: '{archive-artifacts}'
405       - string:
406           name: URL
407           # yamllint disable-line rule:line-length
408           default: 'https://git.opendaylight.org/gerrit/gitweb?p=integration/packaging.git;a=blob_plain;f=packages/rpm/example_repo_configs/opendaylight-9-devel.repo'
409           description: 'Link to .repo or .rpm file'
410
411     scm:
412       - integration-gerrit-scm:
413           basedir: 'packaging'
414           refspec: '$GERRIT_REFSPEC'
415           branch: 'master'
416
417     wrappers:
418       - opendaylight-infra-wrappers:
419           build-timeout: '{build-timeout}'
420
421     builders:
422       - shell: |
423           # Install expect to interact with Karaf shell
424           # Install nmap to check status of ODL's SSH port
425           sudo yum install -y expect nmap
426       - shell: !include-raw-escape: install-rpm.sh
427       - shell: !include-raw: start-odl.sh
428       - shell: !include-raw-escape: test-ports-nofeature.sh
429       - shell: !include-raw: test-karaf-oxygensafe.expect
430       # Disable this test until ODLPARENT-139 is fixed
431       # - shell: !include-raw-escape: test-rest-ok.sh
432       - shell: !include-raw: stop-odl.sh
433       - shell: !include-raw: uninstall-rpm.sh
434
435     triggers:
436       - timed: '@monthly'
437
438     publishers:
439       # TODO: Remove the archive publisher
440       #       small data should be stored on logs.opendaylight.org
441       #       large data should be stored on nexus.opendaylight.org
442       - archive:
443           artifacts: '**'
444           allow-empty: true
445           fingerprint: true
446           latest-only: true
447       - lf-infra-publish
448
449
450 - job-template:
451     name: 'packaging-test-rpm-upgrade-master'
452
453     disable-job: false
454
455     node: centos7-builder-2c-2g
456     disabled: '{disable-job}'
457
458     parameters:
459       - opendaylight-infra-parameters:
460           os-cloud: '{os-cloud}'
461           project: '{project}'
462           branch: '{branch}'
463           refspec: 'refs/heads/{branch}'
464           artifacts: '{archive-artifacts}'
465
466     scm:
467       - integration-gerrit-scm:
468           basedir: 'packaging'
469           refspec: '$GERRIT_REFSPEC'
470           branch: 'master'
471
472     wrappers:
473       - opendaylight-infra-wrappers:
474           build-timeout: '{build-timeout}'
475
476     builders:
477       # Tests (current and future):
478       #   * Install latest release, stop/uninstall, install latest CD
479       #   * Upgrade from latest release latest CD
480       #   * TODO: Upgrade from latest release to proposed packaging/** logic
481       #   * TODO: Upgrade from CD to proposed packaging/** logic
482       #   * TODO: Upgrade from proposed packaging/** logic (older ODL) to
483       #     proposed packaging logic (latest ODL)
484
485       # Test 1: Install latest release, stop/uninstall, install latest CD
486       - inject:
487           # yamllint disable-line rule:line-length
488           properties-content: 'URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-90-release.repo'
489       - install-start-test-stop-uninstall-rpm
490       - inject:
491           # yamllint disable-line rule:line-length
492           properties-content: 'URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-9-devel.repo'
493       - install-start-test-stop-uninstall-rpm
494
495       # Test 2: Install latest release, stop, upgrade to latest CD
496       - inject:
497           # yamllint disable-line rule:line-length
498           properties-content: 'URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-90-release.repo'
499       - install-start-test-stop-rpm
500       - inject:
501           # yamllint disable-line rule:line-length
502           properties-content: 'REPO_CFG_FILE_URL=https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-9-devel.repo'
503       - installrepcfg-upgrade-start-test-stop-rpm
504
505     triggers:
506       - timed: '@weekly'
507       - gerrit-trigger-patch-submitted:
508           gerrit-server-name: '{gerrit-server-name}'
509           project: '{project}'
510           branch: '{branch}'
511           files: 'packages/**'
512           forbidden-files: ''
513
514     publishers:
515       - lf-infra-publish
516
517
518 - job-template:
519     name: 'packaging-test-deb-master'
520
521     node: ubuntu1604-mininet-ovs-25-1c-4g
522     disable-job: false
523
524     disabled: '{disable-job}'
525
526     parameters:
527       - opendaylight-infra-parameters:
528           os-cloud: '{os-cloud}'
529           project: '{project}'
530           branch: '{branch}'
531           refspec: 'refs/heads/{branch}'
532           artifacts: '{archive-artifacts}'
533       - string:
534           name: PACKAGE
535           default: 'ppa:odl-team/oxygen'
536           description: 'Link to .deb package or name of PPA repo'
537
538     scm:
539       - integration-gerrit-scm:
540           basedir: 'packaging'
541           refspec: '$GERRIT_REFSPEC'
542           branch: 'master'
543
544     wrappers:
545       - opendaylight-infra-wrappers:
546           build-timeout: '{build-timeout}'
547
548     builders:
549       - shell: !include-raw-escape: install-deb.sh
550       - shell: !include-raw: start-odl.sh
551       - shell: !include-raw-escape: test-ports-nofeature.sh
552       - shell: |
553           # Install expect to interact with Karaf shell
554           # Install nmap to check status of ODL's SSH port
555           sudo apt-get install -y expect nmap
556       - shell: !include-raw: test-karaf-oxygensafe.expect
557       # Disable this test until ODLPARENT-139 is fixed
558       # - shell: !include-raw-escape: test-rest-ok.sh
559       - shell: !include-raw: stop-odl.sh
560       - shell: !include-raw-escape: uninstall-deb.sh
561
562     triggers:
563       - timed: '@monthly'
564
565     publishers:
566       - lf-infra-publish
567
568
569 - job-template:
570     name: 'packaging-build-deb-{stream}'
571
572     node: ubuntu1604-mininet-ovs-25-1c-4g
573     disable-job: false
574
575     project-type: freestyle
576     disabled: '{disable-job}'
577
578     mvn-opts: ''
579     mvn-params: ''
580     mvn-version: mvn33
581
582     properties:
583       - opendaylight-infra-properties:
584           build-days-to-keep: 7
585
586     parameters:
587       - opendaylight-infra-parameters:
588           os-cloud: '{os-cloud}'
589           project: '{project}'
590           branch: '{branch}'
591           refspec: 'refs/heads/{branch}'
592           artifacts: '{archive-artifacts}'
593       - lf-infra-maven-parameters:
594           mvn-opts: '{mvn-opts}'
595           mvn-params: '{mvn-params}'
596           mvn-version: '{mvn-version}'
597           staging-profile-id: ''
598       - string:
599           name: DOWNLOAD_URL
600           # FIXME: Update the default value to an active stream.
601           # yamllint disable-line rule:line-length
602           default: 'https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/distribution-karaf/0.5.3-Boron-SR3/distribution-karaf-0.5.3-Boron-SR3.tar.gz'
603           description: 'URL to ODL tarball artifact to repackage into .deb'
604       - string:
605           name: CHANGELOG_NAME
606           default: 'Jenkins'
607           description: 'Name of person who defined .deb'
608       - string:
609           name: CHANGELOG_EMAIL
610           default: 'jenkins-donotreply@opendaylight.org'
611           description: 'Email of person who defined .deb'
612       - string:
613           name: PKG_VERSION_OVERRIDE
614           default: ''
615           description: 'Override autodetected package component of RPM version (maj.min.pat-pkg)'
616
617     scm:
618       - integration-gerrit-scm:
619           basedir: 'packaging'
620           refspec: '$GERRIT_REFSPEC'
621           branch: 'master'
622
623     wrappers:
624       - opendaylight-infra-wrappers:
625           build-timeout: '{build-timeout}'
626
627     builders:
628       - lf-infra-pre-build
629       - shell: !include-raw: build-deb.sh
630       - install-test-uninstall-deb
631       - lf-infra-deploy-maven-file:
632           global-settings-file: 'global-settings'
633           settings-file: 'packaging-settings'
634           mvn-version: '{mvn-version}'
635           repo-id: 'opendaylight-{stream}-ubuntu-1604-x86_64-devel'
636           group-id: '{group-id}'
637           upload-files-dir: '{upload-files-dir}'
638           maven-repo-url: '{maven-repo-url}'
639
640     triggers:
641       - timed: '@monthly'
642
643     publishers:
644       - lf-infra-publish
645
646 - project:
647     name: packaging-view
648     views:
649       - project-view
650     project-name: packaging