[ARVADOS-DEV] updated: 76e93fdb16b22280c2ed396e1be606483771db82
Git user
git at public.arvados.org
Thu Feb 25 18:14:09 UTC 2021
Summary of changes:
jenkins/testing_to_stable_publish_packages.sh | 27 ++++++++++++++++++++-------
jenkins/upload_packages_testing_to_stable.sh | 9 ++-------
2 files changed, 22 insertions(+), 14 deletions(-)
via 76e93fdb16b22280c2ed396e1be606483771db82 (commit)
from a6cdd9e8acfebd95518bb3e170a83664affd81f8 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
commit 76e93fdb16b22280c2ed396e1be606483771db82
Author: Ward Vandewege <ward at curii.com>
Date: Thu Feb 25 13:13:00 2021 -0500
Bugfix for the `testing_to_stable_publish_packages.sh` script to reflect
our switch to aptly.
Some refactoring to remove exitcode nonsense.
refs #17218
Arvados-DCO-1.1-Signed-off-by: Ward Vandewege <ward at curii.com>
diff --git a/jenkins/testing_to_stable_publish_packages.sh b/jenkins/testing_to_stable_publish_packages.sh
index 419339d..12ca800 100755
--- a/jenkins/testing_to_stable_publish_packages.sh
+++ b/jenkins/testing_to_stable_publish_packages.sh
@@ -31,8 +31,8 @@ done
# Make sure the variables are set or provide an example of how to use them
if [ -z "${packages}" ]; then
echo "You must provide a comma-separated list of packages to publish, ie."
- echo "* Debian: --packages=arvados-ws_0.1.20170906144951.22418ed6e-1_amd64.deb,keep-exercise_*,*170906144951*"
- echo "* Centos: --packages=arvados-ws_0.1.20170906144951.22418ed6e-1.x86_64.rpm,keep-exercise_0.1.20170906144951.22418ed6e-1.x86_64.rpm,crunch-dispatch-local_0.1.20170906144951.22418ed6e-1.x86_64.rpm"
+ echo "* Debian: --packages=arvados-ws:0.1.20170906144951.22418ed6e-1,keep-exercise:1.2.3-1"
+ echo "* Centos: --packages=arvados-ws:0.1.20170906144951.22418ed6e-1,keep-exercise:1.2.3-1"
exit 254
fi
if [ -z "${distros}" ]; then
@@ -43,10 +43,11 @@ if [ -z "${distros}" ]; then
fi
DIST_LIST=$(echo ${distros} | sed s/,/' '/g |tr '[:upper:]' '[:lower:]')
-PACKAGES=$(echo ${packages} | sed s/,/' '/g)
+CENTOS_PACKAGES=$(echo ${packages} | sed 's/\([a-z-]*\):[[:blank:]]*\([0-9.-]*\)/\1*\2*/g; s/,/ /g;')
+DEBIAN_PACKAGES=$(echo ${packages} | sed 's/\([a-z-]*\):[[:blank:]]*\([0-9.-]*\)/\1 (= \2)/g;')
if ( echo ${DIST_LIST} |grep -q centos ); then
- for DISTNAME in ${DIST_LIST}; do
+ for DISTNAME in ${DIST_LIST}; do
case ${DISTNAME} in
'centos7')
DIST_DIR_TEST='7/testing/x86_64'
@@ -60,7 +61,7 @@ if ( echo ${DIST_LIST} |grep -q centos ); then
cd ${RPM_REPO_BASE_DIR}
mkdir -p ${RPM_REPO_BASE_DIR}/CentOS/${DIST_DIR_PROD}
echo "Copying packages ..."
- for P in ${PACKAGES}; do
+ for P in ${CENTOS_PACKAGES}; do
cp ${RPM_REPO_BASE_DIR}/CentOS/${DIST_DIR_TEST}/${P} ${RPM_REPO_BASE_DIR}/CentOS/${DIST_DIR_PROD}/
if [ $? -ne 0 ]; then
FAILED_PACKAGES="${FAILED_PACKAGES} ${P}"
@@ -73,9 +74,20 @@ else
for DISTNAME in ${DIST_LIST}; do
ADDED=()
echo "Copying packages ..."
- for P in ${PACKAGES}; do
- aptly repo copy ${DISTNAME}-testing ${DISTNAME} $(basename ${P})
+ OLDIFS=$IFS
+ IFS=$','
+ for P in ${DEBIAN_PACKAGES}; do
+ aptly repo search ${DISTNAME}-testing "${P}"
+ if [ $? -ne 0 ]; then
+ FAILED_PACKAGES="${FAILED_PACKAGES} ${P}"
+ else
+ aptly repo copy ${DISTNAME}-testing ${DISTNAME} "${P}"
+ if [ $? -ne 0 ]; then
+ FAILED_PACKAGES="${FAILED_PACKAGES} ${P}"
+ fi
+ fi
done
+ IFS=$OLDIFS
echo "Publishing ${DISTNAME} repository..."
aptly publish update ${DISTNAME} filesystem:${DISTNAME}:
done
@@ -84,6 +96,7 @@ fi
if [ "${FAILED_PACKAGES}" != "" ]; then
echo "PACKAGES THAT FAILED TO PUBLISH"
echo "${FAILED_PACKAGES}"
+ exit 252
else
echo "All packages published correctly"
fi
diff --git a/jenkins/upload_packages_testing_to_stable.sh b/jenkins/upload_packages_testing_to_stable.sh
index 74ee9cf..5b3dd38 100755
--- a/jenkins/upload_packages_testing_to_stable.sh
+++ b/jenkins/upload_packages_testing_to_stable.sh
@@ -42,7 +42,7 @@ fi
# Sanitize the vars in a way suitable to be used by the remote 'publish_packages.sh' script
# Just to make copying a single line, and not having to loop over it
-PACKAGES_LIST=$(echo ${PACKAGES_TO_PUBLISH} | sed 's/versions://g; s/\([a-z-]*\):[[:blank:]]*\([0-9.-]*\)/\1*\2*,/g; s/[[:blank:]]//g; s/,$//g;')
+PACKAGES_LIST=$(echo ${PACKAGES_TO_PUBLISH} | sed 's/versions://g; s/\([a-z-]*\):[[:blank:]]*\([0-9.-]*\)/\1:\2,/g; s/[[:blank:]]//g; s/,$//g;')
DISTROS=$(echo "${LSB_DISTRIB_CODENAMES}"|sed s/[[:space:]]/,/g |tr '[:upper:]' '[:lower:]')
@@ -63,12 +63,7 @@ ssh -t \
-o "StrictHostKeyChecking no" \
-o "ConnectTimeout 5" \
${REPO_SERVER} \
- "${REMOTE_CMD}" | tee ${TMP_FILE}
+ "${REMOTE_CMD}"
ECODE=$?
-grep -q "FAILED TO PUBLISH" ${TMP_FILE}
-if [ $? -eq 0 ]; then
- ECODE=1
-fi
-rm -f ${TMP_FILE}
exit ${ECODE}
-----------------------------------------------------------------------
hooks/post-receive
--
More information about the arvados-commits
mailing list