fix(tenant-manager): use readlink -f for absolute canonical paths
This commit is contained in:
+22
-10
@@ -175,21 +175,33 @@ EOF
|
||||
|
||||
restart_app_container() {
|
||||
local env_file="$PWD/.docker-build.env"
|
||||
# If HOST_WORKDIR is set, use it for absolute paths so docker daemon sees correct host paths
|
||||
local work_base="${HOST_WORKDIR:-.}"
|
||||
local compose_args=( -f "$work_base/docker-compose-multitenant.yml" )
|
||||
local compose_args=()
|
||||
|
||||
# If HOST_WORKDIR is set (called from container), use absolute paths so docker daemon resolves them correctly
|
||||
if [ -n "$HOST_WORKDIR" ]; then
|
||||
compose_args+=( -f "$(readlink -f "$HOST_WORKDIR/docker-compose-multitenant.yml")" )
|
||||
if [ -f "$HOST_WORKDIR/.docker-compose.runtime.override.yml" ]; then
|
||||
compose_args+=( -f "$(readlink -f "$HOST_WORKDIR/.docker-compose.runtime.override.yml")" )
|
||||
fi
|
||||
if [ -f "$HOST_WORKDIR/.docker-build.env" ]; then
|
||||
compose_args+=( --env-file "$(readlink -f "$HOST_WORKDIR/.docker-build.env")" )
|
||||
fi
|
||||
else
|
||||
# Normal case: called directly from host
|
||||
compose_args+=( -f "$PWD/docker-compose-multitenant.yml" )
|
||||
if [ -f "$PWD/.docker-compose.runtime.override.yml" ]; then
|
||||
compose_args+=( -f "$PWD/.docker-compose.runtime.override.yml" )
|
||||
fi
|
||||
if [ -f "$env_file" ]; then
|
||||
compose_args+=( --env-file "$env_file" )
|
||||
fi
|
||||
fi
|
||||
|
||||
# Pass along COMPOSE_PROJECT_NAME if set so the internal docker-compose sees it
|
||||
if [ -n "$COMPOSE_PROJECT_NAME" ]; then
|
||||
compose_args=( -p "$COMPOSE_PROJECT_NAME" "${compose_args[@]}" )
|
||||
fi
|
||||
|
||||
if [ -f "$work_base/.docker-compose.runtime.override.yml" ]; then
|
||||
compose_args+=( -f "$work_base/.docker-compose.runtime.override.yml" )
|
||||
fi
|
||||
if [ -f "$env_file" ]; then
|
||||
compose_args+=( --env-file "$env_file" )
|
||||
fi
|
||||
|
||||
echo "Restarting app container to apply tenant configuration changes..."
|
||||
docker compose "${compose_args[@]}" up -d --no-build --force-recreate app
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user