Merge pull request #2334 from dokku/cleanup-image-retrieval
Cleanup image retrieval
This commit is contained in:
@@ -5,7 +5,7 @@ source "$PLUGIN_CORE_AVAILABLE_PATH/common/functions"
|
|||||||
apps_pre_delete() {
|
apps_pre_delete() {
|
||||||
declare desc="apps pre-delete plugin trigger"
|
declare desc="apps pre-delete plugin trigger"
|
||||||
local trigger="apps_pre_delete"
|
local trigger="apps_pre_delete"
|
||||||
local APP="$1"; local IMAGE_TAG="$2"; local IMAGE=$(get_app_image_name "$APP" "$IMAGE_TAG"); local CACHE_DIR="$DOKKU_ROOT/$APP/cache"
|
local APP="$1"; local IMAGE_TAG="$2"; local IMAGE=$(get_deploying_app_image_name "$APP" "$IMAGE_TAG"); local CACHE_DIR="$DOKKU_ROOT/$APP/cache"
|
||||||
verify_app_name "$APP"
|
verify_app_name "$APP"
|
||||||
|
|
||||||
if [[ -d $CACHE_DIR ]]; then
|
if [[ -d $CACHE_DIR ]]; then
|
||||||
|
|||||||
@@ -168,27 +168,21 @@ get_app_image_repo() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
get_deploying_app_image_name() {
|
get_deploying_app_image_name() {
|
||||||
declare desc="return deployed image identifier for a given app, tag tuple. validate if tag is presented"
|
declare desc="return deploying image identifier for a given app, tag tuple. validate if tag is presented"
|
||||||
local APP="$1"; local IMAGE_TAG="$2";
|
local APP="$1"; local IMAGE_TAG="$2"; IMAGE_REPO="$3"
|
||||||
[[ -z "$APP" ]] && dokku_log_fail "(get_app_image_name) APP must not be null"
|
[[ -z "$APP" ]] && dokku_log_fail "(get_deploying_app_image_name) APP must not be null"
|
||||||
|
|
||||||
local IMAGE_REPO=""
|
|
||||||
local IMAGE_REMOTE_REPOSITORY=$(plugn trigger deployed-app-repository "$APP")
|
local IMAGE_REMOTE_REPOSITORY=$(plugn trigger deployed-app-repository "$APP")
|
||||||
local NEW_IMAGE_TAG=$(plugn trigger deployed-app-image-tag "$APP")
|
local NEW_IMAGE_TAG=$(plugn trigger deployed-app-image-tag "$APP")
|
||||||
local NEW_IMAGE_REPO=$(plugn trigger deployed-app-image-repo "$APP")
|
local NEW_IMAGE_REPO=$(plugn trigger deployed-app-image-repo "$APP")
|
||||||
|
|
||||||
if [[ -n "$NEW_IMAGE_TAG" ]]; then
|
[[ -n "$NEW_IMAGE_REPO" ]] && IMAGE_REPO="$NEW_IMAGE_REPO"
|
||||||
IMAGE_TAG="$NEW_IMAGE_TAG"
|
[[ -n "$NEW_IMAGE_TAG" ]] && IMAGE_TAG="$NEW_IMAGE_TAG"
|
||||||
fi
|
[[ -z "$IMAGE_REPO" ]] && IMAGE_REPO=$(get_app_image_repo "$APP")
|
||||||
|
[[ -z "$IMAGE_TAG" ]] && IMAGE_TAG="latest"
|
||||||
|
|
||||||
if [[ -n "$NEW_IMAGE_REPO" ]]; then
|
local IMAGE="${IMAGE_REMOTE_REPOSITORY}${IMAGE_REPO}:${IMAGE_TAG}"
|
||||||
IMAGE_REPO="$NEW_IMAGE_REPO"
|
verify_image "$IMAGE" || dokku_log_fail "app image ($IMAGE) not found"
|
||||||
fi
|
|
||||||
|
|
||||||
local IMAGE=$(get_app_image_name "$APP" "$IMAGE_TAG" "$IMAGE_REPO")
|
|
||||||
if [[ -n "$IMAGE_REMOTE_REPOSITORY" ]]; then
|
|
||||||
IMAGE="${IMAGE_REMOTE_REPOSITORY}${IMAGE}"
|
|
||||||
fi
|
|
||||||
echo "$IMAGE"
|
echo "$IMAGE"
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -385,7 +379,7 @@ is_deployed() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
is_container_running () {
|
is_container_running() {
|
||||||
declare desc="return 0 if given docker container id is in running state"
|
declare desc="return 0 if given docker container id is in running state"
|
||||||
local CID=$1
|
local CID=$1
|
||||||
local CONTAINER_STATUS=$(docker inspect -f '{{.State.Running}}' "$CID" || true)
|
local CONTAINER_STATUS=$(docker inspect -f '{{.State.Running}}' "$CID" || true)
|
||||||
@@ -397,7 +391,7 @@ is_container_running () {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
is_container_status () {
|
is_container_status() {
|
||||||
declare desc="return 0 if given docker container id is in given state"
|
declare desc="return 0 if given docker container id is in given state"
|
||||||
local CID=$1
|
local CID=$1
|
||||||
local TEMPLATE="{{.State.$2}}"
|
local TEMPLATE="{{.State.$2}}"
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ source "$PLUGIN_AVAILABLE_PATH/config/functions"
|
|||||||
config_docker_args() {
|
config_docker_args() {
|
||||||
declare desc="config docker-args plugin trigger"
|
declare desc="config docker-args plugin trigger"
|
||||||
local trigger="$0 config_docker_args"
|
local trigger="$0 config_docker_args"
|
||||||
local STDIN=$(cat); local APP="$1"; local IMAGE_TAG="$2"; local IMAGE=$(get_app_image_name "$APP" "$IMAGE_TAG")
|
local STDIN=$(cat); local APP="$1"; local IMAGE_TAG="$2"; local IMAGE=$(get_deploying_app_image_name "$APP" "$IMAGE_TAG")
|
||||||
local DOCKERFILE_ENV_FILE="$DOKKU_ROOT/$APP/DOCKERFILE_ENV_FILE"
|
local DOCKERFILE_ENV_FILE="$DOKKU_ROOT/$APP/DOCKERFILE_ENV_FILE"
|
||||||
verify_app_name "$APP"
|
verify_app_name "$APP"
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ source "$PLUGIN_CORE_AVAILABLE_PATH/common/functions"
|
|||||||
enter_default_cmd() {
|
enter_default_cmd() {
|
||||||
declare desc="enters running app container of specified proc type"
|
declare desc="enters running app container of specified proc type"
|
||||||
local cmd="enter"
|
local cmd="enter"
|
||||||
local APP="$2"; local CONTAINER_TYPE="$3"; local IMAGE_TAG=$(get_running_image_tag "$APP"); local IMAGE=$(get_app_image_name "$APP" "$IMAGE_TAG")
|
local APP="$2"; local CONTAINER_TYPE="$3"; local IMAGE_TAG=$(get_running_image_tag "$APP"); local IMAGE=$(get_deploying_app_image_name "$APP" "$IMAGE_TAG")
|
||||||
verify_app_name "$APP"
|
verify_app_name "$APP"
|
||||||
local AVAILABLE_CONTAINER_TYPES=($(get_app_running_container_types "$APP"))
|
local AVAILABLE_CONTAINER_TYPES=($(get_app_running_container_types "$APP"))
|
||||||
|
|
||||||
|
|||||||
@@ -141,7 +141,7 @@ get_custom_nginx_template() {
|
|||||||
local APP="$1"; verify_app_name "$APP"
|
local APP="$1"; verify_app_name "$APP"
|
||||||
local DESTINATION="$2"
|
local DESTINATION="$2"
|
||||||
local IMAGE_TAG="$(get_running_image_tag "$APP")"
|
local IMAGE_TAG="$(get_running_image_tag "$APP")"
|
||||||
local IMAGE=$(get_app_image_name "$APP" "$IMAGE_TAG")
|
local IMAGE=$(get_deploying_app_image_name "$APP" "$IMAGE_TAG")
|
||||||
local NGINX_TEMPLATE_NAME="nginx.conf.sigil"
|
local NGINX_TEMPLATE_NAME="nginx.conf.sigil"
|
||||||
|
|
||||||
copy_from_image "$IMAGE" "$NGINX_TEMPLATE_NAME" "$DESTINATION" 2>/dev/null || true
|
copy_from_image "$IMAGE" "$NGINX_TEMPLATE_NAME" "$DESTINATION" 2>/dev/null || true
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ extract_procfile() {
|
|||||||
declare desc="extracts procfile from app image"
|
declare desc="extracts procfile from app image"
|
||||||
local APP="$1"
|
local APP="$1"
|
||||||
local IMAGE_TAG="$2"
|
local IMAGE_TAG="$2"
|
||||||
local IMAGE="$(get_app_image_name "$APP" "$IMAGE_TAG")"
|
local IMAGE="$(get_deploying_app_image_name "$APP" "$IMAGE_TAG")"
|
||||||
local DOKKU_PROCFILE="$DOKKU_ROOT/$APP/DOKKU_PROCFILE"
|
local DOKKU_PROCFILE="$DOKKU_ROOT/$APP/DOKKU_PROCFILE"
|
||||||
verify_app_name "$APP"
|
verify_app_name "$APP"
|
||||||
|
|
||||||
@@ -38,7 +38,7 @@ remove_procfile() {
|
|||||||
|
|
||||||
generate_scale_file() {
|
generate_scale_file() {
|
||||||
declare desc="generates DOKKU_SCALE file"
|
declare desc="generates DOKKU_SCALE file"
|
||||||
local APP="$1"; local IMAGE_TAG="$2"; local IMAGE=$(get_app_image_name "$APP" "$IMAGE_TAG"); local DOKKU_SCALE_FILE="$DOKKU_ROOT/$APP/DOKKU_SCALE"
|
local APP="$1"; local IMAGE_TAG="$2"; local IMAGE=$(get_deploying_app_image_name "$APP" "$IMAGE_TAG"); local DOKKU_SCALE_FILE="$DOKKU_ROOT/$APP/DOKKU_SCALE"
|
||||||
local DOKKU_PROCFILE="$DOKKU_ROOT/$APP/DOKKU_PROCFILE"
|
local DOKKU_PROCFILE="$DOKKU_ROOT/$APP/DOKKU_PROCFILE"
|
||||||
verify_app_name "$APP"
|
verify_app_name "$APP"
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ repo_purge_cache() {
|
|||||||
local APP="$2";
|
local APP="$2";
|
||||||
verify_app_name "$APP"
|
verify_app_name "$APP"
|
||||||
|
|
||||||
local IMAGE=$(get_app_image_name "$APP"); local CACHE_DIR="$DOKKU_ROOT/$APP/cache"
|
local IMAGE=$(get_deploying_app_image_name "$APP"); local CACHE_DIR="$DOKKU_ROOT/$APP/cache"
|
||||||
|
|
||||||
if [[ -d $CACHE_DIR ]]; then
|
if [[ -d $CACHE_DIR ]]; then
|
||||||
docker run "$DOKKU_GLOBAL_RUN_ARGS" --rm -v "$CACHE_DIR:/cache" "$IMAGE" find /cache -depth -mindepth 1 -maxdepth 1 -exec rm -Rf {} \; || true
|
docker run "$DOKKU_GLOBAL_RUN_ARGS" --rm -v "$CACHE_DIR:/cache" "$IMAGE" find /cache -depth -mindepth 1 -maxdepth 1 -exec rm -Rf {} \; || true
|
||||||
|
|||||||
Reference in New Issue
Block a user