Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 8 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,11 +102,14 @@ time:
A successful push-triggered full-stack deployment publishes the API client from
the exact deployed commit.

The stable production service may have a separately managed custom hostname.
Domain ownership, DNS, TLS, and other one-time cloud setup remain operator
responsibilities outside committed deployment automation. Entrypoint traffic
promotion does not change API v1 revision traffic or its simulation-entrypoint
migration flag.
The stable production service is exposed through a separately managed global
external HTTPS load balancer and canonical hostname. Domain ownership, DNS,
TLS, load-balancer resources, and other one-time cloud setup remain operator
responsibilities outside committed deployment automation. When the canonical
hostname is supplied as protected environment metadata, every production
promotion verifies it after checking the generated stable service URL.
Entrypoint traffic promotion does not change API v1 revision traffic or its
simulation-entrypoint migration flag.

The stable gateway app is `policyengine-simulation-gateway`; executors deploy as
versioned `policyengine-simulation-py{version}` apps. For Modal image and deploy
Expand Down
21 changes: 11 additions & 10 deletions projects/policyengine-simulation-entry/DEPLOYMENT.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,13 +63,14 @@ the Cloud Run entrypoint remain separately controlled.
Cloud Run provides a stable service URL and tagged candidate URLs. Beta uses
those generated URLs; it does not require a custom hostname.

Production may use a persistent custom hostname mapped to its stable Cloud Run
service. The mapping follows the service's active traffic assignment and is
not recreated for each release. When a custom hostname is configured as
protected environment metadata, post-promotion checks verify it in addition
to the generated stable URL.

Domain ownership, mapping creation, DNS publication, managed TLS activation,
and infrastructure administration are one-time operator actions governed by
private runbooks rather than committed bootstrap scripts in this public
repository.
Production uses a persistent canonical hostname served by a separately managed
global external HTTPS load balancer with a serverless Cloud Run backend. The
load balancer follows the service's stable traffic assignment and is not
recreated for each release. The deployment workflow receives the canonical
URL as protected environment metadata and verifies it after every production
promotion, in addition to checking the generated stable URL.

Domain ownership, load-balancer creation, DNS publication, managed TLS
activation, and infrastructure administration are one-time operator actions
governed by private runbooks rather than committed bootstrap scripts in this
public repository. Direct Cloud Run domain mapping is not the production edge.