mirror of
https://github.com/Alfresco/acs-community-packaging.git
synced 2025-09-10 14:12:09 +00:00
REPO-4735 Create script to check if docker image tag exists
This commit is contained in:
@@ -22,7 +22,8 @@ branches:
|
||||
- feature/REPO-4735_Add-release-stages
|
||||
|
||||
stages:
|
||||
- test
|
||||
- name: test
|
||||
if: branch !=feature/REPO-4735_Add-release-stages
|
||||
- engineering release
|
||||
- company release
|
||||
|
||||
@@ -99,6 +100,10 @@ jobs:
|
||||
# only on develop or master branch
|
||||
if: fork = false AND branch = feature/REPO-4735_Add-release-stages AND commit_message !~ /\[no-release\]/
|
||||
#TODO
|
||||
env:
|
||||
- release.version=
|
||||
- development.version=
|
||||
before_install: ./scripts/travis/verifyReleaseTag.sh
|
||||
name: "Maven release"
|
||||
install: skip # Release command from bamboo
|
||||
script:
|
||||
|
33
scripts/travis/verifyReleaseTag.sh
Normal file
33
scripts/travis/verifyReleaseTag.sh
Normal file
@@ -0,0 +1,33 @@
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
|
||||
alfresco_docker_image="alfresco/alfresco-content-repository-community"
|
||||
release_version=""
|
||||
if [[-v ${release.version} || -z ${release.version}]]; then
|
||||
release_version=${release.version}
|
||||
else
|
||||
release_version=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)
|
||||
fi
|
||||
docker_image_full_name="$alfresco_docker_image:$release_version"
|
||||
echo docker_image_full_name
|
||||
|
||||
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'
|
||||
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."
|
||||
else
|
||||
echo "The $release_version tag was not found"
|
||||
fi
|
||||
|
||||
|
Reference in New Issue
Block a user