Repair minor problems in self-release
[releng/global-jjb.git] / shell / release-job.sh
index 2ac368f..7b22b28 100644 (file)
 echo "---> release-job.sh"
 set -eu -o pipefail
 
-#Python bits. Remove when centos 7.7 builder is avaliable.
-if [ -d "/opt/pyenv" ]; then
-    echo "INFO: Setting up pyenv"
-    export PYENV_ROOT="/opt/pyenv"
-    export PATH="$PYENV_ROOT/bin:$PATH"
-fi
-PYTHONPATH=$(pwd)
-export PYTHONPATH
-pyenv local 3.6.4
-export PYENV_VERSION="3.6.4"
-pip install --user lftools[nexus] jsonschema niet yq
+set +u
+python3 -m venv /tmp/v/venv/
+# shellcheck disable=SC1091
+source /tmp/v/venv/bin/activate
+set -u
+python -m pip install lftools[nexus] jsonschema niet yq
 
 #Functions.
 
@@ -83,8 +78,8 @@ set_variables_maven(){
     # Continuing displaying Release Information (Maven)
     printf "\t%-30s\n" RELEASE_MAVEN_INFO:
     printf "\t%-30s %s\n" VERSION: $VERSION
-    printf "\t%-30s %s\n" LOG DIR: $LOG_DIR
-    printf "\t%-30s %s\n" LOGS URL: $LOGS_URL
+    printf "\t%-30s %s\n" LOG_DIR: $LOG_DIR
+    printf "\t%-30s %s\n" LOGS_URL: $LOGS_URL
 }
 
 set_variables_container(){
@@ -130,6 +125,18 @@ verify_version(){
     fi
 }
 
+verify_version_match_release(){
+    wget -P /tmp "${LOGS_URL}/"console.log.gz
+    echo "INFO: Comparing version $VERSION with log snippet from maven-stage:"
+    if zgrep "Successfully uploaded" /tmp/console.log.gz | grep "$VERSION"; then
+        echo "INFO: version $VERSION matches maven-stage artifacts"
+    else
+        echo "ERROR: Defined version in release file does not match staging repo artifacts version to be released"
+        echo "       Please make sure maven-stage job selected as candidate and release version are correct"
+        exit 1
+    fi
+}
+
 tag(){
     # Import public signing key
     gpg --import "$SIGNING_PUBKEY"
@@ -254,6 +261,7 @@ if [[ "$DISTRIBUTION_TYPE" == "maven" ]]; then
     fi
     set_variables_maven
     verify_version
+    verify_version_match_release
     maven_release_file
 elif [[ "$DISTRIBUTION_TYPE" == "container" ]]; then
     wget -q https://raw.githubusercontent.com/lfit/releng-global-jjb/master/schema/release-container-schema.yaml