3 name: "{project-name}-distribution-check-{stream}"
12 # Unless block_on_csit is true, the failure-threshold will be ignored. For project jobs that
13 # want to fail distribution check on csit jobs, they will only need a list of jobs to run
14 # plus the change of block_on_csit to true, and this failure-threshold: 'UNSTABLE' will take
16 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.
26 disabled: "{disable-job}"
28 project-type: freestyle
29 node: "centos8-builder-8c-8g"
33 - opendaylight-infra-properties:
34 build-days-to-keep: "{build-days-to-keep}"
37 - opendaylight-infra-parameters:
38 os-cloud: "{os-cloud}"
41 refspec: "refs/heads/{branch}"
42 artifacts: "{archive-artifacts}"
43 - integration-distribution-stream:
45 - integration-distribution-git-url:
47 - distribution-karaf-version:
48 karaf-version: "{karaf-version}"
50 maven-version: "{mvn-version}"
53 - integration-gerrit-scm:
54 basedir: "$GERRIT_PROJECT"
55 refspec: "$GERRIT_REFSPEC"
57 - integration-distribution-scm:
58 branch: "{distribution_branch}"
61 - opendaylight-infra-wrappers:
62 # Distro-check jobs typically run within 10 - 30 minutes
63 # with 45 minutes being the occassional edge case.
64 # enforce a 60 minute limit to ensure stuck jobs get
66 # Double that as Karaf 3+4 may take longer.
70 - gerrit-trigger-patch-submitted:
71 gerrit-server-name: "{gerrit-server-name}"
78 - distribution-check-wipe
79 - lf-update-java-alternatives:
80 java-version: "{java-version}"
82 properties-file: "allowed_projects.txt"
83 - distribution-check-build-project:
84 pom: "$GERRIT_PROJECT/pom.xml"
85 mvn-opts: "{opendaylight-infra-mvn-opts}"
86 mvn-version: "{mvn-version}"
87 # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT.
88 - distribution-check-verify-groupid:
89 gerrit-project: "$GERRIT_PROJECT"
90 - distribution-check-download-deps:
91 dist-pom: "distribution/pom.xml"
92 mvn-opts: "{opendaylight-infra-mvn-opts}"
93 mvn-version: "{mvn-version}"
94 # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT.
95 - distribution-check-delete-snapshots
96 - distribution-check-configure-remotes
97 - distribution-check-repeat-project-build:
98 pom: "$GERRIT_PROJECT/pom.xml"
99 mvn-opts: "{opendaylight-infra-mvn-opts}"
100 mvn-version: "{mvn-version}"
101 # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT.
102 - distribution-check-repeat-distro-build:
103 dist-pom: "distribution/pom.xml"
104 mvn-opts: "{opendaylight-infra-mvn-opts}"
105 mvn-version: "{mvn-version}"
106 # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT.
107 - integration-set-variables
108 - distribution-check-warn-9191
109 - distribution-check-warn-9192
110 - integration-upload-distribution:
111 dist-pom: distribution/pom.xml
112 settings-project: integration
113 - distribution-check-bootup
116 - project: "{csit-gate-list}"
117 block: "{obj:block_on_csit}"
119 failure-threshold: "{failure-threshold}"
120 predefined-parameters: |
121 BUNDLE_URL=$BUNDLE_URL
122 KARAF_VERSION=$KARAF_VERSION
125 - email-notification:
126 email-recipients: "{email-recipients}"
127 email-prefix: "[{project-name}]"
128 - integration-csit-archive-build
132 name: "distribution-verify-{type}-{stream}"
135 jacoco-exclude-pattern: >-
137 **/generated-sources/**,
141 project-type: freestyle
142 node: centos8-builder-8c-8g
144 disabled: "{disable-job}"
147 - opendaylight-infra-properties:
148 build-days-to-keep: "{build-days-to-keep}"
151 - opendaylight-infra-parameters:
152 os-cloud: "{os-cloud}"
155 refspec: "refs/heads/{branch}"
156 artifacts: "{archive-artifacts}"
159 - gerrit-trigger-scm:
160 refspec: "$GERRIT_REFSPEC"
161 choosing-strategy: "gerrit"
164 - opendaylight-infra-wrappers:
165 build-timeout: "{build-timeout}"
168 - gerrit-trigger-patch-submitted:
169 gerrit-server-name: "{gerrit-server-name}"
173 forbidden-files: "{forbidden-files}"
176 - wipe-org-opendaylight-repo
177 - lf-provide-maven-settings:
178 global-settings-file: "global-settings"
179 settings-file: "integration-settings"
180 - lf-update-java-alternatives:
181 java-version: "{java-version}"
183 maven-version: "{mvn-version}"
186 clean install dependency:tree -DoutputFile=dependency_tree.txt
189 {opendaylight-infra-mvn-opts}
191 # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT.
194 settings: integration-settings
196 global-settings: global-settings
197 global-settings-type: cfp
202 exclude-pattern: "{jacoco-exclude-pattern}"
204 - email-notification:
205 email-recipients: "{email-recipients}"
206 email-prefix: "[{project-name}]"
209 name: "distribution-merge-{type}-{stream}"
211 # Need to keep jobs that deploy to Nexus at end of build as Maven
212 # projects. Maybe reconsider this once upstream moves deploy to a
213 # separate lifecycle:
214 # https://issues.apache.org/jira/browse/MNG-5666
217 jacoco-exclude-pattern: >-
219 **/generated-sources/**,
224 node: "centos8-builder-8c-8g"
225 disabled: "{disable-job}"
228 - opendaylight-infra-properties:
229 build-days-to-keep: "{build-days-to-keep}"
232 - opendaylight-infra-parameters:
233 os-cloud: "{os-cloud}"
236 refspec: "refs/heads/{branch}"
237 artifacts: "{archive-artifacts}"
238 - distribution-karaf-version:
239 karaf-version: "{karaf-version}"
242 - gerrit-trigger-scm:
244 choosing-strategy: "default"
247 - opendaylight-infra-wrappers:
248 build-timeout: "{build-timeout}"
251 - gerrit-trigger-patch-merged:
252 gerrit-server-name: "{gerrit-server-name}"
256 forbidden-files: "{forbidden-files}"
258 jobs: "{dependencies}"
261 - wipe-org-opendaylight-repo
262 - lf-jacoco-nojava-workaround
263 - lf-provide-maven-settings:
264 global-settings-file: "global-settings"
265 settings-file: "integration-settings"
266 - lf-update-java-alternatives:
267 java-version: "{java-version}"
268 - integration-set-variables
269 - distribute-build-url:
270 path: "$KARAF_ARTIFACT/src/main/assembly"
276 clean install dependency:tree -DoutputFile=dependency_tree.txt -V -B
277 -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
279 -Djenkins -Dmerge -Dstream={stream}
281 maven-opts: "-Xmx1024m"
282 settings: integration-settings
284 global-settings: global-settings
285 global-settings-type: cfp
288 - integration-compare-distributions
289 # TODO: the output of the above command is not *friendly* for the reader because the most important info
290 # is listed last. This is fine/best for command line output, but for keeping in a file it would be better
291 # to put the summary at the beginning of the file. Some bash magic can be done here to make that happen.
300 deploy-unstable: false
302 exclude-pattern: "{jacoco-exclude-pattern}"
304 - email-notification:
305 email-recipients: "{email-recipients}"
306 email-prefix: "[{project-name}]"
309 name: "distribution-check-{type}-{stream}"
311 ######################
312 # Default parameters #
313 ######################
317 #####################
318 # Job Configuration #
319 #####################
321 # Like a {project}-distribution-check, but few steps less as there is no upstream project involved.
322 disabled: "{disable-job}"
324 project-type: freestyle
325 node: "centos8-builder-8c-8g"
329 - opendaylight-infra-properties:
330 build-days-to-keep: "{build-days-to-keep}"
333 - opendaylight-infra-parameters:
334 os-cloud: "{os-cloud}"
337 refspec: "refs/heads/{branch}"
338 artifacts: "{archive-artifacts}"
339 - integration-distribution-stream:
341 - distribution-karaf-version:
342 karaf-version: "{karaf-version}"
344 maven-version: "{mvn-version}"
347 - integration-gerrit-scm:
348 basedir: "distribution"
349 refspec: "$GERRIT_REFSPEC"
353 - opendaylight-infra-wrappers:
354 # Distro-check jobs typically run within 10 - 30 minutes
355 # with 45 minutes being the occassional edge case.
356 # enforce a 60 minute limit to ensure stuck jobs get
358 # Double that as Karaf 3+4 may take longer.
362 - gerrit-trigger-patch-submitted:
363 gerrit-server-name: "{gerrit-server-name}"
367 forbidden-files: "{forbidden-files}"
370 - distribution-check-wipe
371 - lf-update-java-alternatives:
372 java-version: "{java-version}"
374 properties-file: "allowed_projects.txt"
375 - distribution-check-build-project:
376 pom: "distribution/pom.xml"
378 {opendaylight-infra-mvn-opts}
380 mvn-version: "{mvn-version}"
381 # '{opendaylight-infra-parallel-mvn-opts}' is bad when there are multiple big features in SFT.
382 - distribution-check-verify-groupid:
383 gerrit-project: "integration"
384 - distribution-check-delete-snapshots
385 - distribution-check-configure-remotes
386 - distribution-check-repeat-project-build:
387 pom: "distribution/pom.xml"
389 {opendaylight-infra-mvn-opts}
391 mvn-version: "{mvn-version}"
392 # '{opendaylight-infra-parallel-mvn-opts}' is bad when there are multiple big features in SFT.
393 - integration-set-variables
394 - distribution-check-warn-9191
395 - distribution-check-warn-9192
396 - integration-upload-distribution:
397 dist-pom: "{dist-pom}"
398 settings-project: integration
399 - distribution-check-bootup
402 - email-notification:
403 email-recipients: "{email-recipients}"
404 email-prefix: "[{project-name}]"
405 - integration-csit-archive-build
409 name: "distribution-sanity-{stream}"
410 # Goal: Verify distribution starts with no issues when all features are loaded.
411 # Operation: This job deploys odl-integration-all + list of UM features.
412 # This job works for both managed & self-managed distro.
414 project-type: freestyle
415 node: centos8-builder-2c-8g
419 - opendaylight-infra-properties:
420 build-days-to-keep: "{build-days-to-keep}"
423 - opendaylight-infra-parameters:
424 os-cloud: "{os-cloud}"
427 refspec: "refs/heads/{branch}"
428 artifacts: "{archive-artifacts}"
429 - integration-distribution-stream:
431 - integration-distribution-branch:
433 - integration-bundle-url:
434 bundle-url: "{bundle-url}"
435 - integration-repo-url:
436 repo-url: "{sm-repos}"
437 - integration-controller-parameters:
438 controller-features: "{sm-features}"
439 # Parameters below are unused in this job so set them all to blank
440 controller-max-mem: ""
441 controller-debug-map: ""
443 controller-use-features-boot: ""
444 feature-elasticsearch-attribute: "{elasticsearch-attribute}"
445 - distribution-karaf-version:
446 karaf-version: "{karaf-version}"
449 - opendaylight-infra-wrappers:
450 build-timeout: "{build-timeout}"
453 - integration-detect-variables
454 - lf-update-java-alternatives:
455 java-version: "{java-version}"
456 - distribution-check-bootup
459 - email-notification:
460 email-recipients: "{email-recipients}"
461 email-prefix: "[{project-name}]"
462 - integration-csit-archive-build
466 name: "distribution-csit-managed-{stream}"
467 # Goal: Verify distribution starts with no issues when all features are loaded.
468 # Operation: This job deploys odl-integration-all.
469 # This job works for just managed distro.
473 project-type: freestyle
474 node: centos8-builder-4c-4g
476 disabled: "{disable-job}"
479 - opendaylight-infra-properties:
480 build-days-to-keep: "{build-days-to-keep}"
483 - opendaylight-infra-parameters:
484 os-cloud: "{os-cloud}"
487 refspec: "refs/heads/{branch}"
488 artifacts: "{archive-artifacts}"
489 - integration-distribution-stream:
491 - integration-distribution-branch:
493 - integration-bundle-url:
494 bundle-url: "{bundle-url}"
495 - distribution-karaf-version:
496 karaf-version: "karaf4"
499 - opendaylight-infra-wrappers:
500 build-timeout: "{build-timeout}"
503 - integration-detect-variables
504 - lf-update-java-alternatives:
505 java-version: "{java-version}"
506 - distribution-check-bootup
509 - email-notification:
510 email-recipients: "{email-recipients}"
511 email-prefix: "[{project-name}]"
512 - integration-csit-archive-build