Select Git revision
deploy 1.18 KiB
#!/bin/sh
set -eu
_check() {
containers="$(until docker-compose ps -q; do true; done)"
# shellcheck disable=SC2086
docker container inspect --format '{{ .State.Health.Status }}' $containers | grep -v '^healthy$'
}
_deploy() {
echo "Deploying to $1" >&2
export DOCKER_HOST="ssh://$1"
export RUNNER_NAME="$1"
until docker-compose up --detach --remove-orphans ; do true; done
# shellcheck disable=SC2034
for i in $(seq 12)
do
# shellcheck disable=SC2046
_check || break
sleep 10
done
# shellcheck disable=SC2046
! _check
unset DOCKER_HOST
unset RUNNER_NAME
}
if [ -z "${REGISTRATION_TOKEN:-}" ]
then
echo "REGISTRATION_TOKEN isn't set." >&2
exit 1
fi
case "${1:-all}" in
ns4) export REGISTER_RUN_UNTAGGED="true"
export BUILDS='/builds'
_deploy ns4.shore.co.il
;;
kodi) export REGISTER_RUN_UNTAGGED="false"
unset BUILDS
_deploy kodi.shore.co.il
;;
host01) export REGISTER_RUN_UNTAGGED="false"
unset BUILDS
_deploy host01.shore.co.il
;;
all) "$0" ns4; "$0" host01; "$0" kodi ;;
*) echo 'Unknown host.' >&2; exit 1;;
esac