From 9e2f1dd07d7e11c32513d55424b18d5464dfd294 Mon Sep 17 00:00:00 2001 From: Sangwook Ha Date: Wed, 17 Aug 2022 23:07:56 -0700 Subject: [PATCH] Update xpath commands 'xpath' command in CentOS 8 uses the following format: xpath [options] -e query [-e query...] [filename...] instead of this in CentOS 7: xpath [filename] query Update the commands in the shell scripts to follow the new format with the old one as a fallback to support both versions. Change-Id: I4a99a7f18e69d2d1c4c67aca16a4a6ab57618cb2 Signed-off-by: Sangwook Ha --- jjb/integration/integration-compare-distributions.sh | 9 ++++++--- jjb/integration/integration-detect-variables.sh | 8 ++++++-- jjb/integration/integration-upload-distribution.sh | 4 +++- jjb/releng-maven-mri-stage.sh | 4 +++- 4 files changed, 18 insertions(+), 7 deletions(-) diff --git a/jjb/integration/integration-compare-distributions.sh b/jjb/integration/integration-compare-distributions.sh index 9dfede50fd..dc694a1eb6 100644 --- a/jjb/integration/integration-compare-distributions.sh +++ b/jjb/integration/integration-compare-distributions.sh @@ -26,7 +26,9 @@ else fi # Extract the BUNDLE_VERSION from the pom.xml -BUNDLE_VERSION=$(xpath pom.xml '/project/version/text()' 2> /dev/null) +# TODO: remove the second xpath command once the old version in CentOS 7 is not used any more +BUNDLE_VERSION=$(xpath -e '/project/version/text()' pom.xml 2>/dev/null || + xpath pom.xml '/project/version/text()' 2>/dev/null) echo "Bundle version is ${BUNDLE_VERSION}" # Acquire the timestamp information from maven-metadata.xml NEXUSPATH="${NEXUSURL_PREFIX}/${ODL_NEXUS_REPO}/org/opendaylight/${KARAF_PROJECT}/${KARAF_ARTIFACT}" @@ -39,7 +41,9 @@ if [ $? -ne 0 ]; then fi less maven-metadata.xml -TIMESTAMP=$(xpath maven-metadata.xml "//snapshotVersion[extension='zip'][1]/value/text()" 2>/dev/null) +# TODO: remove the second xpath command once the old version in CentOS 7 is not used any more +TIMESTAMP=$(xpath -e "//snapshotVersion[extension='zip'][1]/value/text()" maven-metadata.xml 2>/dev/null || + xpath maven-metadata.xml "//snapshotVersion[extension='zip'][1]/value/text()" 2>/dev/null) echo "Nexus timestamp is ${TIMESTAMP}" BUNDLEFOLDER="${KARAF_ARTIFACT}-${BUNDLE_VERSION}" BUNDLE="${KARAF_ARTIFACT}-${TIMESTAMP}.zip" @@ -80,4 +84,3 @@ if [ -f /tmp/distro_new/bin/extract_modules.sh ]; then /tmp/distro_new/bin/check_modules.sh mv /tmp/distro_new/opendaylight-models "$WORKSPACE"/archives fi - diff --git a/jjb/integration/integration-detect-variables.sh b/jjb/integration/integration-detect-variables.sh index baaf7183dd..925192c07e 100644 --- a/jjb/integration/integration-detect-variables.sh +++ b/jjb/integration/integration-detect-variables.sh @@ -21,13 +21,17 @@ if [ "${BUNDLE_URL}" == 'last' ]; then wget "http://${GERRIT_PATH}/gitweb?p=integration/distribution.git;a=blob_plain;f=pom.xml;hb=refs/heads/$DISTROBRANCH" -O "pom.xml" fi # Extract the BUNDLE_VERSION from the pom.xml - BUNDLE_VERSION="$(xpath pom.xml '/project/version/text()' 2> /dev/null)" + # TODO: remove the second xpath command once the old version in CentOS 7 is not used any more + BUNDLE_VERSION=$(xpath -e '/project/version/text()' pom.xml 2>/dev/null || + xpath pom.xml '/project/version/text()' 2>/dev/null) echo "Bundle version is ${BUNDLE_VERSION}" # Acquire the timestamp information from maven-metadata.xml NEXUSPATH="${NEXUSURL_PREFIX}/${ODL_NEXUS_REPO}/org/opendaylight/${KARAF_PROJECT}/${KARAF_ARTIFACT}" wget "${NEXUSPATH}/${BUNDLE_VERSION}/maven-metadata.xml" less "maven-metadata.xml" - TIMESTAMP="$(xpath maven-metadata.xml "//snapshotVersion[extension='zip'][1]/value/text()" 2>/dev/null)" + # TODO: remove the second xpath command once the old version in CentOS 7 is not used any more + TIMESTAMP=$(xpath -e "//snapshotVersion[extension='zip'][1]/value/text()" maven-metadata.xml 2>/dev/null || + xpath maven-metadata.xml "//snapshotVersion[extension='zip'][1]/value/text()" 2>/dev/null) echo "Nexus timestamp is ${TIMESTAMP}" BUNDLEFOLDER="${KARAF_ARTIFACT}-${BUNDLE_VERSION}" BUNDLE="${KARAF_ARTIFACT}-${TIMESTAMP}.zip" diff --git a/jjb/integration/integration-upload-distribution.sh b/jjb/integration/integration-upload-distribution.sh index 07bba5e613..7b09aa1f32 100644 --- a/jjb/integration/integration-upload-distribution.sh +++ b/jjb/integration/integration-upload-distribution.sh @@ -1,7 +1,9 @@ #!/bin/bash set -xeu -o pipefail -BUNDLE_VERSION=$(xpath "${BUNDLE_POM}" '/project/version/text()' 2> /dev/null) +# TODO: remove the second xpath command once the old version in CentOS 7 is not used any more +BUNDLE_VERSION=$(xpath -e '/project/version/text()' "${BUNDLE_POM}" 2>/dev/null || + xpath "${BUNDLE_POM}" '/project/version/text()' 2>/dev/null) BUNDLEFOLDER="${KARAF_ARTIFACT}-${BUNDLE_VERSION}" BUNDLE="${BUNDLEFOLDER}.zip" BUNDLE_PATH="/tmp/r/org/opendaylight/${KARAF_PROJECT}/${KARAF_ARTIFACT}/${BUNDLE_VERSION}/${BUNDLE}" diff --git a/jjb/releng-maven-mri-stage.sh b/jjb/releng-maven-mri-stage.sh index 9dfb7859e0..823a03f962 100644 --- a/jjb/releng-maven-mri-stage.sh +++ b/jjb/releng-maven-mri-stage.sh @@ -18,7 +18,9 @@ staging_repo=$(sed -n -e 's/Staging repository \(.*\) created\./\1/p' "$TMP_FILE mkdir -p "$WORKSPACE/archives" echo "$staging_repo ${NEXUS_URL}/content/repositories/$staging_repo" | tee -a "$WORKSPACE/archives/staging-repo.txt" -staged_version=$(find . -name '*karaf*.pom' -exec xpath {} '/project/version/text()' \; 2> /dev/null) +# TODO: remove the second xpath command once the old version in CentOS 7 is not used any more +staged_version=$(find . -name '*karaf*.pom' -exec \ + sh -c 'xpath -e "/project/version/text()" "$1" 2>/dev/null || xpath "$1" "/project/version/text()" 2>/dev/null' xpath.sh {} \;) BUNDLE_URL="${NEXUS_URL}/content/repositories/$staging_repo/org/opendaylight/${PROJECT}/${KARAF_ARTIFACT}/${staged_version}/${KARAF_ARTIFACT}-${staged_version}.zip" # Cleanup -- 2.36.6