deploy(hololake): open bounded public update route

This commit is contained in:
冰朔 2026-08-17 00:57:09 +08:00
commit e8e918392c
7 changed files with 64 additions and 19 deletions

View file

@ -11,20 +11,20 @@ receipt form one exact evidence chain. Invalid evidence locks the whole release
endpoint until an operator fixes the evidence and explicitly restarts the
service.
The service listens only on `127.0.0.1`. Public HTTPS routing, updater trust-key
provisioning, artifact upload, activation, and desktop rollout are independent
deployment gates.
The service listens only on `127.0.0.1`. The public HTTPS path is carried by a
dedicated, port-forwarding-only identity from JD-FD-PRIMARY to BS-GZ-006 and
currently returns the origin's empty fail-closed `204` response. Artifact
upload, activation, and desktop rollout remain independent deployment gates.
The registered public namespace is `/hololake/releases`. The loopback origin
accepts the manifest at both its operator health-check path `/latest.json` and
the public updater path `/hololake/releases/latest.json`; release package URLs
must remain under that same public prefix. The front-door proxy must therefore
preserve the full request URI. Its loopback tunnel port remains deliberately
unassigned until the BS-GZ-006 route owner returns the live, non-conflicting
topology.
preserve the full request URI. The registered BS-GZ-006 loopback tunnel port is
`19440`; it is not a public listener.
Once that port is returned and independently verified, `render-front-door.mjs
--loopback-port PORT` renders the bounded Nginx location. It refuses an omitted
`render-front-door.mjs --loopback-port PORT` renders the bounded Nginx
location. It refuses an omitted
port, preserves the full public request path by leaving `proxy_pass` without a
URI suffix, accepts only GET and HEAD, forwards no request body, and strips
authorization, cookies, and client forwarding headers. Rendering is not