docker-firefox/hooks/post_push
2018-02-14 20:50:50 -05:00

40 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
#
# Post push hook for Docker Automated Build.
#
# This hook adds the 'latest' tag to the image.
#
set -e # Exit immediately if a command exits with a non-zero status.
set -u # Treat unset variables as an error.
source custom_hook_env
echo "Environment variables:
IMAGE_NAME=$IMAGE_NAME
DOCKER_REPO=$DOCKER_REPO
DOCKER_TAG=$DOCKER_TAG
SOURCE_BRANCH=$SOURCE_BRANCH
IMAGE_VERSION=$IMAGE_VERSION
"
if [[ "$DOCKER_TAG" =~ v[0-9]+\.[0-9]+\.[0-9]+-alpha[0-9]+$ ]]; then
DOCKER_NEWTAG="$(echo "$DOCKER_TAG" | sed 's/-alpha[0-9]\+$/-alpha/')"
elif [[ "$DOCKER_TAG" =~ v[0-9]+\.[0-9]+\.[0-9]+-beta[0-9]+$ ]]; then
DOCKER_NEWTAG="$(echo "$DOCKER_TAG" | sed 's/-beta[0-9]\+$/-beta/')"
elif [[ "$DOCKER_TAG" =~ v[0-9]+\.[0-9]+\.[0-9]+-rc[0-9]+$ ]]; then
DOCKER_NEWTAG="$(echo "$DOCKER_TAG" | sed 's/-rc[0-9]\+$/-rc/')"
elif [[ "$DOCKER_TAG" =~ v[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
DOCKER_NEWTAG="latest"
else
echo "ERROR: Invalid docker tag."
exit 1
fi
echo "Adding tag '$DOCKER_NEWTAG' to image..."
docker tag $IMAGE_NAME ${DOCKER_REPO}:$DOCKER_NEWTAG
echo "Pushing image..."
docker push ${DOCKER_REPO}:$DOCKER_NEWTAG
echo "post_push hook terminated successfully."