Files
acs-community-packaging/scripts/travis/verifyReleaseTag.sh
David Edwards 3237b95d9c Update verifyReleaseTag.sh
Instead of using a hard coded string the image name is retrieved from the docker-alfresco/pom.xml
2020-03-02 17:13:54 +00:00

36 lines
1.4 KiB
Bash
Executable File

#!/usr/bin/env bash
set -e
# get the image name from the pom file
alfresco_docker_image=$(mvn help:evaluate -f ./docker-alfresco/pom.xml -Dexpression=image.name -q -DforceStdout)
if [ -v ${release_version} ]||[ -z ${release_version} ]; then
# if we don't have a user added release version, get the verison from the pom
pom_version=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)
if echo $pom_version | grep -q ".*-SNAPSHOT"; then
release_version=${pom_version%-*} # remove everything after the last '-'
else
release_version=$pom_version
fi
fi
docker_image_full_name="$alfresco_docker_image:$release_version"
function docker_image_exists() {
local image_full_name="$1"; shift
local wait_time="${1:-5}"
local search_term='Pulling|is up to date|not found'
echo "Looking to see if $image_full_name already exists..."
local result="$((timeout --preserve-status "$wait_time" docker 2>&1 pull "$image_full_name" &) | grep -v 'Pulling repository' | egrep -o "$search_term")"
test "$result" || { echo "Timed out too soon. Try using a wait_time greater than $wait_time..."; return 1 ;}
if echo $result | grep -vq 'not found'; then
true
else
false
fi
}
if docker_image_exists $docker_image_full_name; then
echo "Tag $release_version already pushed, release process will interrupt."
exit -1
else
echo "The $release_version tag was not found"
fi