6 - _releng_maven_mri_common: &releng_maven_mri_common
7 name: releng-maven-mri-common
10 # Default parameters #
11 ######################
16 **/target/**/feature.xml
17 **/target/failsafe-reports/failsafe-summary.xml
18 **/target/surefire-reports/*-output.txt
24 project-type: freestyle
28 - lf-infra-properties:
29 build-days-to-keep: "{build-days-to-keep}"
32 - lf-infra-parameters:
36 - lf-infra-maven-parameters:
37 mvn-opts: "{mvn-opts}"
38 mvn-params: "{mvn-params}"
39 mvn-version: "{mvn-version}"
41 name: ARCHIVE_ARTIFACTS
42 default: "{archive-artifacts}"
43 description: Artifacts to archive to the logs server.
47 build-timeout: "{build-timeout}"
48 jenkins-ssh-credential: "{jenkins-ssh-credential}"
51 # TODO: Make email notification work.
52 # - lf-infra-email-notify:
53 # email-recipients: '{email-recipients}'
54 # email-prefix: '[releng]'
60 - lf-provide-maven-settings:
61 global-settings-file: "{mvn-global-settings}"
62 settings-file: "{mvn-settings}"
63 - lf-infra-create-netrc:
64 server-id: "{mvn-staging-id}"
65 # include-raw-escape fails due to JJB bug
66 - shell: !include-raw-escape:
67 - global-jjb/shell/common-variables.sh
68 - releng-maven-mri-stage.sh
69 - lf-provide-maven-settings-cleanup
75 - _releng_maven_mri_stage: &releng_maven_mri_stage
76 name: releng-maven-mri-stage
78 ######################
79 # Default parameters #
80 ######################
83 build-days-to-keep: 30 # 30 days in case a release takes long to get approved.
87 git-url: "$GIT_URL/$PROJECT"
88 github-url: "https://github.com"
89 java-version: openjdk8
90 maven-versions-plugin: false
91 version-properties-file: version.properties
93 mvn-global-settings: global-settings
94 mvn-goals: clean deploy
101 sbom-path: "$WORKSPACE"
102 sbom-generator: false
103 sbom-generator-version: "v0.0.15"
104 sign-artifacts: false
107 submodule-recursive: true
108 submodule-timeout: 10
109 submodule-disable: false
111 gerrit_release_triggers:
112 - comment-added-contains-event:
113 comment-contains-value: '^Patch Set\s+\d+:\s+stage-(maven-)?release\s*$'
115 gerrit_trigger_file_paths:
119 # github_included_regions MUST match gerrit_trigger_file_paths
120 github_included_regions:
123 #####################
124 # Job Configuration #
125 #####################
127 disabled: "{disable-job}"
130 - lf-infra-parameters:
134 - lf-infra-maven-parameters:
135 mvn-opts: "{mvn-opts}"
136 mvn-params: "{mvn-params}"
137 mvn-version: "{mvn-version}"
138 staging-profile-id: "{staging-profile-id}"
139 - distribution-karaf-version:
140 karaf-version: "{karaf-version}"
142 name: MAVEN_VERSIONS_PLUGIN
143 default: "{maven-versions-plugin}"
144 description: Use maven-versions-plugin to update pom versions.
146 name: ARCHIVE_ARTIFACTS
147 default: "{archive-artifacts}"
148 description: Artifacts to archive to the logs server.
150 name: STAGING_PROFILE_ID
151 default: "{staging-profile-id}"
152 description: Nexus staging profile ID.
154 name: SBOM_GENERATOR_VERSION
155 default: "{sbom-generator-version}"
156 description: SBOM generator version to download and run.
159 default: "{sbom-path}"
160 description: path where SBOM needs to be executed.
164 - lf-jacoco-nojava-workaround
165 - integration-set-variables
167 mvn-version: "{mvn-version}"
168 - lf-update-java-alternatives:
169 java-version: "{java-version}"
170 - lf-provide-maven-settings:
171 global-settings-file: "{mvn-global-settings}"
172 settings-file: "{mvn-settings}"
173 - lf-maven-versions-plugin:
174 maven-versions-plugin: "{maven-versions-plugin}"
175 version-properties-file: "{version-properties-file}"
176 mvn-version: "{mvn-version}"
178 mvn-settings: "{mvn-settings}"
179 - shell: !include-raw-escape: global-jjb/shell/maven-patch-release.sh
181 mvn-goals: "{mvn-goals}"
182 # With SBOM Generator
184 condition-kind: boolean-expression
185 condition-expression: "{sbom-generator}"
187 - shell: echo 'Running SBOM Generator'
188 - lf-infra-maven-sbom-generator:
189 sbom-flags: "{sbom-flags}"
191 sign-artifacts: "{sign-artifacts}"
192 sign-dir: "$WORKSPACE/m2repo"
193 sign-mode: "{sign-mode}"
195 mvn-global-settings: "{mvn-global-settings}"
196 mvn-settings: "{mvn-settings}"
197 mvn-staging-id: "{mvn-staging-id}"
199 mvn-central: "{mvn-central}"
200 mvn-global-settings: "{mvn-global-settings}"
201 mvn-settings: "{mvn-settings}"
202 ossrh-profile-id: "{ossrh-profile-id}"
203 - lf-provide-maven-settings-cleanup
205 properties-file: maven-staged-bundle.env
207 - project: "{project-name}-distribution-mri-test-{stream}"
209 predefined-parameters: |
210 BUNDLE_URL=$BUNDLE_URL
211 KARAF_VERSION=$KARAF_VERSION
214 name: "{project-name}-maven-mri-stage-{stream}"
215 id: gerrit-maven-mri-stage
216 <<: *releng_maven_mri_common
217 # yamllint disable-line rule:key-duplicates
218 <<: *releng_maven_mri_stage
221 - lf-infra-gerrit-scm:
222 jenkins-ssh-credential: "{jenkins-ssh-credential}"
224 refspec: "$GERRIT_REFSPEC"
225 branch: "$GERRIT_BRANCH"
226 submodule-recursive: "{submodule-recursive}"
227 submodule-timeout: "{submodule-timeout}"
228 submodule-disable: "{submodule-disable}"
229 choosing-strategy: default