#!/bin/sh # RUN IN REPO ROOT DIR !! export IMAGE_PREFIX="git.ego.freeddns.org/egommerce/identity" export BUILDER_IMAGE="egommerce-builder:identity" export BUILD_TIME=$(date +"%Y%m%d%H%M%S") export SERVER_IMAGE="$IMAGE_PREFIX-svc" TARGET=${1:-latest} [ ! -d "src/vendor" ] && sh -c "cd src; go mod vendor" echo "Building tmp $IMAGE_PREFIX image..." docker build --rm -t $BUILDER_IMAGE -f Dockerfile.builder . if [ $TARGET = "latest" ] then # PROD docker build \ --build-arg SVC_NAME=identity-service \ --build-arg SVC_VER="1.0" \ --build-arg BIN_OUTPUT=/go/bin/server \ --build-arg BUILDER_IMAGE=$BUILDER_IMAGE \ --build-arg BUILD_TIME \ --rm --cache-from $SERVER_IMAGE:$TARGET \ -t $SERVER_IMAGE:$TARGET \ -f Dockerfile.target . >/dev/null 2>&1 && echo "Successfully tagged $SERVER_IMAGE:$TARGET" else # DEV docker build \ --build-arg SVC_NAME=identity-service \ --build-arg SVC_VER="dev" \ --build-arg BIN_OUTPUT=/go/bin/server \ --build-arg BUILDER_IMAGE=$BUILDER_IMAGE \ --build-arg BUILD_TIME \ --rm --no-cache -t $SERVER_IMAGE:$TARGET \ -f Dockerfile.target . >/dev/null 2>&1 && echo "Successfully tagged $SERVER_IMAGE:$TARGET" fi echo "Done."