Class: Google::Apis::DataprocV1::TemplateParameter
- Inherits:
-
Object
- Object
- Google::Apis::DataprocV1::TemplateParameter
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/dataproc_v1/classes.rb,
generated/google/apis/dataproc_v1/representations.rb,
generated/google/apis/dataproc_v1/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
-
#description ⇒ String
Optional.
-
#fields ⇒ Array<String>
Required.
-
#name ⇒ String
Required.
-
#validation ⇒ Google::Apis::DataprocV1::ParameterValidation
Configuration for parameter validation.
Instance Method Summary collapse
-
#initialize(**args) ⇒ TemplateParameter
constructor
A new instance of TemplateParameter.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Core::JsonObjectSupport
Methods included from Core::Hashable
Constructor Details
#initialize(**args) ⇒ TemplateParameter
Returns a new instance of TemplateParameter.
3023 3024 3025 |
# File 'generated/google/apis/dataproc_v1/classes.rb', line 3023 def initialize(**args) update!(**args) end |
Instance Attribute Details
#description ⇒ String
Optional. Brief description of the parameter. Must not exceed 1024 characters.
Corresponds to the JSON property description
2970 2971 2972 |
# File 'generated/google/apis/dataproc_v1/classes.rb', line 2970 def description @description end |
#fields ⇒ Array<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:
labels'key'
placement.clusterSelector.clusterLabels'key'
placement.managedCluster.labels'key'
placement.clusterSelector.clusterLabels'key'
jobs'step-id'.labels'key'
Jobs in the jobs list can be referenced by step-id:
jobs'step-id'.hadoopJob.mainJarFileUri
jobs'step-id'.hiveJob.queryFileUri
jobs'step-id'.pySparkJob.mainPythonFileUri
jobs'step-id'.hadoopJob.jarFileUris0
jobs'step-id'.hadoopJob.archiveUris0
jobs'step-id'.hadoopJob.fileUris0
jobs'step-id'.pySparkJob.pythonFileUris0
Items in repeated fields can be referenced by a zero-based index:
jobs'step-id'.sparkJob.args0
Other examples:
jobs'step-id'.hadoopJob.properties'key'
jobs'step-id'.hadoopJob.args0
jobs'step-id'.hiveJob.scriptVariables'key'
jobs'step-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
jobs'step-id'.sparkJob.args
Corresponds to the JSON property fields
3007 3008 3009 |
# File 'generated/google/apis/dataproc_v1/classes.rb', line 3007 def fields @fields end |
#name ⇒ String
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
3016 3017 3018 |
# File 'generated/google/apis/dataproc_v1/classes.rb', line 3016 def name @name end |
#validation ⇒ Google::Apis::DataprocV1::ParameterValidation
Configuration for parameter validation.
Corresponds to the JSON property validation
3021 3022 3023 |
# File 'generated/google/apis/dataproc_v1/classes.rb', line 3021 def validation @validation end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
3028 3029 3030 3031 3032 3033 |
# File 'generated/google/apis/dataproc_v1/classes.rb', line 3028 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 |