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/**,**/generated-sources/**,**/yang-gen**,**/pax/**"
137 project-type: freestyle
138 node: centos8-builder-8c-8g
140 disabled: "{disable-job}"
143 - opendaylight-infra-properties:
144 build-days-to-keep: "{build-days-to-keep}"
147 - opendaylight-infra-parameters:
148 os-cloud: "{os-cloud}"
151 refspec: "refs/heads/{branch}"
152 artifacts: "{archive-artifacts}"
155 - gerrit-trigger-scm:
156 refspec: "$GERRIT_REFSPEC"
157 choosing-strategy: "gerrit"
160 - opendaylight-infra-wrappers:
161 build-timeout: "{build-timeout}"
164 - gerrit-trigger-patch-submitted:
165 gerrit-server-name: "{gerrit-server-name}"
169 forbidden-files: "{forbidden-files}"
172 - wipe-org-opendaylight-repo
173 - lf-provide-maven-settings:
174 global-settings-file: "global-settings"
175 settings-file: "integration-settings"
176 - lf-update-java-alternatives:
177 java-version: "{java-version}"
179 maven-version: "{mvn-version}"
182 clean install dependency:tree -DoutputFile=dependency_tree.txt
185 {opendaylight-infra-mvn-opts}
187 # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT.
190 settings: integration-settings
192 global-settings: global-settings
193 global-settings-type: cfp
198 exclude-pattern: { jacoco-exclude-pattern }
200 - email-notification:
201 email-recipients: "{email-recipients}"
202 email-prefix: "[{project-name}]"
205 name: "distribution-merge-{type}-{stream}"
207 # Need to keep jobs that deploy to Nexus at end of build as Maven
208 # projects. Maybe reconsider this once upstream moves deploy to a
209 # separate lifecycle:
210 # https://issues.apache.org/jira/browse/MNG-5666
213 jacoco-exclude-pattern: "**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**"
216 node: "centos8-builder-8c-8g"
217 disabled: "{disable-job}"
220 - opendaylight-infra-properties:
221 build-days-to-keep: "{build-days-to-keep}"
224 - opendaylight-infra-parameters:
225 os-cloud: "{os-cloud}"
228 refspec: "refs/heads/{branch}"
229 artifacts: "{archive-artifacts}"
230 - distribution-karaf-version:
231 karaf-version: "{karaf-version}"
234 - gerrit-trigger-scm:
236 choosing-strategy: "default"
239 - opendaylight-infra-wrappers:
240 build-timeout: "{build-timeout}"
243 - gerrit-trigger-patch-merged:
244 gerrit-server-name: "{gerrit-server-name}"
248 forbidden-files: "{forbidden-files}"
250 jobs: "{dependencies}"
253 - wipe-org-opendaylight-repo
254 - lf-jacoco-nojava-workaround
255 - lf-provide-maven-settings:
256 global-settings-file: "global-settings"
257 settings-file: "integration-settings"
258 - lf-update-java-alternatives:
259 java-version: "{java-version}"
260 - integration-set-variables
261 - distribute-build-url:
262 path: "$KARAF_ARTIFACT/src/main/assembly"
268 clean install dependency:tree -DoutputFile=dependency_tree.txt -V -B
269 -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
271 -Djenkins -Dmerge -Dstream={stream}
273 maven-opts: "-Xmx1024m"
274 settings: integration-settings
276 global-settings: global-settings
277 global-settings-type: cfp
280 - integration-compare-distributions
281 # TODO: the output of the above command is not *friendly* for the reader because the most important info
282 # is listed last. This is fine/best for command line output, but for keeping in a file it would be better
283 # to put the summary at the beginning of the file. Some bash magic can be done here to make that happen.
292 deploy-unstable: false
294 exclude-pattern: "{jacoco-exclude-pattern}"
296 - email-notification:
297 email-recipients: "{email-recipients}"
298 email-prefix: "[{project-name}]"
301 name: "distribution-check-{type}-{stream}"
303 ######################
304 # Default parameters #
305 ######################
309 #####################
310 # Job Configuration #
311 #####################
313 # Like a {project}-distribution-check, but few steps less as there is no upstream project involved.
314 disabled: "{disable-job}"
316 project-type: freestyle
317 node: "centos8-builder-8c-8g"
321 - opendaylight-infra-properties:
322 build-days-to-keep: "{build-days-to-keep}"
325 - opendaylight-infra-parameters:
326 os-cloud: "{os-cloud}"
329 refspec: "refs/heads/{branch}"
330 artifacts: "{archive-artifacts}"
331 - integration-distribution-stream:
333 - distribution-karaf-version:
334 karaf-version: "{karaf-version}"
336 maven-version: "{mvn-version}"
339 - integration-gerrit-scm:
340 basedir: "distribution"
341 refspec: "$GERRIT_REFSPEC"
345 - opendaylight-infra-wrappers:
346 # Distro-check jobs typically run within 10 - 30 minutes
347 # with 45 minutes being the occassional edge case.
348 # enforce a 60 minute limit to ensure stuck jobs get
350 # Double that as Karaf 3+4 may take longer.
354 - gerrit-trigger-patch-submitted:
355 gerrit-server-name: "{gerrit-server-name}"
359 forbidden-files: "{forbidden-files}"
362 - distribution-check-wipe
363 - lf-update-java-alternatives:
364 java-version: "{java-version}"
366 properties-file: "allowed_projects.txt"
367 - distribution-check-build-project:
368 pom: "distribution/pom.xml"
370 {opendaylight-infra-mvn-opts}
372 mvn-version: "{mvn-version}"
373 # '{opendaylight-infra-parallel-mvn-opts}' is bad when there are multiple big features in SFT.
374 - distribution-check-verify-groupid:
375 gerrit-project: "integration"
376 - distribution-check-delete-snapshots
377 - distribution-check-configure-remotes
378 - distribution-check-repeat-project-build:
379 pom: "distribution/pom.xml"
381 {opendaylight-infra-mvn-opts}
383 mvn-version: "{mvn-version}"
384 # '{opendaylight-infra-parallel-mvn-opts}' is bad when there are multiple big features in SFT.
385 - integration-set-variables
386 - distribution-check-warn-9191
387 - distribution-check-warn-9192
388 - integration-upload-distribution:
389 dist-pom: "{dist-pom}"
390 settings-project: integration
391 - distribution-check-bootup
394 - email-notification:
395 email-recipients: "{email-recipients}"
396 email-prefix: "[{project-name}]"
397 - integration-csit-archive-build
401 name: "distribution-sanity-{stream}"
402 # Goal: Verify distribution starts with no issues when all features are loaded.
403 # Operation: This job deploys odl-integration-all + list of UM features.
404 # This job works for both managed & self-managed distro.
406 project-type: freestyle
407 node: centos8-builder-2c-8g
411 - opendaylight-infra-properties:
412 build-days-to-keep: "{build-days-to-keep}"
415 - opendaylight-infra-parameters:
416 os-cloud: "{os-cloud}"
419 refspec: "refs/heads/{branch}"
420 artifacts: "{archive-artifacts}"
421 - integration-distribution-stream:
423 - integration-distribution-branch:
425 - integration-bundle-url:
426 bundle-url: "{bundle-url}"
427 - integration-repo-url:
428 repo-url: "{sm-repos}"
429 - integration-controller-parameters:
430 controller-features: "{sm-features}"
431 # Parameters below are unused in this job so set them all to blank
432 controller-max-mem: ""
433 controller-debug-map: ""
435 controller-use-features-boot: ""
436 feature-elasticsearch-attribute: "{elasticsearch-attribute}"
437 - distribution-karaf-version:
438 karaf-version: "{karaf-version}"
441 - opendaylight-infra-wrappers:
442 build-timeout: "{build-timeout}"
445 - integration-detect-variables
446 - lf-update-java-alternatives:
447 java-version: "{java-version}"
448 - distribution-check-bootup
451 - email-notification:
452 email-recipients: "{email-recipients}"
453 email-prefix: "[{project-name}]"
454 - integration-csit-archive-build
458 name: "distribution-csit-managed-{stream}"
459 # Goal: Verify distribution starts with no issues when all features are loaded.
460 # Operation: This job deploys odl-integration-all.
461 # This job works for just managed distro.
465 project-type: freestyle
466 node: centos8-builder-4c-4g
468 disabled: "{disable-job}"
471 - opendaylight-infra-properties:
472 build-days-to-keep: "{build-days-to-keep}"
475 - opendaylight-infra-parameters:
476 os-cloud: "{os-cloud}"
479 refspec: "refs/heads/{branch}"
480 artifacts: "{archive-artifacts}"
481 - integration-distribution-stream:
483 - integration-distribution-branch:
485 - integration-bundle-url:
486 bundle-url: "{bundle-url}"
487 - distribution-karaf-version:
488 karaf-version: "karaf4"
491 - opendaylight-infra-wrappers:
492 build-timeout: "{build-timeout}"
495 - integration-detect-variables
496 - lf-update-java-alternatives:
497 java-version: "{java-version}"
498 - distribution-check-bootup
501 - email-notification:
502 email-recipients: "{email-recipients}"
503 email-prefix: "[{project-name}]"
504 - integration-csit-archive-build