Stage B of the go-live playbook: move Prompter onto the UpCloud cluster that runs Studio. The Pulumi stack is written and builds, but has never been applied.
About an hour, plus DNS propagation.
Gate: finish #6 first, including the A6 calibration. Every problem found on a laptop is one not debugged through kubectl logs, and an uncalibrated threshold should not meet the community.
Two things that fail quietly: the self-hosted runner label queues forever rather than erroring if this repository cannot see it, and a production environment with required reviewers pauses the deploy. Neither should be discovered during a release.
The first pulumi up is where certificate issuance and volume binding usually stumble — read the preview before applying it.
Then: a week of answering only before #8's C2/C3.
Stage B of the go-live playbook: move Prompter onto the UpCloud cluster that runs Studio. The Pulumi stack is written and builds, but has never been applied.
About an hour, plus DNS propagation.
Gate: finish #6 first, including the A6 calibration. Every problem found on a laptop is one not debugged through
kubectl logs, and an uncalibrated threshold should not meet the community.PULUMI_CONFIG_PASSPHRASEandUPCLOUD_TOKENrepository secrets; confirm the[self-hosted, linux, cratis]runner is available to this repoclusterIdandingressHostinDeployment/Pulumi.production.yamlDeployment/scripts/set-secrets.sh, thenpulumi stack init productionpulumi preview,pulumi up, commit the statePOST /reindex/reindexafter its deployTwo things that fail quietly: the self-hosted runner label queues forever rather than erroring if this repository cannot see it, and a
productionenvironment with required reviewers pauses the deploy. Neither should be discovered during a release.The first
pulumi upis where certificate issuance and volume binding usually stumble — read the preview before applying it.Then: a week of answering only before #8's C2/C3.