Google Cloud WaitForJob

Google Cloud WaitForJob

Certified

Wait for a Dataflow job to complete

Polls a Dataflow job status sequentially until it enters a terminal state (JOB_STATE_DONE, JOB_STATE_FAILED, JOB_STATE_CANCELLED, JOB_STATE_DRAINED, JOB_STATE_UPDATED).

yaml
type: io.kestra.plugin.gcp.dataflow.WaitForJob

Launch a template job and wait for its completion.

yaml
id: dataflow_classic_template
namespace: company.team

inputs:
  - id: input_path
    type: STRING

tasks:
  - id: launch
    type: io.kestra.plugin.gcp.dataflow.LaunchTemplate
    projectId: "{{ secret('GCP_PROJECT_ID') }}"
    location: us-central1
    jobName: my-etl-job
    gcsPath: gs://my-bucket/templates/my-template
    parameters:
      inputFile: "{{ inputs.input_path }}"
      outputTable: my-project:my_dataset.my_table

  - id: wait
    type: io.kestra.plugin.gcp.dataflow.WaitForJob
    projectId: "{{ secret('GCP_PROJECT_ID') }}"
    location: us-central1
    jobId: "{{ outputs.launch.jobId }}"
    pollInterval: PT15S
    maxDuration: PT1H
Properties

The Dataflow job ID

The regional endpoint (e.g. us-central1)

Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.

Definitions
assetFailureBehaviorstring
Possible Values
IGNOREFAILWARN

Asset failure behavior

Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.

enableAutobooleanstring

Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.

inputsarray

The assets consumed as inputs.

id*string
Min length1
typestring
outputs

The assets produced as outputs.

id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*string
Min length1

Custom asset type

descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150

The GCP service account to impersonate

DefaultPT1H

The maximum duration to wait before timing out

DefaultPT15S

The interval between polls

The GCP project ID

SubTypestring
Default["https://www.googleapis.com/auth/cloud-platform"]

The GCP scopes to be used

The GCP service account

The job ID

A map containing job metrics at completion

The final terminal state of the job