GCP operator verbs live proof - 2026-09-15 (mldp8)¶
Five-verb packed session for order 12 (operator-finops-catalog): one
GKE Autopilot preview, 13/13 acceptance cells PASS, then health,
logs, exec (plus the --service deploy rejection), cost, and
cleanup reconcile exercised live against the running stack. The
session also live-proved the destroy-after-expiry fix: an expired YAML
refused deploy and completed destroy. AWS cost --live (Fargate vCPU
$17.74, memory $3.87, Valkey $10.51/month) and cost --budget
(preview not-configured, staging lists five account budgets) were
proven creds-only the same day; those reads fixed five Price List
filter defects and a Budgets page-size defect. Do not reuse mldp8
(WIF pool name tombstoned 30d).
Scope¶
| Field | Value |
|---|---|
| Project | GCP acceptance project (accountRef redacted in sealed JSONL) |
| Region | europe-west1 |
| Name | mldp8 |
| Profile | preview |
| Runtime | gke-autopilot |
| Catalog | scripts/acceptance/cells-gcp-preview.txt (13 cells) |
| Artifact A | …/magento-249-rc1-static-owned-dbhost-20260816@sha256:8588b13f…fdb2be4 |
| Seed | magento-249-sanitized-definer-free.sql.gz (102 KiB) |
| KEEP | true during verbs, manual destroy after |
False start¶
The first up attempt inherited a stale MAGELIFT_ACCEPTANCE_CELL_CATALOG
pointing at an OVH cell file from order 11 and failed closed on
unsupported gcp acceptance cell with zero cloud changes. The operator
purged the leaked variables, removed the bogus checkpoint entry, and
resumed; all 13 cells below come from the clean resume. The sealed
bundle keeps final records only.
Verbs¶
All five against the live mldp8-preview stack:
health --mode runtime: healthy, deployment 1/1 ready, Magento HTTP 200.logs --service web: real nginx lines, early rollout 500s converging, matching themldp3pattern.exec --service web -- php -r ...: PHP 8.5.9.exec --service deployrefused with the guided pointer to deploy logs.cost: account-free inputs (Autopilot web, Cloud SQL, Memorystore, edge, db queue) plus an explicit unpriced list; no live GCP prices claimed.cleanup claim|record|plan|reconcile --yeson a probe ledger: live Cloud SQL inventory ran over ADC, the gone identity resolved, reportcomplete, ledger persisted. (Wiring the GCP cleanup provider into the CLI was part of this order; the hook existed but no binary populated it.)
Expiry¶
deploy with an expired YAML refused (preview environment has
expired); destroy --yes --destroy-backups with the same YAML
deleted 22 resources. Pre-fix the destroy died in the Pulumi program;
the allow-expired flag now rides the spec in all five providers.
Teardown¶
Pulumi destroy left the service-networking peering plus the network
it blocked (same GCP-side refusal as mldp7). Manual sweep deleted
NAT, router, service account, three secrets, media bucket, four
subnets, PSA range, and the VPC; deleting the VPC removed the stuck
peering with it. Pulumi stack removed, state bucket removed, WIF pool
deleted. Final sweep: zero mldp8 resources in every listing.
Spend¶
Paid resources (Autopilot cluster, Cloud SQL, Memorystore, LB) lived for the run window (~75 min create-to-destroy); no leftovers.
Non-claims¶
- GCP live unit prices (
coststays account-free there) - RDS / OpenSearch / Amazon MQ live-price shapes (fixed, await a session that runs them)
- Cloud SQL
Deleteover a live instance (unit-covered; the probe resolved a gone identity)