Google Cloud Workflows has no official emulator. The dev cycle is: edit YAML, deploy to GCP, trigger, check logs. Repeat for every change.
I built an open-source emulator in Go that runs locally:
docker run -p 8787:8787 -p 8788:8788 \
-v $(pwd)/workflows:/workflows \
-e WORKFLOWS_DIR=/workflows \
ghcr.io/lemonberrylabs/gcw-emulator:latest
What it does:
- Watches your workflow directory and hot-reloads on save
- Full REST and gRPC API compatibility (same endpoints, same request/response format)
- Workflow http.* steps call your local services — so you can run your entire orchestration stack on localhost
- Parallel execution, subworkflows, try/except/retry, expression engine
- Most of the standard library: http, sys, text, json, base64, math, list, map, time, uuid, events, retry
- Built-in web UI at /ui for triggering executions and inspecting results
- CI-friendly: set WORKFLOWS_EMULATOR_HOST=localhost:8787 in your test env
What it doesn't do: googleapis.* connectors (mock them with local HTTP services), IAM/auth, Eventarc triggers, step-level execution
history.
Apache 2.0. Written in Go.
GitHub: https://github.com/lemonberrylabs/gcw-emulator
Docs: https://lemonberrylabs.github.io/gcw-emulator
maorbril•1h ago
this is a major unlock