3 name: '{project-name}-distribution-check-{stream}'
13 # Unless block_on_csit is true, the failure-threshold will be ignored. For project jobs that
14 # want to fail distribution check on csit jobs, they will only need a list of jobs to run
15 # plus the change of block_on_csit to true, and this failure-threshold: 'UNSTABLE' will take
17 failure-threshold: 'UNSTABLE'
23 # Operation: This job template builds a patch, creates a distribution containing
24 # the patch (making sure dependencies are specified),
25 # and performs the distribution deploy test.
28 project-type: freestyle
29 node: 'centos7-builder-8c-8g'
34 - opendaylight-infra-properties:
35 build-days-to-keep: '{build-days-to-keep}'
38 - opendaylight-infra-parameters:
39 os-cloud: '{os-cloud}'
42 refspec: 'refs/heads/{branch}'
43 artifacts: '{archive-artifacts}'
44 - integration-distribution-stream:
46 - integration-distribution-git-url:
48 - distribution-karaf-version:
49 karaf-version: '{karaf-version}'
51 maven-version: '{mvn-version}'
54 - integration-gerrit-scm:
55 basedir: '$GERRIT_PROJECT'
56 refspec: '$GERRIT_REFSPEC'
58 - integration-distribution-scm:
59 branch: '{distribution_branch}'
62 - opendaylight-infra-wrappers:
63 # Distro-check jobs typically run within 10 - 30 minutes
64 # with 45 minutes being the occassional edge case.
65 # enforce a 60 minute limit to ensure stuck jobs get
67 # Double that as Karaf 3+4 may take longer.
71 - gerrit-trigger-patch-submitted:
72 gerrit-server-name: '{gerrit-server-name}'
79 - distribution-check-wipe
81 properties-file: 'allowed_projects.txt'
82 - distribution-check-build-project:
83 pom: '$GERRIT_PROJECT/pom.xml'
84 mvn-opts: '{opendaylight-infra-mvn-opts}'
85 mvn-version: '{mvn-version}'
86 # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT.
87 - distribution-check-verify-groupid:
88 gerrit-project: '$GERRIT_PROJECT'
89 - distribution-check-download-deps:
90 dist-pom: 'distribution/pom.xml'
91 mvn-opts: '{opendaylight-infra-mvn-opts}'
92 mvn-version: '{mvn-version}'
93 # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT.
94 - distribution-check-delete-snapshots
95 - distribution-check-configure-remotes
96 - distribution-check-repeat-project-build:
97 pom: '$GERRIT_PROJECT/pom.xml'
98 mvn-opts: '{opendaylight-infra-mvn-opts}'
99 mvn-version: '{mvn-version}'
100 # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT.
101 - distribution-check-repeat-distro-build:
102 dist-pom: 'distribution/pom.xml'
103 mvn-opts: '{opendaylight-infra-mvn-opts}'
104 mvn-version: '{mvn-version}'
105 # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT.
106 - integration-set-variables
107 - distribution-check-warn-9191
108 - distribution-check-warn-9192
109 - integration-upload-distribution:
110 dist-pom: distribution/pom.xml
111 - distribution-check-bootup
114 - project: '{csit-gate-list}'
115 block: '{obj:block_on_csit}'
117 failure-threshold: '{failure-threshold}'
118 predefined-parameters: |
119 BUNDLE_URL=$BUNDLE_URL
120 KARAF_VERSION=$KARAF_VERSION
123 - email-notification:
124 email-recipients: '{email-recipients}'
125 email-prefix: '[{project-name}]'
126 - integration-csit-archive-build
130 name: 'distribution-verify-{type}-{stream}'
132 project-type: freestyle
133 node: centos7-builder-8c-8g
135 jdk: '{java-version}'
138 - opendaylight-infra-properties:
139 build-days-to-keep: '{build-days-to-keep}'
142 - opendaylight-infra-parameters:
143 os-cloud: '{os-cloud}'
146 refspec: 'refs/heads/{branch}'
147 artifacts: '{archive-artifacts}'
150 - gerrit-trigger-scm:
151 refspec: '$GERRIT_REFSPEC'
152 choosing-strategy: 'gerrit'
155 - opendaylight-infra-wrappers:
156 build-timeout: '{build-timeout}'
159 - gerrit-trigger-patch-submitted:
160 gerrit-server-name: '{gerrit-server-name}'
164 forbidden-files: '{forbidden-files}'
167 - wipe-org-opendaylight-repo
168 - lf-provide-maven-settings:
169 global-settings-file: 'global-settings'
170 settings-file: 'integration-settings'
175 clean install dependency:tree -DoutputFile=dependency_tree.txt
178 {opendaylight-infra-mvn-opts}
180 # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT.
182 - '-Xmx1024m -XX:MaxPermSize=256m'
183 settings: integration-settings
185 global-settings: global-settings
186 global-settings-type: cfp
192 - email-notification:
193 email-recipients: '{email-recipients}'
194 email-prefix: '[{project-name}]'
197 name: 'distribution-merge-{type}-{stream}'
199 # Need to keep jobs that deploy to Nexus at end of build as Maven
200 # projects. Maybe reconsider this once upstream moves deploy to a
201 # separate lifecycle:
202 # https://issues.apache.org/jira/browse/MNG-5666
205 node: 'centos7-builder-8c-8g'
206 jdk: '{java-version}'
209 - opendaylight-infra-properties:
210 build-days-to-keep: '{build-days-to-keep}'
213 - opendaylight-infra-parameters:
214 os-cloud: '{os-cloud}'
217 refspec: 'refs/heads/{branch}'
218 artifacts: '{archive-artifacts}'
219 - distribution-karaf-version:
220 karaf-version: '{karaf-version}'
223 - gerrit-trigger-scm:
225 choosing-strategy: 'default'
228 - opendaylight-infra-wrappers:
229 build-timeout: '{build-timeout}'
232 - gerrit-trigger-patch-merged:
233 gerrit-server-name: '{gerrit-server-name}'
237 forbidden-files: '{forbidden-files}'
239 jobs: '{dependencies}'
242 - wipe-org-opendaylight-repo
243 - lf-jacoco-nojava-workaround
244 - lf-provide-maven-settings:
245 global-settings-file: 'global-settings'
246 settings-file: 'integration-settings'
247 - integration-set-variables
248 - distribute-build-url:
249 path: '$KARAF_ARTIFACT/src/main/assembly'
255 clean install dependency:tree -DoutputFile=dependency_tree.txt -V -B
256 -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
258 -Djenkins -Dmerge -Dstream={stream}
260 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
261 settings: integration-settings
263 global-settings: global-settings
264 global-settings-type: cfp
267 - integration-compare-distributions
268 # TODO: the output of the above command is not *friendly* for the reader because the most important info
269 # is listed last. This is fine/best for command line output, but for keeping in a file it would be better
270 # to put the summary at the beginning of the file. Some bash magic can be done here to make that happen.
279 deploy-unstable: false
282 - email-notification:
283 email-recipients: '{email-recipients}'
284 email-prefix: '[{project-name}]'
287 name: 'distribution-check-{type}-{stream}'
289 ######################
290 # Default parameters #
291 ######################
295 #####################
296 # Job Configuration #
297 #####################
299 # Like a {project}-distribution-check, but few steps less as there is no upstream project involved.
302 project-type: freestyle
303 node: 'centos7-builder-8c-8g'
305 jdk: '{java-version}'
308 - opendaylight-infra-properties:
309 build-days-to-keep: '{build-days-to-keep}'
312 - opendaylight-infra-parameters:
313 os-cloud: '{os-cloud}'
316 refspec: 'refs/heads/{branch}'
317 artifacts: '{archive-artifacts}'
318 - integration-distribution-stream:
320 - distribution-karaf-version:
321 karaf-version: '{karaf-version}'
326 - integration-gerrit-scm:
327 basedir: 'distribution'
328 refspec: '$GERRIT_REFSPEC'
332 - opendaylight-infra-wrappers:
333 # Distro-check jobs typically run within 10 - 30 minutes
334 # with 45 minutes being the occassional edge case.
335 # enforce a 60 minute limit to ensure stuck jobs get
337 # Double that as Karaf 3+4 may take longer.
341 - gerrit-trigger-patch-submitted:
342 gerrit-server-name: '{gerrit-server-name}'
346 forbidden-files: '{forbidden-files}'
349 - distribution-check-wipe
351 properties-file: 'allowed_projects.txt'
352 - distribution-check-build-project:
353 pom: 'distribution/pom.xml'
355 {opendaylight-infra-mvn-opts}
357 mvn-version: '{mvn-version}'
358 # '{opendaylight-infra-parallel-mvn-opts}' is bad when there are multiple big features in SFT.
359 - distribution-check-verify-groupid:
360 gerrit-project: 'integration'
361 - distribution-check-delete-snapshots
362 - distribution-check-configure-remotes
363 - distribution-check-repeat-project-build:
364 pom: 'distribution/pom.xml'
366 {opendaylight-infra-mvn-opts}
368 mvn-version: '{mvn-version}'
369 # '{opendaylight-infra-parallel-mvn-opts}' is bad when there are multiple big features in SFT.
370 - integration-set-variables
371 - distribution-check-warn-9191
372 - distribution-check-warn-9192
373 - integration-upload-distribution:
374 dist-pom: '{dist-pom}'
375 - distribution-check-bootup
378 - email-notification:
379 email-recipients: '{email-recipients}'
380 email-prefix: '[{project-name}]'
381 - integration-csit-archive-build
385 name: 'distribution-sanity-{stream}'
386 # Goal: Verify distribution starts with no issues when all features are loaded.
387 # Operation: This job deploys odl-integration-all + list of UM features.
388 # This job works for both managed & self-managed distro.
390 project-type: freestyle
391 node: centos7-builder-4c-4g
395 - opendaylight-infra-properties:
396 build-days-to-keep: '{build-days-to-keep}'
399 - opendaylight-infra-parameters:
400 os-cloud: '{os-cloud}'
403 refspec: 'refs/heads/{branch}'
404 artifacts: '{archive-artifacts}'
405 - integration-distribution-stream:
407 - integration-distribution-branch:
409 - integration-bundle-url:
410 bundle-url: '{bundle-url}'
411 - integration-repo-url:
412 repo-url: '{sm-repos}'
413 - integration-controller-parameters:
414 controller-features: '{sm-features}'
415 # Parameters below are unused in this job so set them all to blank
416 controller-debug-map: ''
418 controller-use-features-boot: ''
419 - integration-jdk-version:
421 - distribution-karaf-version:
422 karaf-version: '{karaf-version}'
425 - opendaylight-infra-wrappers:
426 build-timeout: '{build-timeout}'
429 - integration-detect-variables
430 - distribution-check-bootup
433 - email-notification:
434 email-recipients: '{email-recipients}'
435 email-prefix: '[{project-name}]'
436 - integration-csit-archive-build
440 name: 'distribution-csit-managed-{stream}'
441 # Goal: Verify distribution starts with no issues when all features are loaded.
442 # Operation: This job deploys odl-integration-all.
443 # This job works for just managed distro.
445 project-type: freestyle
446 node: centos7-builder-4c-4g
450 - opendaylight-infra-properties:
451 build-days-to-keep: '{build-days-to-keep}'
454 - opendaylight-infra-parameters:
455 os-cloud: '{os-cloud}'
458 refspec: 'refs/heads/{branch}'
459 artifacts: '{archive-artifacts}'
460 - integration-distribution-stream:
462 - integration-distribution-branch:
464 - integration-bundle-url:
465 bundle-url: '{bundle-url}'
466 - integration-jdk-version:
468 - distribution-karaf-version:
469 karaf-version: 'karaf4'
472 - opendaylight-infra-wrappers:
473 build-timeout: '{build-timeout}'
476 - integration-detect-variables
477 - distribution-check-bootup
480 - email-notification:
481 email-recipients: '{email-recipients}'
482 email-prefix: '[{project-name}]'
483 - integration-csit-archive-build