set -o errexit
set -o pipefail
+YQ_BIN="${WORKSPACE}/bin/yq"
ONAP_OOM_GIT_REVISION=$(cd "${WORKSPACE}/build/onap-oom" && git rev-parse --short HEAD)
-ONAP_UMBRELLA_CHART="${WORKSPACE}/build/onap-oom/kubernetes/dist/packages/onap-*+${ONAP_OOM_GIT_REVISION}.tgz"
-IMAGES_LIST="${WORKSPACE}/onap-*-${ONAP_OOM_GIT_REVISION}_images.txt"
+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"
-# NOTE(cian): Leaving this commented out for the moment.
-#echo "Info : Pushing ONAP umbrella chart to Nordix Harbor"
-#HELM_BIN="${WORKSPACE}/bin/helm"
-#${HELM_BIN} push "${ONAP_UMBRELLA_CHART}" "${NORDIX_REGISTRY}"
+echo "Info : Pushing ONAP umbrella chart to Nordix Harbor"
+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="${ONAP_UMBRELLA_CHART} ${IMAGES_LIST}"
echo "Info : Uploading ${BUILD_ARTIFACTS} to Nordix ARM ${NORDIX_ARM_REPO} repository"
ARTIFACT_SHA256SUM=$(sha256sum "${BUILD_ARTIFACT}" | cut -d' ' -f1)
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=$(echo -n "${REMOTE_ARTIFACT}" | python3 -c 'from sys import stdout, stdin; from urllib.parse import quote; stdout.write(quote(stdin.read()))')
+ 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 \
-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!"