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: "**/gen/**,\
136 **/generated-sources/**,\
140 project-type: freestyle
141 node: centos8-builder-8c-8g
143 disabled: "{disable-job}"
146 - opendaylight-infra-properties:
147 build-days-to-keep: "{build-days-to-keep}"
150 - opendaylight-infra-parameters:
151 os-cloud: "{os-cloud}"
154 refspec: "refs/heads/{branch}"
155 artifacts: "{archive-artifacts}"
158 - gerrit-trigger-scm:
159 refspec: "$GERRIT_REFSPEC"
160 choosing-strategy: "gerrit"
163 - opendaylight-infra-wrappers:
164 build-timeout: "{build-timeout}"
167 - gerrit-trigger-patch-submitted:
168 gerrit-server-name: "{gerrit-server-name}"
172 forbidden-files: "{forbidden-files}"
175 - wipe-org-opendaylight-repo
176 - lf-provide-maven-settings:
177 global-settings-file: "global-settings"
178 settings-file: "integration-settings"
179 - lf-update-java-alternatives:
180 java-version: "{java-version}"
182 maven-version: "{mvn-version}"
185 clean install dependency:tree -DoutputFile=dependency_tree.txt
188 {opendaylight-infra-mvn-opts}
190 # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT.
193 settings: integration-settings
195 global-settings: global-settings
196 global-settings-type: cfp
201 exclude-pattern: "{jacoco-exclude-pattern}"
203 - email-notification:
204 email-recipients: "{email-recipients}"
205 email-prefix: "[{project-name}]"
208 name: "distribution-merge-{type}-{stream}"
210 # Need to keep jobs that deploy to Nexus at end of build as Maven
211 # projects. Maybe reconsider this once upstream moves deploy to a
212 # separate lifecycle:
213 # https://issues.apache.org/jira/browse/MNG-5666
216 jacoco-exclude-pattern: "**/gen/**,\
217 **/generated-sources/**,\
222 node: "centos8-builder-8c-8g"
223 disabled: "{disable-job}"
226 - opendaylight-infra-properties:
227 build-days-to-keep: "{build-days-to-keep}"
230 - opendaylight-infra-parameters:
231 os-cloud: "{os-cloud}"
234 refspec: "refs/heads/{branch}"
235 artifacts: "{archive-artifacts}"
236 - distribution-karaf-version:
237 karaf-version: "{karaf-version}"
240 - gerrit-trigger-scm:
242 choosing-strategy: "default"
245 - opendaylight-infra-wrappers:
246 build-timeout: "{build-timeout}"
249 - gerrit-trigger-patch-merged:
250 gerrit-server-name: "{gerrit-server-name}"
254 forbidden-files: "{forbidden-files}"
256 jobs: "{dependencies}"
259 - wipe-org-opendaylight-repo
260 - lf-jacoco-nojava-workaround
261 - lf-provide-maven-settings:
262 global-settings-file: "global-settings"
263 settings-file: "integration-settings"
264 - lf-update-java-alternatives:
265 java-version: "{java-version}"
266 - integration-set-variables
267 - distribute-build-url:
268 path: "$KARAF_ARTIFACT/src/main/assembly"
274 clean install dependency:tree -DoutputFile=dependency_tree.txt -V -B
275 -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
277 -Djenkins -Dmerge -Dstream={stream}
279 maven-opts: "-Xmx1024m"
280 settings: integration-settings
282 global-settings: global-settings
283 global-settings-type: cfp
286 - integration-compare-distributions
287 # TODO: the output of the above command is not *friendly* for the reader because the most important info
288 # is listed last. This is fine/best for command line output, but for keeping in a file it would be better
289 # to put the summary at the beginning of the file. Some bash magic can be done here to make that happen.
298 deploy-unstable: false
300 exclude-pattern: "{jacoco-exclude-pattern}"
302 - email-notification:
303 email-recipients: "{email-recipients}"
304 email-prefix: "[{project-name}]"
307 name: "distribution-check-{type}-{stream}"
309 ######################
310 # Default parameters #
311 ######################
315 #####################
316 # Job Configuration #
317 #####################
319 # Like a {project}-distribution-check, but few steps less as there is no upstream project involved.
320 disabled: "{disable-job}"
322 project-type: freestyle
323 node: "centos8-builder-8c-8g"
327 - opendaylight-infra-properties:
328 build-days-to-keep: "{build-days-to-keep}"
331 - opendaylight-infra-parameters:
332 os-cloud: "{os-cloud}"
335 refspec: "refs/heads/{branch}"
336 artifacts: "{archive-artifacts}"
337 - integration-distribution-stream:
339 - distribution-karaf-version:
340 karaf-version: "{karaf-version}"
342 maven-version: "{mvn-version}"
345 - integration-gerrit-scm:
346 basedir: "distribution"
347 refspec: "$GERRIT_REFSPEC"
351 - opendaylight-infra-wrappers:
352 # Distro-check jobs typically run within 10 - 30 minutes
353 # with 45 minutes being the occassional edge case.
354 # enforce a 60 minute limit to ensure stuck jobs get
356 # Double that as Karaf 3+4 may take longer.
360 - gerrit-trigger-patch-submitted:
361 gerrit-server-name: "{gerrit-server-name}"
365 forbidden-files: "{forbidden-files}"
368 - distribution-check-wipe
369 - lf-update-java-alternatives:
370 java-version: "{java-version}"
372 properties-file: "allowed_projects.txt"
373 - distribution-check-build-project:
374 pom: "distribution/pom.xml"
376 {opendaylight-infra-mvn-opts}
378 mvn-version: "{mvn-version}"
379 # '{opendaylight-infra-parallel-mvn-opts}' is bad when there are multiple big features in SFT.
380 - distribution-check-verify-groupid:
381 gerrit-project: "integration"
382 - distribution-check-delete-snapshots
383 - distribution-check-configure-remotes
384 - distribution-check-repeat-project-build:
385 pom: "distribution/pom.xml"
387 {opendaylight-infra-mvn-opts}
389 mvn-version: "{mvn-version}"
390 # '{opendaylight-infra-parallel-mvn-opts}' is bad when there are multiple big features in SFT.
391 - integration-set-variables
392 - distribution-check-warn-9191
393 - distribution-check-warn-9192
394 - integration-upload-distribution:
395 dist-pom: "{dist-pom}"
396 settings-project: integration
397 - distribution-check-bootup
400 - email-notification:
401 email-recipients: "{email-recipients}"
402 email-prefix: "[{project-name}]"
403 - integration-csit-archive-build
407 name: "distribution-sanity-{stream}"
408 # Goal: Verify distribution starts with no issues when all features are loaded.
409 # Operation: This job deploys odl-integration-all + list of UM features.
410 # This job works for both managed & self-managed distro.
412 project-type: freestyle
413 node: centos8-builder-2c-8g
417 - opendaylight-infra-properties:
418 build-days-to-keep: "{build-days-to-keep}"
421 - opendaylight-infra-parameters:
422 os-cloud: "{os-cloud}"
425 refspec: "refs/heads/{branch}"
426 artifacts: "{archive-artifacts}"
427 - integration-distribution-stream:
429 - integration-distribution-branch:
431 - integration-bundle-url:
432 bundle-url: "{bundle-url}"
433 - integration-repo-url:
434 repo-url: "{sm-repos}"
435 - integration-controller-parameters:
436 controller-features: "{sm-features}"
437 # Parameters below are unused in this job so set them all to blank
438 controller-max-mem: ""
439 controller-debug-map: ""
441 controller-use-features-boot: ""
442 feature-elasticsearch-attribute: "{elasticsearch-attribute}"
443 - distribution-karaf-version:
444 karaf-version: "{karaf-version}"
447 - opendaylight-infra-wrappers:
448 build-timeout: "{build-timeout}"
451 - integration-detect-variables
452 - lf-update-java-alternatives:
453 java-version: "{java-version}"
454 - distribution-check-bootup
457 - email-notification:
458 email-recipients: "{email-recipients}"
459 email-prefix: "[{project-name}]"
460 - integration-csit-archive-build
464 name: "distribution-csit-managed-{stream}"
465 # Goal: Verify distribution starts with no issues when all features are loaded.
466 # Operation: This job deploys odl-integration-all.
467 # This job works for just managed distro.
471 project-type: freestyle
472 node: centos8-builder-4c-4g
474 disabled: "{disable-job}"
477 - opendaylight-infra-properties:
478 build-days-to-keep: "{build-days-to-keep}"
481 - opendaylight-infra-parameters:
482 os-cloud: "{os-cloud}"
485 refspec: "refs/heads/{branch}"
486 artifacts: "{archive-artifacts}"
487 - integration-distribution-stream:
489 - integration-distribution-branch:
491 - integration-bundle-url:
492 bundle-url: "{bundle-url}"
493 - distribution-karaf-version:
494 karaf-version: "karaf4"
497 - opendaylight-infra-wrappers:
498 build-timeout: "{build-timeout}"
501 - integration-detect-variables
502 - lf-update-java-alternatives:
503 java-version: "{java-version}"
504 - distribution-check-bootup
507 - email-notification:
508 email-recipients: "{email-recipients}"
509 email-prefix: "[{project-name}]"
510 - integration-csit-archive-build