X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/f04cfcce18c6e4bd1faf3140ccbc835328580024..a894a61cc9004e184bc63f9f0a785f555d6c6829:/build/run-build-docker-jobs-image.sh diff --git a/build/run-build-docker-jobs-image.sh b/build/run-build-docker-jobs-image.sh index fcf849bc4d..22f6f54288 100755 --- a/build/run-build-docker-jobs-image.sh +++ b/build/run-build-docker-jobs-image.sh @@ -54,21 +54,23 @@ do esac done - EXITCODE=0 -COLUMNS=80 - -title () { - printf "\n%*s\n\n" $(((${#title}+$COLUMNS)/2)) "********** $1 **********" +exit_cleanly() { + trap - INT + report_outcomes + exit $EXITCODE } +COLUMNS=80 +. $WORKSPACE/build/run-library.sh + docker_push () { if [[ ! -z "$tags" ]] then for tag in $( echo $tags|tr "," " " ) do - $DOCKER tag -f $1 $1:$tag + $DOCKER tag $1 $1:$tag done fi @@ -82,17 +84,9 @@ docker_push () { done if [[ "$ECODE" != "0" ]]; then - title "!!!!!! docker push $* failed !!!!!!" EXITCODE=$(($EXITCODE + $ECODE)) fi -} - -timer_reset() { - t0=$SECONDS -} - -timer() { - echo -n "$(($SECONDS - $t0))s" + checkexit $ECODE "docker push $*" } # Sanity check @@ -124,22 +118,20 @@ timer_reset # clean up the docker build environment cd "$WORKSPACE" -cd docker -rm -f jobs-image -rm -f config.yml - -# Get test config.yml file -cp $HOME/docker/config.yml . - -./build.sh jobs-image +cd docker/jobs +if [[ ! -z "$tags" ]]; then + docker build --build-arg COMMIT=${tags/,*/} -t arvados/jobs . +else + docker build -t arvados/jobs . +fi ECODE=$? if [[ "$ECODE" != "0" ]]; then - title "!!!!!! docker BUILD FAILED !!!!!!" EXITCODE=$(($EXITCODE + $ECODE)) fi +checkexit $ECODE "docker build" title "docker build complete (`timer`)" title "uploading images" @@ -149,16 +141,16 @@ timer_reset if [[ "$ECODE" != "0" ]]; then title "upload arvados images SKIPPED because build failed" else - if [[ $upload == true ]]; then - ## 20150526 nico -- *sometimes* dockerhub needs re-login + if [[ $upload == true ]]; then + ## 20150526 nico -- *sometimes* dockerhub needs re-login ## even though credentials are already in .dockercfg docker login -u arvados docker_push arvados/jobs - title "upload arvados images complete (`timer`)" + title "upload arvados images finished (`timer`)" else - title "upload arvados images SKIPPED because no --upload option set" + title "upload arvados images SKIPPED because no --upload option set (`timer`)" fi fi -exit $EXITCODE +exit_cleanly