Class: Google::Apis::DataprocV1beta2::TemplateParameter

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

Overview

A configurable parameter that replaces one or more fields in the template. Parameterizable fields: - Labels - File uris - Job properties - Job arguments - Script variables - Main class (in HadoopJob and SparkJob) - Zone (in ClusterSelector)

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ TemplateParameter

Returns a new instance of TemplateParameter



2375
2376
2377
# File 'generated/google/apis/dataproc_v1beta2/classes.rb', line 2375

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

Instance Attribute Details

#descriptionString

Optional. Brief description of the parameter. Must not exceed 1024 characters. Corresponds to the JSON property description

Returns:

  • (String)


2322
2323
2324
# File 'generated/google/apis/dataproc_v1beta2/classes.rb', line 2322

def description
  @description
end

#fieldsArray<String>

Required. Paths to all fields that the parameter replaces. A field is allowed to appear in at most one parameter's list of field paths.A field path is similar in syntax to a google.protobuf.FieldMask. For example, a field path that references the zone field of a workflow template's cluster selector would be specified as placement.clusterSelector.zone.Also, field paths can reference fields using the following syntax: Values in maps can be referenced by key. Examples
labels'key' placement.clusterSelector.clusterLabels'key' placement.managedCluster.labels'key' placement.clusterSelector.clusterLabels'key' jobsstep-id.labels'key' Jobs in the jobs list can be referenced by step-id. Examples:
jobsstep-id.hadoopJob.mainJarFileUri jobsstep-id.hiveJob.queryFileUri jobsstep-id.pySparkJob.mainPythonFileUri jobsstep-id.hadoopJob.jarFileUris0 jobsstep-id.hadoopJob.archiveUris0 jobsstep-id.hadoopJob.fileUris0 jobsstep-id.pySparkJob.pythonFileUris0 Items in repeated fields can be referenced by a zero-based index. Example:
jobsstep-id.sparkJob.args0 Other examples: jobsstep-id.hadoopJob.properties'key' jobsstep-id.hadoopJob.args0 jobsstep-id.hiveJob.scriptVariables'key' jobsstep-id.hadoopJob.mainJarFileUri placement.clusterSelector.zoneIt may not be possible to parameterize maps and repeated fields in their entirety since only individual map values and individual items in repeated fields can be referenced. For example, the following field paths are invalid: placement.clusterSelector.clusterLabels jobsstep-id.sparkJob.args Corresponds to the JSON property fields

Returns:

  • (Array<String>)


2359
2360
2361
# File 'generated/google/apis/dataproc_v1beta2/classes.rb', line 2359

def fields
  @fields
end

#nameString

Required. Parameter name. The parameter name is used as the key, and paired with the parameter value, which are passed to the template when the template is instantiated. The name must contain only capital letters (A-Z), numbers (0- 9), and underscores (_), and must not start with a number. The maximum length is 40 characters. Corresponds to the JSON property name

Returns:

  • (String)


2368
2369
2370
# File 'generated/google/apis/dataproc_v1beta2/classes.rb', line 2368

def name
  @name
end

#validationGoogle::Apis::DataprocV1beta2::ParameterValidation

Configuration for parameter validation. Corresponds to the JSON property validation



2373
2374
2375
# File 'generated/google/apis/dataproc_v1beta2/classes.rb', line 2373

def validation
  @validation
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2380
2381
2382
2383
2384
2385
# File 'generated/google/apis/dataproc_v1beta2/classes.rb', line 2380

def update!(**args)
  @description = args[:description] if args.key?(:description)
  @fields = args[:fields] if args.key?(:fields)
  @name = args[:name] if args.key?(:name)
  @validation = args[:validation] if args.key?(:validation)
end