X-Git-Url: https://gerrit.nordix.org/gitweb?a=blobdiff_plain;f=jjb%2Fcloud-infra%2Fscripts%2Foom-upload.sh;h=696e0ea747dc605352bfa45fdf77c10c53acc4d6;hb=dd0cfdc1118d957eae5fca2952f455eaa9064ad7;hp=6e9e6c4ea3296da5ce7ea68145d3a1e3c3abdaba;hpb=d46fb6f2b321836f42e94f8538eb88e98bb1afb2;p=infra%2Fcicd.git diff --git a/jjb/cloud-infra/scripts/oom-upload.sh b/jjb/cloud-infra/scripts/oom-upload.sh index 6e9e6c4e..696e0ea7 100644 --- a/jjb/cloud-infra/scripts/oom-upload.sh +++ b/jjb/cloud-infra/scripts/oom-upload.sh @@ -21,17 +21,29 @@ set -o errexit set -o pipefail -ONAP_UMBRELLA_CHART="${WORKSPACE}/build/onap-oom/kubernetes/dist/packages/onap-${ONAP_OOM_CHART_VERSION}.tgz" -IMAGES_LIST="${WORKSPACE}/images.txt" -export NORDIX_ARM_REPO="nordix-oom" +YQ_BIN="${WORKSPACE}/bin/yq" +ONAP_OOM_GIT_REVISION=$(cd "${WORKSPACE}/build/onap-oom" && git rev-parse --short HEAD) +ONAP_OOM_VERSION=$(${YQ_BIN} e '.version' "${WORKSPACE}/build/onap-oom/kubernetes/onap/Chart.yaml") +ONAP_OOM_VERSION_LATEST="${ONAP_OOM_VERSION//${ONAP_OOM_GIT_REVISION}/latest}" + +ONAP_UMBRELLA_CHART="${WORKSPACE}/build/onap-oom/kubernetes/dist/packages/onap-${ONAP_OOM_VERSION}.tgz" +IMAGES_LIST="${WORKSPACE}/onap-${ONAP_OOM_VERSION}_images.txt" + +export NORDIX_ARM_REPO="onap" export ARTIFACT_ARM_FOLDER="oom" export BUILD_IDENTIFIER="${ONAP_OOM_GIT_REVISION}" export NORDIX_ARTIFACT_URL="${NORDIX_ARM_HTTPS_URL}/${NORDIX_ARM_REPO}/${ARTIFACT_ARM_FOLDER}/${BUILD_IDENTIFIER}" +export NORDIX_ARTIFACT_URL_LATEST="${NORDIX_ARM_HTTPS_URL}/${NORDIX_ARM_REPO}/${ARTIFACT_ARM_FOLDER}/latest" echo "Info : Pushing ONAP umbrella chart to Nordix Harbor" -${HELM_BIN} push "${ONAP_UMBRELLA_CHART}" "${NORDIX_REGISTRY}" +HELM_BIN="${WORKSPACE}/bin/helm" +${HELM_BIN} repo remove onaptest || true +${HELM_BIN} repo add onaptest "${NORDIX_REGISTRY}/chartrepo/onaptest" +${HELM_BIN} push -f "${ONAP_UMBRELLA_CHART}" --username "${HARBOR_USERNAME}" --password "${HARBOR_PASSWORD}" onaptest +# Also push with "latest" version +${HELM_BIN} push -f "${ONAP_UMBRELLA_CHART}" --username "${HARBOR_USERNAME}" --password "${HARBOR_PASSWORD}" --version "${ONAP_OOM_VERSION_LATEST}" onaptest -export BUILD_ARTIFACTS="${IMAGES_LIST}" +export BUILD_ARTIFACTS="${ONAP_UMBRELLA_CHART} ${IMAGES_LIST}" echo "Info : Uploading ${BUILD_ARTIFACTS} to Nordix ARM ${NORDIX_ARM_REPO} repository" for BUILD_ARTIFACT in $BUILD_ARTIFACTS; do echo "Info : Generating checksums for $BUILD_ARTIFACT" @@ -39,7 +51,11 @@ for BUILD_ARTIFACT in $BUILD_ARTIFACTS; do ARTIFACT_SHASUM=$(shasum "${BUILD_ARTIFACT}" | cut -d' ' -f1) ARTIFACT_SHA256SUM=$(sha256sum "${BUILD_ARTIFACT}" | cut -d' ' -f1) - REMOTE_ARTIFACT=$(echo "${BUILD_ARTIFACT}" | sed 's/.*\///g') + REMOTE_ARTIFACT=$(basename "${BUILD_ARTIFACT}") + REMOTE_ARTIFACT_LATEST=$(basename "${BUILD_ARTIFACT//${ONAP_OOM_GIT_REVISION}/latest}") + # NOTE(cian): URL-encoding remote artifact as filename may contain special characters + REMOTE_ARTIFACT_QUOTED=$(echo -n "${REMOTE_ARTIFACT}" | python3 -c 'from sys import stdout, stdin; from urllib.parse import quote; stdout.write(quote(stdin.read()))') + REMOTE_ARTIFACT_LATEST_QUOTED=$(echo -n "${REMOTE_ARTIFACT_LATEST}" | python3 -c 'from sys import stdout, stdin; from urllib.parse import quote; stdout.write(quote(stdin.read()))') echo "Info : Uploading ${BUILD_ARTIFACT} to Nordix Artifactory" curl -s -S \ @@ -49,7 +65,16 @@ for BUILD_ARTIFACT in $BUILD_ARTIFACTS; do -H "X-Checksum-Sha256:${ARTIFACT_SHA256SUM}" \ -T "${BUILD_ARTIFACT}" \ "${NORDIX_ARTIFACT_URL}/${REMOTE_ARTIFACT}" - echo "Info : Artifact ${BUILD_ARTIFACT} is available on ${NORDIX_ARTIFACT_URL}/${REMOTE_ARTIFACT}" + echo "Info : Artifact ${BUILD_ARTIFACT} is available on ${NORDIX_ARTIFACT_URL}/${REMOTE_ARTIFACT_QUOTED}" + echo "Info : Uploading ${BUILD_ARTIFACT} to Nordix Artifactory as ${REMOTE_ARTIFACT_LATEST}" + curl -s -S \ + -H "X-JFrog-Art-Api:${NORDIX_ARM_TOKEN}" \ + -H "X-Checksum-MD5:${ARTIFACT_MD5SUM}" \ + -H "X-Checksum-Sha1:${ARTIFACT_SHASUM}" \ + -H "X-Checksum-Sha256:${ARTIFACT_SHA256SUM}" \ + -T "${BUILD_ARTIFACT}" \ + "${NORDIX_ARTIFACT_URL_LATEST}/${REMOTE_ARTIFACT_LATEST}" + echo "Info : Artifact ${BUILD_ARTIFACT} available on ${NORDIX_ARTIFACT_URL_LATEST}/${REMOTE_ARTIFACT_LATEST_QUOTED}" done echo "Done!"