How CloudBurrow works.
Google's own emulators, Knative and CloudBurrow's own services in one local kind cluster, wired to the official SDKs, with credentials that authorise nothing.
A real Kubernetes cluster underneath
cloudburrow up creates a kind cluster in Docker. It starts Google's own emulators where they exist and CloudBurrow's own services where they don't, then wires them together. Because it is real Kubernetes, kubectl, Helm charts and operators work against it directly.
Redrawn from How it fits together, in the README
at 82a2eb9.
Reuse over rewrite
Google's own emulators are integrated, not reimplemented. CloudBurrow builds only where no upstream exists, and records the evidence for each choice, with the measurements behind it, in docs/upstream-evaluation.md.
Cloud Run on Knative
The Cloud Run v2 API is served by CloudBurrow's adapter, which maps each service onto Knative Serving in the cluster. What the adapter cannot map is refused with the field named, never silently dropped.
Credentials
cloudburrow env points tooling at a local ADC fixture and a GCE metadata server. A test fails if a
real ya29. token ever appears. IAM Credentials generateAccessToken and
generateIdToken come from a local signer; signBlob is Unimplemented. The tokens
authorise nothing.
Credentials and the local metadata server, in docs/credentials.md
Safety defaults
Built for testing
Build against Google Cloud APIs, locally
Free and open source under Apache-2.0. No account, no sign-up, no Google Cloud bill.