From 941b9b017e663d27258a47490caae0dd6eadfdd1 Mon Sep 17 00:00:00 2001 From: Mike Lang Date: Sun, 30 Dec 2018 03:29:38 -0800 Subject: [PATCH] build script: Add ability to push to remote repository after building --- build | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/build b/build index f51f2c5..5970bf3 100755 --- a/build +++ b/build @@ -5,10 +5,17 @@ set -eu # Builds the docker images. # Usage: ./build {COMPONENTS}, or just ./build to build all. # The resulting images are named wubloader-COMPONENT. +# Pass PUSH=true to also push the resulting images, or PUSH=latest to push them as :latest tag # The different images we can build COMPONENTS=(downloader restreamer) +# Define push if not already defined +PUSH=${PUSH:-} + +# Base is the repository namespace information, not including the wubloader-component part. +BASE="quay.io/ekimekim" + # The docker image tag, derived from the git commit + whether working tree is clean TAG=$(git rev-parse --short HEAD) if [ -n "$(git status --porcelain --untracked-files=no)" ]; then @@ -21,10 +28,20 @@ fi for component in "${COMPONENTS[@]}"; do echo "Building image for $component" + latest="$BASE/wubloader-$component:latest" + specific="$BASE/wubloader-$component:$TAG" docker build \ -f "$component/Dockerfile" \ - -t "wubloader-$component:latest" \ - -t "wubloader-$component:$TAG" \ + -t "$latest" \ + -t "$specific" \ . echo "Built image wubloader-$component:$TAG" + if [ -n "$PUSH" ]; then + echo "Pushing tag $specific" + docker push "$specific" + fi + if [ "$PUSH" == "latest" ]; then + echo "Pushing tag $latest" + docker push "$latest" + fi done