refactor: pull container creation into standalone function

this is necessary for us to be able to inject env vars into the call.
This commit is contained in:
Jose Diaz-Gonzalez
2021-02-11 03:49:46 -05:00
parent d7562d36e6
commit 33d5dd44d9

View File

@@ -99,11 +99,12 @@ trigger-scheduler-docker-local-scheduler-deploy() {
fi
DOCKER_ARGS+=" --env=PORT=$DOKKU_PORT "
declare -a ARG_ARRAY
eval "ARG_ARRAY=($DOCKER_ARGS)"
START_CMD=$(fn-scheduler-docker-local-extract-start-cmd "$APP" "$PROC_TYPE" "$START_CMD" "$DOKKU_HEROKUISH" "$DOKKU_PORT")
cid=$("$DOCKER_BIN" container create "${ARG_ARRAY[@]}" "$IMAGE" $START_CMD)
DOCKER_ARGS+=" $IMAGE "
DOCKER_ARGS+=" $START_CMD "
cid=$(fn-start-app-container "$DOCKER_ARGS")
plugn trigger post-container-create "app" "$cid" "$APP" "deploy" "$PROC_TYPE"
"$DOCKER_BIN" container start "$cid" >/dev/null || true
@@ -215,4 +216,13 @@ fn-scheduler-docker-local-extract-start-cmd() {
echo "$START_CMD"
}
fn-start-app-container() {
declare desc="starts a single app container"
declare DOCKER_ARGS="$1"
declare -a __DOKKU_DOCKER_ARG_ARRAY
eval "__DOKKU_DOCKER_ARG_ARRAY=($DOCKER_ARGS)"
"$DOCKER_BIN" container create "${__DOKKU_DOCKER_ARG_ARRAY[@]}"
}
trigger-scheduler-docker-local-scheduler-deploy "$@"