Build Dataflow flex template configurations with container specs, worker settings, and streaming engine options.
Build Dataflow flex template configurations with container specs, worker settings, networking, and streaming engine options.
Required Fields
jobNameprojectIdregioncontainerSpec.imageenvironment.tempLocationOutput will appear here...Build a Dataflow Flex Template job configuration: a Docker containerSpec image (built and pushed to Artifact Registry ahead of time) plus runtime parameters and environment settings, as opposed to a classic template's precompiled, parameter-substitution-only model. enableStreamingEngine offloads windowing and state management to the Dataflow service rather than worker VMs, which is what makes maxWorkers autoscaling actually effective for stateful streaming pipelines, without it, worker-local state pins scaling far more conservatively. ipConfiguration: WORKER_IP_PRIVATE requires the target subnetwork to have Private Google Access enabled, or workers can't reach the Dataflow control plane and Google APIs at all despite having no public IP to do so through.
A data engineering team migrates a Dataflow pipeline's networking to a private-IP-only subnet as part of a security hardening pass, and the very next deploy fails with every worker stuck in a starting state that never progresses, timing out after the standard startup window. Nothing in the pipeline code changed, only the ipConfiguration setting. They use the builder to review the environment block, realize WORKER_IP_PRIVATE was flipped without checking whether the target subnetwork had Private Google Access, enable it on the subnet, and the exact same job definition launches cleanly on the next attempt.
A stateful streaming pipeline without enableStreamingEngine can look 'stuck' under increasing backlog even with a generous maxWorkers, because state-migration cost caps how fast the autoscaler will actually add workers, don't assume a scaling problem is a quota or maxWorkers issue before checking this flag.
kmsKeyName location must match the job's region exactly, a common mistake is reusing a multi-region key reference or a key from a different region than the workers, which fails at submission, not at runtime, so at least the failure is fast.
additionalExperiments flags like use_runner_v2 aren't purely cosmetic, they change execution engine behavior in ways that can affect which Beam features and connectors are available, verify template compatibility with any experiment flags before assuming they're safe to add or remove.
The builder requires jobName, projectId, region, containerSpec.image, and environment.tempLocation to resolve before accepting the config, the minimum fields the Dataflow API needs to launch a Flex Template job — an image to run, a project/region to run it in, and scratch storage to stage state — while networking, streaming engine, and encryption settings are validated as well-formed JSON but their runtime implications are yours to reason through.
Was this tool helpful?
Disclaimer: This tool runs entirely in your browser. No data is sent to our servers. Always verify outputs before using them in production. AWS, Azure, and GCP are trademarks of their respective owners.