From 18d125430dcd553938b52b28d6ee045e2a29170e Mon Sep 17 00:00:00 2001 From: Alejandro Celaya Date: Thu, 19 Mar 2020 20:04:21 +0100 Subject: [PATCH] Added docker image building as a deployment step for travis --- .travis.yml | 18 +++++++++++------- hooks/build | 10 ---------- scripts/docker/build | 14 ++++++++++++++ 3 files changed, 25 insertions(+), 17 deletions(-) delete mode 100755 hooks/build create mode 100755 scripts/docker/build diff --git a/.travis.yml b/.travis.yml index b18498b3..aab5d0c4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -31,10 +31,14 @@ before_deploy: - npm run build ${TRAVIS_TAG#?} deploy: - provider: releases - api_key: - secure: jBvPwC7EAbViaNR83rwMSt5XQDK0Iu9rgvEMa7GoyShbHcvUCCPd73Tu9quNpKi6NKsDY3INHgtch3vgonjGNGDGJ+yDyIBzXcvsAX2x3UcHpRbgY12uiINVmQxBI1+OVQB016Nm+cKC/i5Z36K4EmDbYfo+MrKndngM6AjcQFTwI8EwniIMaQgg4gNes//K8NhP5u0c3gwG+Q6jEGnq6uH3kcRgh6/epIZYpQyxjqWqKwF77sgcYj+X2Nf6XxtB5neuCi301UKLoLx8G0skh/Lm6KAIO4s9iIhIFa3UpoF21Ka0TxLpd2JxalLryCnFGlWWE6lxC9Htmc0TeRowJQlGdJXCskJ37xT9MljKY0fwNMu06VS/FUgykuCv+jP3zQu51pKu7Ew7+WeNPjautoOTu54VkdGyHcf2ThBNEyJQuiEwAQe4u7yAxY6R5ovEdvHBSIg4w1E5/Mxy5SMTCUlIAv6H7QQ1X9Z/zJm9HH5KeKz5tsHvQ/RIdSpgHXq/tC8o4Yup/LCFucXfrgvy/8pJoO1UpOlmvm62974NFfo0EG5YWwv6brUqz3QXpMjb8sWqgjltYMYJX3J7WZ34rIc+zt4NAmfhqgczaOC4pUGCiJ8jX3rMWIaQRn1AJ+5V337jL9fNDpTHny4phQjHrMJ1e0HZuNp0Xb5Q8wgqDPM= - file: "./dist/shlink-web-client_${TRAVIS_TAG#?}_dist.zip" - skip_cleanup: true - on: - tags: true + - provider: script + script: bash ./scripts/docker/build + on: + branch: master + - provider: releases + api_key: + secure: jBvPwC7EAbViaNR83rwMSt5XQDK0Iu9rgvEMa7GoyShbHcvUCCPd73Tu9quNpKi6NKsDY3INHgtch3vgonjGNGDGJ+yDyIBzXcvsAX2x3UcHpRbgY12uiINVmQxBI1+OVQB016Nm+cKC/i5Z36K4EmDbYfo+MrKndngM6AjcQFTwI8EwniIMaQgg4gNes//K8NhP5u0c3gwG+Q6jEGnq6uH3kcRgh6/epIZYpQyxjqWqKwF77sgcYj+X2Nf6XxtB5neuCi301UKLoLx8G0skh/Lm6KAIO4s9iIhIFa3UpoF21Ka0TxLpd2JxalLryCnFGlWWE6lxC9Htmc0TeRowJQlGdJXCskJ37xT9MljKY0fwNMu06VS/FUgykuCv+jP3zQu51pKu7Ew7+WeNPjautoOTu54VkdGyHcf2ThBNEyJQuiEwAQe4u7yAxY6R5ovEdvHBSIg4w1E5/Mxy5SMTCUlIAv6H7QQ1X9Z/zJm9HH5KeKz5tsHvQ/RIdSpgHXq/tC8o4Yup/LCFucXfrgvy/8pJoO1UpOlmvm62974NFfo0EG5YWwv6brUqz3QXpMjb8sWqgjltYMYJX3J7WZ34rIc+zt4NAmfhqgczaOC4pUGCiJ8jX3rMWIaQRn1AJ+5V337jL9fNDpTHny4phQjHrMJ1e0HZuNp0Xb5Q8wgqDPM= + file: "./dist/shlink-web-client_${TRAVIS_TAG#?}_dist.zip" + skip_cleanup: true + on: + tags: true diff --git a/hooks/build b/hooks/build deleted file mode 100755 index f912acdd..00000000 --- a/hooks/build +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash -set -ex - -if [[ ${SOURCE_BRANCH} == 'master' ]]; then - SHLINK_WEB_CLIENT_RELEASE='latest' -else - SHLINK_WEB_CLIENT_RELEASE=${SOURCE_BRANCH#?} -fi - -docker build --build-arg VERSION=${SHLINK_WEB_CLIENT_RELEASE} -t ${IMAGE_NAME} . diff --git a/scripts/docker/build b/scripts/docker/build new file mode 100755 index 00000000..f9bb3c27 --- /dev/null +++ b/scripts/docker/build @@ -0,0 +1,14 @@ +#!/bin/bash +set -e + +echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin + +# If a tag exists, build both that tag and stable +if [[ -z $TRAVIS_TAG ]]; then + docker build --build-arg VERSION=${TRAVIS_TAG#?} -t shlinkio/shlink-web-client:${TRAVIS_TAG#?} -t shlinkio/shlink-web-client:stable . + docker push shlinkio/shlink-web-client:${TRAVIS_TAG#?} + docker push shlinkio/shlink-web-client:stable +fi + +docker build -t shlinkio/shlink-web-client:latest . +docker push shlinkio/shlink-web-client:latest