16976: Support release candidates for our Python packages
[arvados.git] / build / run-build-docker-jobs-image.sh
index d1fb2ac67054dfdc31ce8a31401747c3a55aefbf..9d7e3777cd9421d93f02b73ebb881297cec8d467 100755 (executable)
@@ -149,7 +149,12 @@ else
        python_sdk_version="${ARVADOS_BUILDING_VERSION}-${ARVADOS_BUILDING_ITERATION}"
 fi
 
-cwl_runner_version_orig=$cwl_runner_version
+# What we use to tag the Docker image.  For release candidate
+# packages, the OS package has a "~rc" suffix, but Python requires
+# just an "rc" suffix.  Arvados-cwl-runner will be expecting the
+# Python-compatible version string when it tries to pull the Docker
+# image, but --build-arg is expecting the OS package version.
+cwl_runner_version_tag=$(echo -n $cwl_runner_version | sed s/~rc/rc/g)
 
 if [[ "${cwl_runner_version}" != "${ARVADOS_BUILDING_VERSION}" ]]; then
        cwl_runner_version="${cwl_runner_version}-1"
@@ -162,7 +167,7 @@ docker build $NOCACHE \
        --build-arg python_sdk_version=${python_sdk_version} \
        --build-arg cwl_runner_version=${cwl_runner_version} \
        --build-arg repo_version=${REPO} \
-       -t arvados/jobs:$cwl_runner_version_orig .
+       -t arvados/jobs:$cwl_runner_version_tag .
 
 ECODE=$?
 
@@ -186,7 +191,7 @@ if docker --version |grep " 1\.[0-9]\." ; then
 fi
 
 if ! [[ -z "$version_tag" ]]; then
-    docker tag $FORCE arvados/jobs:$cwl_runner_version_orig arvados/jobs:"$version_tag"
+    docker tag $FORCE arvados/jobs:$cwl_runner_version_tag arvados/jobs:"$version_tag"
     ECODE=$?
 
     if [[ "$ECODE" != "0" ]]; then
@@ -211,7 +216,7 @@ else
         if ! [[ -z "$version_tag" ]]; then
             docker_push arvados/jobs:"$version_tag"
         else
-           docker_push arvados/jobs:$cwl_runner_version_orig
+           docker_push arvados/jobs:$cwl_runner_version_tag
         fi
         title "upload arvados images finished (`timer`)"
     else