This commit is contained in:
Executable
+24
@@ -0,0 +1,24 @@
|
||||
#!/usr/bin/env bash
|
||||
set -Eeuo pipefail
|
||||
|
||||
require_var() {
|
||||
local name="$1"
|
||||
if [ -z "${!name:-}" ]; then
|
||||
printf 'Required environment variable %s is missing\n' "$name" >&2
|
||||
exit 2
|
||||
fi
|
||||
}
|
||||
|
||||
require_var ENVIRONMENT
|
||||
require_var STACK_NAME
|
||||
|
||||
LOCK_FILE="${RELEASE_LOCK_FILE:-/tmp/${STACK_NAME}-${ENVIRONMENT}.lock}"
|
||||
exec 9>"$LOCK_FILE"
|
||||
flock -n 9 || {
|
||||
echo "Another deployment operation is already running for ${STACK_NAME}/${ENVIRONMENT}" >&2
|
||||
exit 75
|
||||
}
|
||||
|
||||
printf '{"event":"rollback_start","environment":"%s","stack":"%s"}\n' "$ENVIRONMENT" "$STACK_NAME"
|
||||
docker service rollback "${STACK_NAME}_web" || true
|
||||
printf '{"event":"rollback_requested","environment":"%s","stack":"%s"}\n' "$ENVIRONMENT" "$STACK_NAME"
|
||||
Reference in New Issue
Block a user