CI: Ensure travis retries during push

This commit is contained in:
cytopia
2020-09-15 23:25:10 +02:00
parent 4be4c2eded
commit 42df419376

View File

@@ -88,44 +88,44 @@ before_script:
###
script:
- if [ "${TRAVIS_PULL_REQUEST}" == "false" ]; then
make login USERNAME="${DOCKER_USERNAME}" PASSWORD="${DOCKER_PASSWORD}";
retry make login USERNAME="${DOCKER_USERNAME}" PASSWORD="${DOCKER_PASSWORD}";
if [ "${TRAVIS_BRANCH}" == "master" ]; then
echo "Pushing latest";
make push TAG="${PHP}-base" &&
make push TAG="${PHP}-mods" &&
make push TAG="${PHP}-prod" &&
make push TAG="${PHP}-work";
retry make push TAG="${PHP}-base" &&
retry make push TAG="${PHP}-mods" &&
retry make push TAG="${PHP}-prod" &&
retry make push TAG="${PHP}-work";
elif [[ ${TRAVIS_BRANCH} =~ ^(release-[.0-9]+)$ ]]; then
echo "Pushing branch ${TRAVIS_BRANCH}";
make tag OLD_TAG="${PHP}-base" NEW_TAG="${PHP}-base-${TRAVIS_BRANCH}" &&
make tag OLD_TAG="${PHP}-mods" NEW_TAG="${PHP}-mods-${TRAVIS_BRANCH}" &&
make tag OLD_TAG="${PHP}-prod" NEW_TAG="${PHP}-prod-${TRAVIS_BRANCH}" &&
make tag OLD_TAG="${PHP}-work" NEW_TAG="${PHP}-work-${TRAVIS_BRANCH}" &&
make push TAG="${PHP}-base-${TRAVIS_BRANCH}" &&
make push TAG="${PHP}-mods-${TRAVIS_BRANCH}" &&
make push TAG="${PHP}-prod-${TRAVIS_BRANCH}" &&
make push TAG="${PHP}-work-${TRAVIS_BRANCH}";
retry make tag OLD_TAG="${PHP}-base" NEW_TAG="${PHP}-base-${TRAVIS_BRANCH}" &&
retry make tag OLD_TAG="${PHP}-mods" NEW_TAG="${PHP}-mods-${TRAVIS_BRANCH}" &&
retry make tag OLD_TAG="${PHP}-prod" NEW_TAG="${PHP}-prod-${TRAVIS_BRANCH}" &&
retry make tag OLD_TAG="${PHP}-work" NEW_TAG="${PHP}-work-${TRAVIS_BRANCH}" &&
retry make push TAG="${PHP}-base-${TRAVIS_BRANCH}" &&
retry make push TAG="${PHP}-mods-${TRAVIS_BRANCH}" &&
retry make push TAG="${PHP}-prod-${TRAVIS_BRANCH}" &&
retry make push TAG="${PHP}-work-${TRAVIS_BRANCH}";
elif [ -n "${TRAVIS_TAG}" ]; then
echo "Pushing tag ${TRAVIS_TAG}";
make tag OLD_TAG="${PHP}-base" NEW_TAG="${PHP}-base-${TRAVIS_TAG}" &&
make tag OLD_TAG="${PHP}-mods" NEW_TAG="${PHP}-mods-${TRAVIS_TAG}" &&
make tag OLD_TAG="${PHP}-prod" NEW_TAG="${PHP}-prod-${TRAVIS_TAG}" &&
make tag OLD_TAG="${PHP}-work" NEW_TAG="${PHP}-work-${TRAVIS_TAG}" &&
make push TAG="${PHP}-base-${TRAVIS_TAG}" &&
make push TAG="${PHP}-mods-${TRAVIS_TAG}" &&
make push TAG="${PHP}-prod-${TRAVIS_TAG}" &&
make push TAG="${PHP}-work-${TRAVIS_TAG}";
retry make tag OLD_TAG="${PHP}-base" NEW_TAG="${PHP}-base-${TRAVIS_TAG}" &&
retry make tag OLD_TAG="${PHP}-mods" NEW_TAG="${PHP}-mods-${TRAVIS_TAG}" &&
retry make tag OLD_TAG="${PHP}-prod" NEW_TAG="${PHP}-prod-${TRAVIS_TAG}" &&
retry make tag OLD_TAG="${PHP}-work" NEW_TAG="${PHP}-work-${TRAVIS_TAG}" &&
retry make push TAG="${PHP}-base-${TRAVIS_TAG}" &&
retry make push TAG="${PHP}-mods-${TRAVIS_TAG}" &&
retry make push TAG="${PHP}-prod-${TRAVIS_TAG}" &&
retry make push TAG="${PHP}-work-${TRAVIS_TAG}";
elif [ "${TRAVIS_EVENT_TYPE}" = "cron" ]; then
if MY_TAG="$( git describe --exact-match "$(git rev-parse HEAD)" 2>/dev/null )"; then
echo "Pushing cron tag ${MY_TAG}";
make tag OLD_TAG="${PHP}-base" NEW_TAG="${PHP}-base-${MY_TAG}" &&
make tag OLD_TAG="${PHP}-mods" NEW_TAG="${PHP}-mods-${MY_TAG}" &&
make tag OLD_TAG="${PHP}-prod" NEW_TAG="${PHP}-prod-${MY_TAG}" &&
make tag OLD_TAG="${PHP}-work" NEW_TAG="${PHP}-work-${MY_TAG}" &&
make push TAG="${PHP}-base-${MY_TAG}" &&
make push TAG="${PHP}-mods-${MY_TAG}" &&
make push TAG="${PHP}-prod-${MY_TAG}" &&
make push TAG="${PHP}-work-${MY_TAG}";
retry make tag OLD_TAG="${PHP}-base" NEW_TAG="${PHP}-base-${MY_TAG}" &&
retry make tag OLD_TAG="${PHP}-mods" NEW_TAG="${PHP}-mods-${MY_TAG}" &&
retry make tag OLD_TAG="${PHP}-prod" NEW_TAG="${PHP}-prod-${MY_TAG}" &&
retry make tag OLD_TAG="${PHP}-work" NEW_TAG="${PHP}-work-${MY_TAG}" &&
retry make push TAG="${PHP}-base-${MY_TAG}" &&
retry make push TAG="${PHP}-mods-${MY_TAG}" &&
retry make push TAG="${PHP}-prod-${MY_TAG}" &&
retry make push TAG="${PHP}-work-${MY_TAG}";
fi
else
echo "Skipping push to dockerhub on normal branches";