fix: SWA deploy — drop invalid is_static_export input, dedupe trailing-slash routes

The pinned Azure/static-web-apps-deploy@v1 has no is_static_export input
(warning only — Oryx detected the export and validated out/ regardless).
The real failure was config validation: with "trailingSlash": "auto" SWA
normalizes /x and /x/ to the same route key, so the defensive
trailing-slash duplicates were rejected as duplicate rules. One entry per
route covers both forms under auto.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Oliver Kieselbach
2026-07-29 01:52:28 +02:00
parent 18b28260a7
commit cc195990ff
2 changed files with 3 additions and 6 deletions
+3 -2
View File
@@ -54,9 +54,10 @@ jobs:
api_location: "" # Api source code path - optional
# Static export (next.config output:'export'): Oryx runs `npm run build`
# and uploads the exported out/ directory as plain static files — no
# managed SSR runtime is provisioned anymore.
# managed SSR runtime is provisioned anymore. (No is_static_export
# input on this action version; Oryx detects the export from
# next.config + output_location.)
output_location: "out" # Built app content directory - optional
is_static_export: true
###### End of Repository/Build Configurations ######
close_pull_request_job:
@@ -26,17 +26,13 @@
{ "route": "/apple-icon", "headers": { "Content-Type": "image/png" } },
{ "route": "/sessions/inspector", "rewrite": "/sessions/inspector/index.html" },
{ "route": "/sessions/inspector/", "rewrite": "/sessions/inspector/index.html" },
{ "route": "/sessions/*", "rewrite": "/sessions/index.html" },
{ "route": "/diagnosis/*", "rewrite": "/diagnosis/index.html" },
{ "route": "/apps/detail", "rewrite": "/apps/detail/index.html" },
{ "route": "/apps/detail/", "rewrite": "/apps/detail/index.html" },
{ "route": "/apps/*", "rewrite": "/apps/detail/index.html" },
{ "route": "/admin/backups/detail", "rewrite": "/admin/backups/detail/index.html" },
{ "route": "/admin/backups/detail/", "rewrite": "/admin/backups/detail/index.html" },
{ "route": "/admin/backups/*", "rewrite": "/admin/backups/detail/index.html" },
{ "route": "/admin/customs-archive/detail", "rewrite": "/admin/customs-archive/detail/index.html" },
{ "route": "/admin/customs-archive/detail/", "rewrite": "/admin/customs-archive/detail/index.html" },
{ "route": "/admin/customs-archive/*", "rewrite": "/admin/customs-archive/detail/index.html" }
],
"responseOverrides": {