mirror of
https://github.com/iflytek/skillhub.git
synced 2026-09-09 22:31:14 +00:00
fix(auth): preserve device verification URI default
Signed-off-by: dongmucat <1127093059@qq.com>
This commit is contained in:
parent
9a141b7a2b
commit
d21d9eee29
2 changed files with 29 additions and 1 deletions
|
|
@ -57,7 +57,7 @@ services:
|
|||
REDIS_PORT: 6379
|
||||
SESSION_COOKIE_SECURE: ${SESSION_COOKIE_SECURE:-false}
|
||||
SKILLHUB_PUBLIC_BASE_URL: ${SKILLHUB_PUBLIC_BASE_URL:-}
|
||||
DEVICE_AUTH_VERIFICATION_URI: ${DEVICE_AUTH_VERIFICATION_URI:-}
|
||||
DEVICE_AUTH_VERIFICATION_URI: ${DEVICE_AUTH_VERIFICATION_URI:-${SKILLHUB_PUBLIC_BASE_URL}/device}
|
||||
SKILLHUB_DOWNLOAD_ANON_COOKIE_SECRET: ${SKILLHUB_DOWNLOAD_ANON_COOKIE_SECRET:?required}
|
||||
SKILLHUB_STORAGE_PROVIDER: ${SKILLHUB_STORAGE_PROVIDER:-s3}
|
||||
STORAGE_BASE_PATH: /var/lib/skillhub/storage
|
||||
|
|
|
|||
|
|
@ -62,6 +62,13 @@ expect_fail() {
|
|||
fi
|
||||
}
|
||||
|
||||
render_verification_uri() {
|
||||
local env_file="$1"
|
||||
env -u DEVICE_AUTH_VERIFICATION_URI -u SKILLHUB_PUBLIC_BASE_URL \
|
||||
docker compose --env-file "$env_file" -f "$REPO_ROOT/compose.release.yml" config \
|
||||
| awk '$1 == "DEVICE_AUTH_VERIFICATION_URI:" {gsub(/"/, "", $2); print $2; exit}'
|
||||
}
|
||||
|
||||
tmp="$(new_tmp)"
|
||||
|
||||
valid_env="$tmp/valid.env"
|
||||
|
|
@ -93,4 +100,25 @@ while IFS= read -r line || [[ -n "$line" ]]; do
|
|||
done <"$REPO_ROOT/.env.release.draft" >"$draft_env"
|
||||
expect_fail "$draft_env" "POSTGRES_PASSWORD"
|
||||
|
||||
rendered_uri="$(render_verification_uri "$valid_env")"
|
||||
if [[ "$rendered_uri" != "https://skillhub.example.com/device" ]]; then
|
||||
fail "expected rendered DEVICE_AUTH_VERIFICATION_URI default to be 'https://skillhub.example.com/device', got '${rendered_uri:-<empty>}'"
|
||||
fi
|
||||
|
||||
empty_override_env="$tmp/empty-override.env"
|
||||
cp "$valid_env" "$empty_override_env"
|
||||
printf '%s\n' "DEVICE_AUTH_VERIFICATION_URI=" >>"$empty_override_env"
|
||||
rendered_uri="$(render_verification_uri "$empty_override_env")"
|
||||
if [[ "$rendered_uri" != "https://skillhub.example.com/device" ]]; then
|
||||
fail "expected rendered DEVICE_AUTH_VERIFICATION_URI default with an explicitly empty override to be 'https://skillhub.example.com/device', got '${rendered_uri:-<empty>}'"
|
||||
fi
|
||||
|
||||
override_env="$tmp/override.env"
|
||||
cp "$valid_env" "$override_env"
|
||||
printf '%s\n' "DEVICE_AUTH_VERIFICATION_URI=https://auth.example.com/verify" >>"$override_env"
|
||||
rendered_uri="$(render_verification_uri "$override_env")"
|
||||
if [[ "$rendered_uri" != "https://auth.example.com/verify" ]]; then
|
||||
fail "expected rendered DEVICE_AUTH_VERIFICATION_URI override to be 'https://auth.example.com/verify', got '${rendered_uri:-<empty>}'"
|
||||
fi
|
||||
|
||||
echo "validate-release-config-test passed"
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue