Skip to content

Commit fc0f0c0

Browse files
authored
Merge pull request #855 from lemeurherve/hotfix-dont-hardcode-releases-2.551
hotfix: don't hardcode `releases` maven repository name (`security-2.551`)
2 parents 51c57be + af54fba commit fc0f0c0

File tree

2 files changed

+10
-7
lines changed

2 files changed

+10
-7
lines changed

Jenkinsfile.d/core/release

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -135,11 +135,6 @@ pipeline {
135135
steps {
136136
sh '''
137137
utils/release.bash --stageRelease
138-
139-
# Ensure Artifactory updates the `latest` field in the `jenkins-war` 's `maven-metadata.xml` (sometime it is not updated).
140-
# Note 1: only useful for weekly releases (no op for LTS)
141-
# Note 2: Could the "bug" being caused by only using Maven `release:stage` instead of `release:perform`?
142-
curl -X POST -H 'Content-Length: 0' --fail --user "${MAVEN_REPOSITORY_USERNAME}:${MAVEN_REPOSITORY_PASSWORD}" "https://repo.jenkins-ci.org/api/maven/calculateMetadata/releases/org/jenkins-ci/main/jenkins-war/"
143138
'''
144139
}
145140
}

utils/release.bash

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -124,13 +124,13 @@ function downloadJenkinsWar() {
124124
jenkinsVersion="$(jv get)" # jv utilizes the JENKINS_VERSION environment variable which can be the line (latest/weekly/lts/stable) or an exact version
125125

126126
# Download WAR from Artifactory. Note: the expected filename is "jenkins.war".
127-
warUrl="https://repo.jenkins-ci.org/releases/org/jenkins-ci/main/jenkins-war/${jenkinsVersion}/jenkins-war-${jenkinsVersion}.war"
127+
warUrl="https://repo.jenkins-ci.org/${MAVEN_REPOSITORY_NAME}/org/jenkins-ci/main/jenkins-war/${jenkinsVersion}/jenkins-war-${jenkinsVersion}.war"
128128
curl --fail --silent --show-error --location --output "${WAR}" \
129129
"${warUrl}"
130130

131131
# Download signature from Artifactory (signed by Maven during the release process). Note: the expected filename is "jenkins.war.asc".
132132
warSignatureUrl="${warUrl}.asc"
133-
curl --fail --silent --show-error --location --output "${WAR}.asc" \
133+
curl --fail --silent --show-error --location --user "${MAVEN_REPOSITORY_USERNAME}:${MAVEN_REPOSITORY_PASSWORD}" --output "${WAR}.asc" \
134134
"${warSignatureUrl}"
135135

136136
# TODO: verify the download. Requires retrieving the correct GPG key (edge case when rotating key, might need to use state files)
@@ -416,6 +416,14 @@ function stageRelease() {
416416
-s settings-release.xml \
417417
-ntp \
418418
release:stage
419+
420+
# Update maven-metadata only if it's a public release
421+
if [[ "${MAVEN_REPOSITORY_NAME}" == "releases" ]]; then
422+
# Ensure Artifactory updates the `latest` field in the `jenkins-war` 's `maven-metadata.xml` (sometime it is not updated).
423+
# Note 1: only useful for weekly releases (no op for LTS)
424+
# Note 2: Could the "bug" being caused by only using Maven `release:stage` instead of `release:perform`?
425+
curl -X POST -H 'Content-Length: 0' --fail --user "${MAVEN_REPOSITORY_USERNAME}:${MAVEN_REPOSITORY_PASSWORD}" "https://repo.jenkins-ci.org/api/maven/calculateMetadata/${MAVEN_REPOSITORY_NAME}/org/jenkins-ci/main/jenkins-war/"
426+
fi
419427
}
420428

421429
function performRelease() {

0 commit comments

Comments
 (0)