Commit 61164ade authored by Pedro Eduardo Trujillo's avatar Pedro Eduardo Trujillo
Browse files

Merge branch 'dev' into 'master'

Simplifica relanzamiento por defecto

See merge request redmic-project/docker/docker-deploy!46
parents 857e60c4 3eb25e7d
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@ For environment variables, you may define these variables (**bold** are mandator
* *STATUS_CHECK_INTERVAL*: Default `20`.
* *STATUS_CHECK_DELAY*: Default `120`.
* *STATUS_CHECK_MIN_HITS*: Default `3`.
* *USE_IMAGE_DIGEST*: Update service image using digest data when relaunching. Default `0`.
* *GREP_BIN*: Default `grep`.

Action may be one of `deploy.sh`, `create-nets.sh` or `relaunch.sh`, and parameters with variable/value depends on your service needs.
+1 −0
Original line number Diff line number Diff line
@@ -9,6 +9,7 @@ STATUS_CHECK_RETRIES="${STATUS_CHECK_RETRIES:-10}"
STATUS_CHECK_INTERVAL="${STATUS_CHECK_INTERVAL:-20}"
STATUS_CHECK_DELAY="${STATUS_CHECK_DELAY:-120}"
STATUS_CHECK_MIN_HITS="${STATUS_CHECK_MIN_HITS:-3}"
USE_IMAGE_DIGEST="${USE_IMAGE_DIGEST:-0}"

GREP_BIN="${GREP_BIN:-grep}"
SSH_CONTROL_PERSIST="${SSH_CONTROL_PERSIST:-10}"
+20 −15
Original line number Diff line number Diff line
@@ -12,6 +12,8 @@ fi

echo -e "\n${INFO_COLOR}Relaunching service ${DATA_COLOR}${SERVICE}${INFO_COLOR} at remote ${DATA_COLOR}${remoteHost}${INFO_COLOR} ..${NULL_COLOR}"

if [ "${USE_IMAGE_DIGEST}" -eq 1 ]
then
	relaunchCmd="\
		imageNameAndTag=\$(docker service ls -f 'name=${SERVICE}' --format '{{.Image}}' | head -1) && \
		imageName=\$(echo \${imageNameAndTag} | cut -f 1 -d ':' | cut -f 1 -d '@') && \
@@ -27,6 +29,9 @@ relaunchCmd="\
		docker pull \${imageNameAndTag} && \
		imageDigest=\$(docker images --digests --format '{{.Digest}}' \${imageName} | head -1) && \
		docker service update -q --force --image \${imageName}@\${imageDigest} ${SERVICE}"
else
	relaunchCmd="docker service update -q --force ${SERVICE}"
fi

if ssh ${SSH_PARAMS} "${SSH_REMOTE}" "${relaunchCmd}"
then