Build1 distinct publisher3 min readPublished
The Cloud Console showed four green steps and the Management API called the runtime ACTIVE, while the forwarding VMs had no identity to fetch their startup script and no endpoint to forward to, so the only check that found the fault was a request.
The Engineer · Build desk

Compiled by The EngineerSomething wrong?How this is made
The organization and the runtime instance are control-plane records. What answers a request is a group of proxy-forwarding VMs, and every step of the repair described in the dev.to writeup lands on those: a cloned instance template, a rolling update of the managed instance group onto it, a hand-patched metadata key, a startup script re-run per instance [7]. ACTIVE on the org and ACTIVE on the instance were therefore true statements about objects that do not carry traffic [18].
Two holes sat in one template and they interacted. A VM with no service account attached has no identity to authenticate to Cloud Storage, so it never retrieves its real startup script and comes up on the fallback instead [5]. The fallback forwards to whatever the ENDPOINT metadata key names, and that key was blank [6]. Had ENDPOINT been populated, the missing service account would have degraded into a working fallback; had the service account been attached, the blank key would never have been read [22]. Together they produce a forwarder with nowhere to forward.
The ordering of the fix is forced by the resources involved. The sequence starts with a clone rather than an edit, which is what you do when the service account cannot be added to the template that already exists [23]. Only after the group is rolling on the new template are there instances whose metadata is worth patching. That is four manual operations against resources the wizard created [20], after which the proxy answered [24].
Before crediting the wizard, rule out the account's own history. The same setup attempt earlier produced a resource-locked error and an org step that never finished [13], but the 502 org was built in a brand-new project after both earlier projects were shut down [19], so the stuck operation is not in the causal chain. What would make this finding transfer is a second run: the same wizard, an unrelated project, and a template that again comes up with no service account. On the published evidence there is one instance.
The other failure in the same run shows what a diagnosable defect looks like. Step three returned a generic "Something went wrong" with a Try Again button [9], and the retry completed in about nine minutes [10] because org creation is an asynchronous operation layered on API enablement, with the expensive networking and VPC peering from step two already done [12]. Google's installation troubleshooting guide names that case and tells you to wait for propagation and retry [11].
One habit from the earlier mess is worth copying: run setup in separate browser profiles or windows rather than tabs [17], after the Console displayed one project's Apigee org name on another project's setup page, which the author reads as a UI caching artifact [16]. When the dashboard is the least reliable narrator in the room, isolation is cheap.
The readiness check here is one authenticated call through the runtime host. It fails in seconds and points at the data plane, which is more than the four checkmarks [8] and two ACTIVE fields managed between them [3].
Ranked by verification strength, evidence, and original report placement.
The author spent hours debugging a persistent 502 Server Error on a fresh Apigee X evaluation organization.
The Apigee Management API confirmed the organization and the runtime instance were both ACTIVE, and yet every request, including to a brand-new proxy, came back with a 502.
The root cause was that the Apigee provisioning wizard built the proxy-forwarding instance template without a service account attached and left a required ENDPOINT metadata key blank.
Without a service account, the VMs could not authenticate to Cloud Storage to fetch their real startup script.
Without ENDPOINT, the fallback startup script had nothing to forward traffic to.
Distinct publishers with included, body-backed reporting in this cluster.
1 article · September 4, 2026
Follow any of these and your For You feed starts watching them — no settings page required.
product
Google pitches AI as the backbone of gaming's live-service future1 distinct publisher
invest
Google's bank agent can read FactSet. The licence, not the model, decides how much.1 distinct publisher
build
Ford wires 8 million cars to a hosted model and builds nothing new in the dash1 distinct publisher
security
ONCD stakes Texas water security on six months of donated vendor red teaming4 distinct publishers
Evidence-backed comparisons of source perspectives and observed adoption signals. Read the methodology
Which Builder, Operator, and Investor concerns the observed source mix emphasized—not a truth score.
Evidence, demonstrated adoption, hype gap, incentives, and confidence are assessed independently, each on its own current evidence. How these are measured.
One terminal history, one vendor doc
Most of what is here is one person's session transcript: the exact lock message at 1 percent, the gcloud and curl calls that bypass the Console, the TLS handshake that ruled out DNS and certificates. Google's own installation troubleshooting guide is quoted, but only for the step 3 retry, which is the least consequential finding. The claim that carries the story — a wizard-built template with no service account and an empty ENDPOINT key — has nothing behind it but the author's inspection, and the text available to us breaks off mid-diagnosis before that Compute Engine evidence is laid out.
A single trial org
One free evaluation organization, provisioned by one person in September 2026, is the entire sample. Nothing in this reporting indicates whether the wizard emits the same broken template for other projects or regions, and there is no Google incident note or second practitioner account to count either way.
Under-claims its own finding
The framing is modest to a fault: a war story with a fix at the end, aimed at fellow sufferers. It does not press the harder question its own evidence raises, which is that a vendor provisioning path reported four green steps and an ACTIVE runtime over a fleet that could not boot. There is no forecasting here, no product pitch, and no wider inference drawn; if anything the piece is quieter than the defect it describes.
Reputational, not commercial
A personal dev.to post about a free-trial project, with no product, sponsor or vendor relationship anywhere in view. The pull that does exist is reputational and search-shaped — the piece is explicitly written for whoever is staring at the same 502 — which rewards a tidy single-cause arc more than it rewards admitting what was never tested.
One credible witness, unchecked
The mechanical detail is hard to fabricate and cheap for the next person to falsify, which counts in its favour. Holding the number down: a single publisher, no word from Google, and two readings the account never establishes — why the template had to be cloned instead of amended, and how a template missing only one of the two settings would have behaved.