4 project-name: packaging
7 - 'packaging-build-rpm-{stream}'
8 - 'packaging-build-rpm-snap-{stream}'
9 - 'packaging-build-deb-{stream}'
10 - 'packaging-verify-full-rpm-master'
11 - 'packaging-verify-rpm-master'
12 - 'packaging-test-rpm-master'
13 - 'packaging-test-rpm-upgrade-master'
14 - 'packaging-test-deb-master'
19 project: 'integration/packaging'
27 # common parameters required for 'lf-infra-deploy-maven-file' builder
28 group-id: 'org.opendaylight.integration-packaging'
29 upload-files-dir: '$WORKSPACE/upload_files'
30 maven-repo-url: '$NEXUS_URL/content/repositories/$REPO_ID'
33 name: 'packaging-build-rpm-{stream}'
35 node: centos7-builder-2c-8g
37 project-type: freestyle
44 - opendaylight-infra-properties:
48 - opendaylight-infra-parameters:
49 os-cloud: '{os-cloud}'
52 refspec: 'refs/heads/{branch}'
53 artifacts: '{archive-artifacts}'
54 - lf-infra-maven-parameters:
55 mvn-opts: '{mvn-opts}'
56 mvn-params: '{mvn-params}'
57 mvn-version: '{mvn-version}'
58 staging-profile-id: ''
61 # yamllint disable-line rule:line-length
62 default: 'https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.7.0/karaf-0.7.0.tar.gz'
63 description: 'URL to ODL tarball artifact to repackage into RPM'
67 description: 'Name of person who defined RPM'
70 default: 'jenkins-donotreply@opendaylight.org'
71 description: 'Email of person who defined RPM'
74 - integration-gerrit-scm:
76 refspec: '$GERRIT_REFSPEC'
80 - opendaylight-infra-wrappers:
81 build-timeout: '{build-timeout}'
84 - shell: !include-raw: build-rpm.sh
85 - shell: !include-raw: test-rpm-deps.sh
87 properties-content: 'URL=/home/$USER/rpmbuild/RPMS/noarch/*.rpm'
88 - shell: !include-raw: install-rpm.sh
89 - shell: !include-raw: start-odl.sh
91 # Install expect to interact with Karaf shell
92 sudo yum install -y expect
93 # Install nmap to check status of ODL's SSH port
94 sudo yum install -y nmap
95 - shell: !include-raw: test-karaf.expect
96 - shell: !include-raw: stop-odl.sh
97 - shell: !include-raw: uninstall-rpm.sh
98 - lf-infra-deploy-maven-file:
99 global-settings-file: 'global-settings'
100 settings-file: 'packaging-settings'
101 mvn-version: '{mvn-version}'
102 repo-id: 'opendaylight-{stream}-epel-7-x86_64-devel'
103 group-id: '{group-id}'
104 upload-files-dir: '{upload-files-dir}'
105 maven-repo-url: '{maven-repo-url}'
112 name: 'packaging-build-rpm-snap-{stream}'
114 node: centos7-builder-2c-8g
116 project-type: freestyle
123 - opendaylight-infra-properties:
124 build-days-to-keep: 7
127 - opendaylight-infra-parameters:
128 os-cloud: '{os-cloud}'
131 refspec: 'refs/heads/{branch}'
132 artifacts: '{archive-artifacts}'
133 - lf-infra-maven-parameters:
134 mvn-opts: '{mvn-opts}'
135 mvn-params: '{mvn-params}'
136 mvn-version: '{mvn-version}'
137 staging-profile-id: ''
141 description: 'Name of person who defined RPM'
143 name: CHANGELOG_EMAIL
144 default: 'jenkins-donotreply@opendaylight.org'
145 description: 'Email of person who defined RPM'
148 - integration-gerrit-scm:
150 refspec: '$GERRIT_REFSPEC'
154 - opendaylight-infra-wrappers:
155 build-timeout: '{build-timeout}'
159 properties-content: 'STREAM={stream}'
160 - shell: !include-raw: build-rpm-snap.sh
161 - shell: !include-raw: test-rpm-deps.sh
162 - lf-infra-deploy-maven-file:
163 global-settings-file: 'global-settings'
164 settings-file: 'packaging-settings'
165 mvn-version: '{mvn-version}'
166 repo-id: 'opendaylight-{stream}-epel-7-x86_64-devel'
167 group-id: '{group-id}'
168 upload-files-dir: '{upload-files-dir}'
169 maven-repo-url: '{maven-repo-url}'
179 name: 'packaging-verify-rpm-master'
181 node: centos7-builder-2c-8g
183 project-type: freestyle
186 - opendaylight-infra-parameters:
187 os-cloud: '{os-cloud}'
190 refspec: 'refs/heads/{branch}'
191 artifacts: '{archive-artifacts}'
194 - integration-gerrit-scm:
196 refspec: '$GERRIT_REFSPEC'
200 - opendaylight-infra-wrappers:
201 build-timeout: '{build-timeout}'
204 # TODO: Install/test each RPM? Will require builder script changes.
205 # Test Nitrogen tarball
207 # yamllint disable-line rule:line-length
208 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.7.0/karaf-0.7.0.tar.gz'
209 - shell: !include-raw: build-rpm.sh
211 # Test Oxygen pre-release autorelease tarball
213 # yamllint disable-line rule:line-length
214 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/autorelease-2052/org/opendaylight/integration/karaf/0.8.0/karaf-0.8.0.tar.gz'
215 - shell: !include-raw: build-rpm.sh
217 # Test Oxygen multipatch zip (no parallel tarball available)
219 # yamllint disable-line rule:line-length
220 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.8.0-SNAPSHOT/karaf-0.8.0-20171128.175421-68.zip'
221 - shell: !include-raw: build-rpm.sh
223 # Test latest Oxygen snapshot
225 properties-content: 'STREAM=oxygen'
226 - shell: !include-raw: build-rpm-snap.sh
230 server-name: '{gerrit-server-name}'
232 - project-compare-type: ANT
233 project-pattern: '{project}'
235 - branch-compare-type: ANT
236 branch-pattern: '**/{branch}'
239 pattern: 'packages/**'
246 name: 'packaging-verify-full-rpm-master'
248 node: centos7-builder-2c-8g
250 project-type: freestyle
253 - opendaylight-infra-parameters:
254 os-cloud: '{os-cloud}'
257 refspec: 'refs/heads/{branch}'
258 artifacts: '{archive-artifacts}'
261 - integration-gerrit-scm:
263 refspec: '$GERRIT_REFSPEC'
267 - opendaylight-infra-wrappers:
268 build-timeout: '{build-timeout}'
271 # Install deps needed for all tests
273 # Install expect to interact with Karaf shell
274 sudo yum install -y expect
275 # Install nmap to check status of ODL's SSH port
276 sudo yum install -y nmap
278 # Each new build will rm and replace this dir, only need to inject once
280 properties-content: 'URL=/home/$USER/rpmbuild/RPMS/noarch/*.rpm'
282 # Test Carbon SR2 tarball
284 # yamllint disable-line rule:line-length
285 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/distribution-karaf/0.6.2-Carbon/distribution-karaf-0.6.2-Carbon.tar.gz'
286 - shell: !include-raw: build-rpm.sh
287 - shell: !include-raw: install-rpm.sh
288 - shell: !include-raw: start-odl.sh
289 - shell: !include-raw: test-karaf.expect
290 - shell: !include-raw: stop-odl.sh
291 - shell: !include-raw: uninstall-rpm.sh
293 # Remove old host key so future installs don't fail to SSH
294 rm /home/jenkins/.ssh/known_hosts
296 # Test Carbon multipatch zip (no parallel tarball available)
297 # NB: This will need to be updated as old builds expire
299 # yamllint disable-line rule:line-length
300 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/distribution-karaf/0.6.3-SNAPSHOT/distribution-karaf-0.6.3-20180115.181738-1.zip'
301 - shell: !include-raw: build-rpm.sh
302 - shell: !include-raw: install-rpm.sh
303 - shell: !include-raw: start-odl.sh
304 - shell: !include-raw: test-karaf.expect
305 - shell: !include-raw: stop-odl.sh
306 - shell: !include-raw: uninstall-rpm.sh
308 # Remove old host key so future installs don't fail to SSH
309 rm /home/jenkins/.ssh/known_hosts
311 # Test latest Carbon snapshot
313 properties-content: 'STREAM=carbon'
314 - shell: !include-raw: build-rpm-snap.sh
315 - shell: !include-raw: install-rpm.sh
316 - shell: !include-raw: start-odl.sh
317 - shell: !include-raw: test-karaf.expect
318 - shell: !include-raw: stop-odl.sh
319 - shell: !include-raw: uninstall-rpm.sh
321 # Remove old host key so future installs don't fail to SSH
322 rm /home/jenkins/.ssh/known_hosts
324 # Test Nitrogen tarball
326 # yamllint disable-line rule:line-length
327 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.7.0/karaf-0.7.0.tar.gz'
328 - shell: !include-raw: build-rpm.sh
329 - shell: !include-raw: install-rpm.sh
330 - shell: !include-raw: start-odl.sh
331 - shell: !include-raw: test-karaf.expect
332 - shell: !include-raw: stop-odl.sh
333 - shell: !include-raw: uninstall-rpm.sh
335 # Remove old host key so future installs don't fail to SSH
336 rm /home/jenkins/.ssh/known_hosts
338 # Test Nitrogen SR1 tarball
340 # yamllint disable-line rule:line-length
341 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/karaf/0.7.1/karaf-0.7.1.tar.gz'
342 - shell: !include-raw: build-rpm.sh
343 - shell: !include-raw: install-rpm.sh
344 - shell: !include-raw: start-odl.sh
345 - shell: !include-raw: test-karaf.expect
346 - shell: !include-raw: stop-odl.sh
347 - shell: !include-raw: uninstall-rpm.sh
349 # Remove old host key so future installs don't fail to SSH
350 rm /home/jenkins/.ssh/known_hosts
352 # Test Nitrogen multipatch zip (no parallel tarball available)
353 # NB: This will need to be updated as old builds expire
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.7.2-SNAPSHOT/karaf-0.7.2-20180115.183312-2.zip'
357 - shell: !include-raw: build-rpm.sh
358 - shell: !include-raw: install-rpm.sh
359 - shell: !include-raw: start-odl.sh
360 - shell: !include-raw: test-karaf.expect
361 - shell: !include-raw: stop-odl.sh
362 - shell: !include-raw: uninstall-rpm.sh
364 # Remove old host key so future installs don't fail to SSH
365 rm /home/jenkins/.ssh/known_hosts
367 # Test latest Nitrogen snapshot
369 properties-content: 'STREAM=nitrogen'
370 - shell: !include-raw: build-rpm-snap.sh
371 - shell: !include-raw: install-rpm.sh
372 - shell: !include-raw: start-odl.sh
373 - shell: !include-raw: test-karaf.expect
374 - shell: !include-raw: stop-odl.sh
375 - shell: !include-raw: uninstall-rpm.sh
377 # Remove old host key so future installs don't fail to SSH
378 rm /home/jenkins/.ssh/known_hosts
380 # Test Oxygen pre-release autorelease tarball
381 # NB: This will need to be updated as old builds expire
383 # yamllint disable-line rule:line-length
384 properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/autorelease-2052/org/opendaylight/integration/karaf/0.8.0/karaf-0.8.0.tar.gz'
385 - shell: !include-raw: build-rpm.sh
386 - shell: !include-raw: install-rpm.sh
387 - shell: !include-raw: start-odl.sh
388 - shell: !include-raw: test-karaf.expect
389 - shell: !include-raw: stop-odl.sh
390 - shell: !include-raw: uninstall-rpm.sh
392 # Remove old host key so future installs don't fail to SSH
393 rm /home/jenkins/.ssh/known_hosts
395 # Test Oxygen multipatch zip (no parallel tarball available)
396 # FIXME: Something is wrong with current Oxygen multipatch builds
397 # NB: This will need to be updated as old builds expire
399 # yamllint disable-line rule:line-length
400 # properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.8.0-SNAPSHOT/karaf-0.8.0-20180111.030942-90.zip'
401 # - shell: !include-raw: build-rpm.sh
402 # - shell: !include-raw: install-rpm.sh
403 # - shell: !include-raw: start-odl.sh
404 # - shell: !include-raw: test-karaf.expect
405 # - shell: !include-raw: stop-odl.sh
406 # - shell: !include-raw: uninstall-rpm.sh
408 # Remove old host key so future installs don't fail to SSH
409 # rm /home/jenkins/.ssh/known_hosts
411 # Test latest Oxygen snapshot
413 properties-content: 'STREAM=oxygen'
414 - shell: !include-raw: build-rpm-snap.sh
415 - shell: !include-raw: install-rpm.sh
416 - shell: !include-raw: start-odl.sh
417 - shell: !include-raw: test-karaf.expect
418 - shell: !include-raw: stop-odl.sh
419 - shell: !include-raw: uninstall-rpm.sh
421 # Remove old host key so future installs don't fail to SSH
422 rm /home/jenkins/.ssh/known_hosts
427 server-name: '{gerrit-server-name}'
429 - comment-added-contains-event:
430 comment-contains-value: 'verify-rpm-full'
432 - project-compare-type: ANT
433 project-pattern: '{project}'
435 - branch-compare-type: ANT
436 branch-pattern: '**/{branch}'
443 name: 'packaging-test-rpm-master'
445 node: centos7-builder-2c-8g
448 - opendaylight-infra-parameters:
449 os-cloud: '{os-cloud}'
452 refspec: 'refs/heads/{branch}'
453 artifacts: '{archive-artifacts}'
456 # yamllint disable-line rule:line-length
457 default: 'https://git.opendaylight.org/gerrit/gitweb?p=integration/packaging.git;a=blob_plain;f=packages/rpm/example_repo_configs/opendaylight-8-devel.repo'
458 description: 'Link to .repo or .rpm file'
461 - integration-gerrit-scm:
463 refspec: '$GERRIT_REFSPEC'
467 - opendaylight-infra-wrappers:
468 build-timeout: '{build-timeout}'
471 - shell: !include-raw: install-rpm.sh
472 - shell: !include-raw: start-odl.sh
474 # Install expect to interact with Karaf shell
475 sudo yum install -y expect
476 # Install nmap to check status of ODL's SSH port
477 sudo yum install -y nmap
478 - shell: !include-raw: test-karaf.expect
479 - shell: !include-raw: stop-odl.sh
480 - shell: !include-raw: uninstall-rpm.sh
483 # TODO: Remove the archive publisher
484 # small data should be stored on logs.opendaylight.org
485 # large data should be stored on nexus.opendaylight.org
495 name: 'packaging-test-rpm-upgrade-master'
497 node: centos7-builder-2c-8g
500 - opendaylight-infra-parameters:
501 os-cloud: '{os-cloud}'
504 refspec: 'refs/heads/{branch}'
505 artifacts: '{archive-artifacts}'
508 # yamllint disable-line rule:line-length
509 default: 'https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-7-release.repo'
510 description: 'Link to .repo or .rpm file'
513 # yamllint disable-line rule:line-length
514 default: 'https://raw.githubusercontent.com/opendaylight/integration-packaging/master/packages/rpm/example_repo_configs/opendaylight-7-devel.repo'
515 description: 'Link to .repo or .rpm file'
518 - integration-gerrit-scm:
520 refspec: '$GERRIT_REFSPEC'
524 - opendaylight-infra-wrappers:
525 build-timeout: '{build-timeout}'
528 - shell: !include-raw: install-rpm.sh
529 - shell: !include-raw: start-odl.sh
531 # Install expect to interact with Karaf shell
532 sudo yum install -y expect
533 # Install nmap to check status of ODL's SSH port
534 sudo yum install -y nmap
535 - shell: !include-raw: test-karaf.expect
536 - shell: !include-raw: stop-odl.sh
537 - shell: !include-raw: test-rpm-upgrade.sh
538 - shell: !include-raw: start-odl.sh
539 - shell: !include-raw: test-karaf.expect
540 - shell: !include-raw: stop-odl.sh
541 - shell: !include-raw: uninstall-rpm.sh
548 name: 'packaging-test-deb-master'
550 node: ubuntu1604-mininet-ovs-25-1c-4g
553 - opendaylight-infra-parameters:
554 os-cloud: '{os-cloud}'
557 refspec: 'refs/heads/{branch}'
558 artifacts: '{archive-artifacts}'
561 default: 'ppa:odl-team/carbon'
562 description: 'Link to .deb package or name of PPA repo'
565 - integration-gerrit-scm:
567 refspec: '$GERRIT_REFSPEC'
571 - opendaylight-infra-wrappers:
572 build-timeout: '{build-timeout}'
575 - shell: !include-raw: install-deb.sh
576 - shell: !include-raw: start-odl.sh
578 # Install expect to interact with Karaf shell
579 sudo apt-get install -y expect
580 # Install nmap to check status of ODL's SSH port
581 sudo apt-get install -y nmap
582 - shell: !include-raw: test-karaf.expect
583 - shell: !include-raw: stop-odl.sh
590 name: 'packaging-build-deb-{stream}'
592 node: ubuntu1604-mininet-ovs-25-1c-4g
594 project-type: freestyle
601 - opendaylight-infra-properties:
602 build-days-to-keep: 7
605 - opendaylight-infra-parameters:
606 os-cloud: '{os-cloud}'
609 refspec: 'refs/heads/{branch}'
610 artifacts: '{archive-artifacts}'
611 - lf-infra-maven-parameters:
612 mvn-opts: '{mvn-opts}'
613 mvn-params: '{mvn-params}'
614 mvn-version: '{mvn-version}'
615 staging-profile-id: ''
618 # FIXME: Update the default value to an active stream.
619 # yamllint disable-line rule:line-length
620 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'
621 description: 'URL to ODL tarball artifact to repackage into .deb'
625 description: 'Name of person who defined .deb'
627 name: CHANGELOG_EMAIL
628 default: 'jenkins-donotreply@opendaylight.org'
629 description: 'Email of person who defined .deb'
632 - integration-gerrit-scm:
634 refspec: '$GERRIT_REFSPEC'
638 - opendaylight-infra-wrappers:
639 build-timeout: '{build-timeout}'
642 - shell: !include-raw: build-deb.sh
643 - lf-infra-deploy-maven-file:
644 global-settings-file: 'global-settings'
645 settings-file: 'packaging-settings'
646 mvn-version: '{mvn-version}'
647 repo-id: 'opendaylight-{stream}-ubuntu-1604-x86_64-devel'
648 group-id: '{group-id}'
649 upload-files-dir: '{upload-files-dir}'
650 maven-repo-url: '{maven-repo-url}'