From 14a1050a261d9d5a7907093912afa1b53bada108 Mon Sep 17 00:00:00 2001 From: Jose Diaz-Gonzalez Date: Fri, 20 Jul 2018 10:05:04 -0400 Subject: [PATCH] feat: add ps:retire command This can be used to remove all old containers for a given deployment method. --- plugins/ps/subcommands/retire | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100755 plugins/ps/subcommands/retire diff --git a/plugins/ps/subcommands/retire b/plugins/ps/subcommands/retire new file mode 100755 index 000000000..221f0d551 --- /dev/null +++ b/plugins/ps/subcommands/retire @@ -0,0 +1,17 @@ +#!/usr/bin/env bash +set -eo pipefail; [[ $DOKKU_TRACE ]] && set -x +source "$PLUGIN_AVAILABLE_PATH/config/functions" +source "$PLUGIN_CORE_AVAILABLE_PATH/common/functions" + +ps_retire_cmd() { + declare desc="ensures old containers are retired" + local cmd="ps:retire" + local LOCK_FILE="${DOKKU_LIB_ROOT}/data/ps/retire" + local DOKKU_SCHEDULER=$(config_get "--global" DOKKU_SCHEDULER || echo "docker-local") + + acquire_advisory_lock "$LOCK_FILE" "exclusive" "" "Failed to acquire ps:retire lock" + plugn trigger scheduler-retire "$DOKKU_SCHEDULER" + release_advisory_lock "$LOCK_FILE" +} + +ps_retire_cmd "$@"