fix: move container status exclusively to ps plugin

This information didn't belong in the apps plugin and was incomplete.

Also set the container status to dead when it is not detected as running.
This commit is contained in:
Jose Diaz-Gonzalez
2018-02-24 02:59:27 -05:00
parent 376284381e
commit cd674d3cb3
3 changed files with 3 additions and 19 deletions

View File

@@ -12,21 +12,9 @@ report_single_app() {
INFO_FLAG=""
fi
verify_app_name "$APP"
local DOKKU_APP_CIDS=$(get_app_container_ids "$APP")
if [[ -n $DOKKU_APP_CIDS ]]; then
local cid
for CID in $DOKKU_APP_CIDS; do
local APP_CONTAINER_STATUS
local DOKKU_APP_CID
DOKKU_APP_CID=$CID
APP_CONTAINER_STATUS=$(docker inspect -f '{{.State.Status}}' "$CID")
done
fi
local flag_map=(
"--app-dir: $APP_DIR"
"--git-sha: $(GIT_DIR="$APP_DIR" git rev-parse --short HEAD 2> /dev/null || false)"
"--app-cid: ${DOKKU_APP_CID:0:12}"
"--status: $APP_CONTAINER_STATUS"
)
if [[ -z "$INFO_FLAG" ]]; then

View File

@@ -34,9 +34,11 @@ report_single_app() {
local DOKKU_APP_RESTORE=$(config_get "$APP" DOKKU_APP_RESTORE || true)
local STATUSES=()
if [[ "$DOKKU_APP_RESTORE" != 0 ]]; then RESTORE="true"; else RESTORE="false"; fi
local APP_CONTAINER_STATUS
for CONTAINER_FILE in $CONTAINER_FILES; do
CID=$(< "$DOKKU_ROOT/$APP/$CONTAINER_FILE")
local APP_CONTAINER_STATUS=$(docker inspect -f '{{.State.Running}}' "$CID")
APP_CONTAINER_STATUS=$(docker inspect -f '{{.State.Running}}' "$CID" 2> /dev/null)
[[ -z "$APP_CONTAINER_STATUS" ]] && APP_CONTAINER_STATUS="dead"
STATUSES+=("${CONTAINER_FILE#*.}:$APP_CONTAINER_STATUS#${CID:0:12}")
done
local flag_map=(