Fix topology routes: use ReverseProxy for all topology endpoints

Changed all topology gateway routes from Microservice (Valkey transport)
to ReverseProxy (direct HTTP) because:
- Concelier topology endpoints serve via HTTP, not Valkey message bus
- JobEngine environment CRUD serves via HTTP

Routes:
- /api/v1/regions → Concelier (ReverseProxy)
- /api/v1/infrastructure-bindings → Concelier (ReverseProxy)
- /api/v1/pending-deletions → Concelier (ReverseProxy)
- /api/v1/targets → Concelier (ReverseProxy)
- /api/v1/environments/{id}/readiness → Concelier (ReverseProxy)
- /api/v1/environments → JobEngine (ReverseProxy)

All return expected auth/tenant errors (404/500) instead of 503.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
master
2026-03-16 07:44:58 +02:00
parent 701229b3e6
commit 602df77467
2 changed files with 8 additions and 8 deletions

View File

@@ -47,12 +47,12 @@
]
},
"Routes": [
{ "Type": "Microservice", "Path": "^/api/v1/regions(.*)", "IsRegex": true, "TranslatesTo": "http://concelier.stella-ops.local/api/v1/regions$1" },
{ "Type": "Microservice", "Path": "^/api/v1/infrastructure-bindings(.*)", "IsRegex": true, "TranslatesTo": "http://concelier.stella-ops.local/api/v1/infrastructure-bindings$1" },
{ "Type": "Microservice", "Path": "^/api/v1/pending-deletions(.*)", "IsRegex": true, "TranslatesTo": "http://concelier.stella-ops.local/api/v1/pending-deletions$1" },
{ "Type": "Microservice", "Path": "^/api/v1/targets/(.*)/validate(.*)", "IsRegex": true, "TranslatesTo": "http://concelier.stella-ops.local/api/v1/targets/$1/validate$2" },
{ "Type": "Microservice", "Path": "^/api/v1/targets/(.*)/readiness(.*)", "IsRegex": true, "TranslatesTo": "http://concelier.stella-ops.local/api/v1/targets/$1/readiness$2" },
{ "Type": "Microservice", "Path": "^/api/v1/environments/(.*)/readiness(.*)", "IsRegex": true, "TranslatesTo": "http://concelier.stella-ops.local/api/v1/environments/$1/readiness$2" },
{ "Type": "ReverseProxy", "Path": "^/api/v1/regions(.*)", "IsRegex": true, "TranslatesTo": "http://concelier.stella-ops.local/api/v1/regions$1", "PreserveAuthHeaders": true },
{ "Type": "ReverseProxy", "Path": "^/api/v1/infrastructure-bindings(.*)", "IsRegex": true, "TranslatesTo": "http://concelier.stella-ops.local/api/v1/infrastructure-bindings$1", "PreserveAuthHeaders": true },
{ "Type": "ReverseProxy", "Path": "^/api/v1/pending-deletions(.*)", "IsRegex": true, "TranslatesTo": "http://concelier.stella-ops.local/api/v1/pending-deletions$1", "PreserveAuthHeaders": true },
{ "Type": "ReverseProxy", "Path": "^/api/v1/targets(.*)", "IsRegex": true, "TranslatesTo": "http://concelier.stella-ops.local/api/v1/targets$1", "PreserveAuthHeaders": true },
{ "Type": "ReverseProxy", "Path": "^/api/v1/environments/(.*)/readiness(.*)", "IsRegex": true, "TranslatesTo": "http://concelier.stella-ops.local/api/v1/environments/$1/readiness$2", "PreserveAuthHeaders": true },
{ "Type": "ReverseProxy", "Path": "^/api/v1/environments(.*)", "IsRegex": true, "TranslatesTo": "http://jobengine.stella-ops.local/api/v1/environments$1", "PreserveAuthHeaders": true },
{ "Type": "Microservice", "Path": "^/api/v1/vulnerabilities(.*)", "IsRegex": true, "TranslatesTo": "http://scanner.stella-ops.local/api/v1/vulnerabilities$1" },
{ "Type": "Microservice", "Path": "^/api/v1/watchlist(.*)", "IsRegex": true, "TranslatesTo": "http://attestor.stella-ops.local/api/v1/watchlist$1" },
{ "Type": "Microservice", "Path": "^/api/v1/triage(.*)", "IsRegex": true, "TranslatesTo": "http://scanner.stella-ops.local/api/v1/triage$1" },