Merge "Extract common RPM test builder steps to macro"
[releng/builder.git] / jjb / packaging / build-rpm.sh
index 70f5e57a7d8aa961a84fc255584eba50bc0bfff6..7613e521916e3843a471217ba52e5a48c59be033 100644 (file)
@@ -20,22 +20,32 @@ $PYTHON -m pip install -r "$WORKSPACE/packaging/packages/requirements.txt"
 # If URL is to zip, check if there's a tar.gz available to avoid repackaging.
 if [[ $DOWNLOAD_URL = *.zip ]]; then
   # shellcheck disable=SC2154
-  candidate_tarball_url="${{DOWNLOAD_URL//zip/tar.gz}}"
+  candidate_tarball_url="${DOWNLOAD_URL//zip/tar.gz}"
   # shellcheck disable=SC2154
   url_status=$(curl --silent --head --location --output /dev/null --write-out \
-    '%{{http_code}}' "$candidate_tarball_url")
+    '%{http_code}' "$candidate_tarball_url")
   if [[ $url_status = 2* ]]; then
     DOWNLOAD_URL="$candidate_tarball_url"
   fi
 fi
 
 # Build release specified by build params
-"$WORKSPACE/packaging/packages/build.py" --rpm --download_url "$DOWNLOAD_URL" \
+"$WORKSPACE/packaging/packages/build.py" --rpm \
                                          --changelog_name "$CHANGELOG_NAME" \
-                                         --changelog_email "$CHANGELOG_EMAIL"
+                                         --changelog_email "$CHANGELOG_EMAIL" \
+                                         direct \
+                                         --download_url "$DOWNLOAD_URL"
 
-# Move RPMs (SRPM and noarch) to dir of files that will be uploaded to Nexus
-UPLOAD_FILES_PATH="$WORKSPACE/upload_files"
-mkdir -p "$UPLOAD_FILES_PATH"
-mv "/home/$USER/rpmbuild/RPMS/noarch/"*.rpm "$_"
-mv "/home/$USER/rpmbuild/SRPMS/"*.rpm "$_"
+# Publish RPMs to Nexus if in production Jenkins, else host on sandbox Jenkins
+if [ "$SILO" == "sandbox" ]; then
+  echo "Not uploading RPMs to Nexus because running in sandbox"
+elif  [ "$SILO" == "releng" ]; then
+  # Move RPMs (SRPM and noarch) to dir of files that will be uploaded to Nexus
+  UPLOAD_FILES_PATH="$WORKSPACE/upload_files"
+  mkdir -p "$UPLOAD_FILES_PATH"
+  cp "/home/$USER/rpmbuild/RPMS/noarch/"*.rpm "$_"
+  cp "/home/$USER/rpmbuild/SRPMS/"*.rpm "$_"
+else
+  echo "Unknown Jenkins silo: $SILO"
+  exit 1
+fi