Class: Google::Apis::DataprocV1::WorkflowTemplate

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/dataproc_v1/classes.rb,
lib/google/apis/dataproc_v1/representations.rb,
lib/google/apis/dataproc_v1/representations.rb

Overview

A Dataproc workflow template resource.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ WorkflowTemplate

Returns a new instance of WorkflowTemplate.



12273
12274
12275
# File 'lib/google/apis/dataproc_v1/classes.rb', line 12273

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#create_timeString

Output only. The time template was created. Corresponds to the JSON property createTime

Returns:

  • (String)


12195
12196
12197
# File 'lib/google/apis/dataproc_v1/classes.rb', line 12195

def create_time
  @create_time
end

#dag_timeoutString

Optional. Timeout duration for the DAG of jobs, expressed in seconds (see JSON representation of duration (https://developers.google.com/protocol-buffers/ docs/proto3#json)). The timeout duration must be from 10 minutes ("600s") to 24 hours ("86400s"). The timer begins when the first job is submitted. If the workflow is running at the end of the timeout period, any remaining jobs are cancelled, the workflow is ended, and if the workflow was running on a managed cluster, the cluster is deleted. Corresponds to the JSON property dagTimeout

Returns:

  • (String)


12206
12207
12208
# File 'lib/google/apis/dataproc_v1/classes.rb', line 12206

def dag_timeout
  @dag_timeout
end

#encryption_configGoogle::Apis::DataprocV1::GoogleCloudDataprocV1WorkflowTemplateEncryptionConfig

Encryption settings for encrypting workflow template job arguments. Corresponds to the JSON property encryptionConfig



12211
12212
12213
# File 'lib/google/apis/dataproc_v1/classes.rb', line 12211

def encryption_config
  @encryption_config
end

#idString

Corresponds to the JSON property id

Returns:

  • (String)


12216
12217
12218
# File 'lib/google/apis/dataproc_v1/classes.rb', line 12216

def id
  @id
end

#jobsArray<Google::Apis::DataprocV1::OrderedJob>

Required. The Directed Acyclic Graph of Jobs to submit. Corresponds to the JSON property jobs



12221
12222
12223
# File 'lib/google/apis/dataproc_v1/classes.rb', line 12221

def jobs
  @jobs
end

#labelsHash<String,String>

Optional. The labels to associate with this template. These labels will be propagated to all jobs and clusters created by the workflow instance.Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https:// www.ietf.org/rfc/rfc1035.txt).Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/ rfc/rfc1035.txt).No more than 32 labels can be associated with a template. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


12231
12232
12233
# File 'lib/google/apis/dataproc_v1/classes.rb', line 12231

def labels
  @labels
end

#nameString

Output only. The resource name of the workflow template, as described in https: //cloud.google.com/apis/design/resource_names. For projects.regions. workflowTemplates, the resource name of the template has the following format: projects/project_id/regions/region/workflowTemplates/template_id For projects.locations.workflowTemplates, the resource name of the template has the following format: projects/project_id/locations/location/ workflowTemplates/template_id Corresponds to the JSON property name

Returns:

  • (String)


12242
12243
12244
# File 'lib/google/apis/dataproc_v1/classes.rb', line 12242

def name
  @name
end

#parametersArray<Google::Apis::DataprocV1::TemplateParameter>

Optional. Template parameters whose values are substituted into the template. Values for parameters must be provided when the template is instantiated. Corresponds to the JSON property parameters



12248
12249
12250
# File 'lib/google/apis/dataproc_v1/classes.rb', line 12248

def parameters
  @parameters
end

#placementGoogle::Apis::DataprocV1::WorkflowTemplatePlacement

Specifies workflow execution target.Either managed_cluster or cluster_selector is required. Corresponds to the JSON property placement



12254
12255
12256
# File 'lib/google/apis/dataproc_v1/classes.rb', line 12254

def placement
  @placement
end

#update_timeString

Output only. The time template was last updated. Corresponds to the JSON property updateTime

Returns:

  • (String)


12259
12260
12261
# File 'lib/google/apis/dataproc_v1/classes.rb', line 12259

def update_time
  @update_time
end

#versionFixnum

Optional. Used to perform a consistent read-modify-write.This field should be left blank for a CreateWorkflowTemplate request. It is required for an UpdateWorkflowTemplate request, and must match the current server version. A typical update template flow would fetch the current template with a GetWorkflowTemplate request, which will return the current template with the version field filled in with the current server version. The user updates other fields in the template, then returns it as part of the UpdateWorkflowTemplate request. Corresponds to the JSON property version

Returns:

  • (Fixnum)


12271
12272
12273
# File 'lib/google/apis/dataproc_v1/classes.rb', line 12271

def version
  @version
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



12278
12279
12280
12281
12282
12283
12284
12285
12286
12287
12288
12289
12290
# File 'lib/google/apis/dataproc_v1/classes.rb', line 12278

def update!(**args)
  @create_time = args[:create_time] if args.key?(:create_time)
  @dag_timeout = args[:dag_timeout] if args.key?(:dag_timeout)
  @encryption_config = args[:encryption_config] if args.key?(:encryption_config)
  @id = args[:id] if args.key?(:id)
  @jobs = args[:jobs] if args.key?(:jobs)
  @labels = args[:labels] if args.key?(:labels)
  @name = args[:name] if args.key?(:name)
  @parameters = args[:parameters] if args.key?(:parameters)
  @placement = args[:placement] if args.key?(:placement)
  @update_time = args[:update_time] if args.key?(:update_time)
  @version = args[:version] if args.key?(:version)
end