5 - releng_maven_mri_common: &releng_maven_mri_common
6 name: releng-maven-mri-common
10 ######################
15 **/target/**/feature.xml
16 **/target/failsafe-reports/failsafe-summary.xml
17 **/target/surefire-reports/*-output.txt
23 project-type: freestyle
27 - lf-infra-properties:
28 build-days-to-keep: "{build-days-to-keep}"
31 - lf-infra-parameters:
35 - lf-infra-maven-parameters:
36 mvn-opts: "{mvn-opts}"
37 mvn-params: "{mvn-params}"
38 mvn-version: "{mvn-version}"
40 name: ARCHIVE_ARTIFACTS
41 default: "{archive-artifacts}"
42 description: Artifacts to archive to the logs server.
46 build-timeout: "{build-timeout}"
47 jenkins-ssh-credential: "{jenkins-ssh-credential}"
50 # TODO: Make email notification work.
51 # - lf-infra-email-notify:
52 # email-recipients: '{email-recipients}'
53 # email-prefix: '[releng]'
59 - lf-provide-maven-settings:
60 global-settings-file: "{mvn-global-settings}"
61 settings-file: "{mvn-settings}"
62 - lf-infra-create-netrc:
63 server-id: "{mvn-staging-id}"
64 # include-raw-escape fails due to JJB bug
65 - shell: !include-raw-escape:
66 - global-jjb/shell/common-variables.sh
67 - releng-maven-mri-stage.sh
68 - lf-provide-maven-settings-cleanup
74 - releng_maven_mri_stage: &releng_maven_mri_stage
75 name: releng-maven-mri-stage
77 ######################
78 # Default parameters #
79 ######################
82 build-days-to-keep: 30 # 30 days in case a release takes long to get approved.
86 git-url: "$GIT_URL/$PROJECT"
87 github-url: "https://github.com"
88 java-version: openjdk8
89 maven-versions-plugin: false
90 version-properties-file: version.properties
92 mvn-global-settings: global-settings
93 mvn-goals: clean deploy
100 sbom-path: "$WORKSPACE"
101 sbom-generator: false
102 sbom-generator-version: "v0.0.15"
103 sign-artifacts: false
106 submodule-recursive: true
107 submodule-timeout: 10
108 submodule-disable: false
110 gerrit_release_triggers:
111 - comment-added-contains-event:
112 comment-contains-value: '^Patch Set\s+\d+:\s+stage-(maven-)?release\s*$'
114 gerrit_trigger_file_paths:
118 # github_included_regions MUST match gerrit_trigger_file_paths
119 github_included_regions:
122 #####################
123 # Job Configuration #
124 #####################
126 disabled: "{disable-job}"
129 - lf-infra-parameters:
133 - lf-infra-maven-parameters:
134 mvn-opts: "{mvn-opts}"
135 mvn-params: "{mvn-params}"
136 mvn-version: "{mvn-version}"
137 staging-profile-id: "{staging-profile-id}"
138 - distribution-karaf-version:
139 karaf-version: "{karaf-version}"
141 name: MAVEN_VERSIONS_PLUGIN
142 default: "{maven-versions-plugin}"
143 description: Use maven-versions-plugin to update pom versions.
145 name: ARCHIVE_ARTIFACTS
146 default: "{archive-artifacts}"
147 description: Artifacts to archive to the logs server.
149 name: STAGING_PROFILE_ID
150 default: "{staging-profile-id}"
151 description: Nexus staging profile ID.
153 name: SBOM_GENERATOR_VERSION
154 default: "{sbom-generator-version}"
155 description: SBOM generator version to download and run.
158 default: "{sbom-path}"
159 description: path where SBOM needs to be executed.
163 - lf-jacoco-nojava-workaround
164 - integration-set-variables
166 mvn-version: "{mvn-version}"
167 - lf-update-java-alternatives:
168 java-version: "{java-version}"
169 - lf-provide-maven-settings:
170 global-settings-file: "{mvn-global-settings}"
171 settings-file: "{mvn-settings}"
172 - lf-maven-versions-plugin:
173 maven-versions-plugin: "{maven-versions-plugin}"
174 version-properties-file: "{version-properties-file}"
175 mvn-version: "{mvn-version}"
177 mvn-settings: "{mvn-settings}"
178 - shell: !include-raw-escape: global-jjb/shell/maven-patch-release.sh
180 mvn-goals: "{mvn-goals}"
181 # With SBOM Generator
183 condition-kind: boolean-expression
184 condition-expression: "{sbom-generator}"
186 - shell: echo 'Running SBOM Generator'
187 - lf-infra-maven-sbom-generator:
188 sbom-flags: "{sbom-flags}"
190 sign-artifacts: "{sign-artifacts}"
191 sign-dir: "$WORKSPACE/m2repo"
192 sign-mode: "{sign-mode}"
194 mvn-global-settings: "{mvn-global-settings}"
195 mvn-settings: "{mvn-settings}"
196 mvn-staging-id: "{mvn-staging-id}"
198 mvn-central: "{mvn-central}"
199 mvn-global-settings: "{mvn-global-settings}"
200 mvn-settings: "{mvn-settings}"
201 ossrh-profile-id: "{ossrh-profile-id}"
202 - lf-provide-maven-settings-cleanup
204 properties-file: maven-staged-bundle.env
206 - project: "{project-name}-distribution-mri-test-{stream}"
208 predefined-parameters: |
209 BUNDLE_URL=$BUNDLE_URL
210 KARAF_VERSION=$KARAF_VERSION
213 name: "{project-name}-maven-mri-stage-{stream}"
214 id: gerrit-maven-mri-stage
215 <<: *releng_maven_mri_common
216 # yamllint disable-line rule:key-duplicates
217 <<: *releng_maven_mri_stage
220 - lf-infra-gerrit-scm:
221 jenkins-ssh-credential: "{jenkins-ssh-credential}"
223 refspec: "$GERRIT_REFSPEC"
224 branch: "$GERRIT_BRANCH"
225 submodule-recursive: "{submodule-recursive}"
226 submodule-timeout: "{submodule-timeout}"
227 submodule-disable: "{submodule-disable}"
228 choosing-strategy: default