Class: Google::Apis::DataflowV1b3::RuntimeEnvironment

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

Overview

The environment values to set at runtime.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ RuntimeEnvironment

Returns a new instance of RuntimeEnvironment.



4531
4532
4533
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4531

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

Instance Attribute Details

#additional_experimentsArray<String>

Optional. Additional experiment flags for the job, specified with the -- experiments option. Corresponds to the JSON property additionalExperiments

Returns:

  • (Array<String>)


4411
4412
4413
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4411

def additional_experiments
  @additional_experiments
end

#additional_user_labelsHash<String,String>

Optional. Additional user labels to be specified for the job. Keys and values should follow the restrictions specified in the labeling restrictions page. An object containing a list of "key": value pairs. Example: "name": "wrench", " mass": "1kg", "count": "3". Corresponds to the JSON property additionalUserLabels

Returns:

  • (Hash<String,String>)


4420
4421
4422
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4420

def additional_user_labels
  @additional_user_labels
end

#bypass_temp_dir_validationBoolean Also known as: bypass_temp_dir_validation?

Optional. Whether to bypass the safety checks for the job's temporary directory. Use with caution. Corresponds to the JSON property bypassTempDirValidation

Returns:

  • (Boolean)


4426
4427
4428
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4426

def bypass_temp_dir_validation
  @bypass_temp_dir_validation
end

#disk_size_gbFixnum

Optional. The disk size, in gigabytes, to use on each remote Compute Engine worker instance. Corresponds to the JSON property diskSizeGb

Returns:

  • (Fixnum)


4433
4434
4435
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4433

def disk_size_gb
  @disk_size_gb
end

#enable_streaming_engineBoolean Also known as: enable_streaming_engine?

Optional. Whether to enable Streaming Engine for the job. Corresponds to the JSON property enableStreamingEngine

Returns:

  • (Boolean)


4438
4439
4440
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4438

def enable_streaming_engine
  @enable_streaming_engine
end

#ip_configurationString

Optional. Configuration for VM IPs. Corresponds to the JSON property ipConfiguration

Returns:

  • (String)


4444
4445
4446
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4444

def ip_configuration
  @ip_configuration
end

#kms_key_nameString

Optional. Name for the Cloud KMS key for the job. Key format is: projects// locations//keyRings//cryptoKeys/ Corresponds to the JSON property kmsKeyName

Returns:

  • (String)


4450
4451
4452
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4450

def kms_key_name
  @kms_key_name
end

#machine_typeString

Optional. The machine type to use for the job. Defaults to the value from the template if not specified. Corresponds to the JSON property machineType

Returns:

  • (String)


4456
4457
4458
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4456

def machine_type
  @machine_type
end

#max_workersFixnum

Optional. The maximum number of Google Compute Engine instances to be made available to your pipeline during execution, from 1 to 1000. The default value is 1. Corresponds to the JSON property maxWorkers

Returns:

  • (Fixnum)


4463
4464
4465
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4463

def max_workers
  @max_workers
end

#networkString

Optional. Network to which VMs will be assigned. If empty or unspecified, the service will use the network "default". Corresponds to the JSON property network

Returns:

  • (String)


4469
4470
4471
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4469

def network
  @network
end

#num_workersFixnum

Optional. The initial number of Google Compute Engine instances for the job. The default value is 11. Corresponds to the JSON property numWorkers

Returns:

  • (Fixnum)


4475
4476
4477
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4475

def num_workers
  @num_workers
end

#service_account_emailString

Optional. The email address of the service account to run the job as. Corresponds to the JSON property serviceAccountEmail

Returns:

  • (String)


4480
4481
4482
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4480

def 
  @service_account_email
end

#streaming_modeString

Optional. Specifies the Streaming Engine message processing guarantees. Reduces cost and latency but might result in duplicate messages committed to storage. Designed to run simple mapping streaming ETL jobs at the lowest cost. For example, Change Data Capture (CDC) to BigQuery is a canonical use case. Corresponds to the JSON property streamingMode

Returns:

  • (String)


4488
4489
4490
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4488

def streaming_mode
  @streaming_mode
end

#subnetworkString

Optional. Subnetwork to which VMs will be assigned, if desired. You can specify a subnetwork using either a complete URL or an abbreviated path. Expected to be of the form "https://www.googleapis.com/compute/v1/projects/ HOST_PROJECT_ID/regions/REGION/subnetworks/SUBNETWORK" or "regions/REGION/ subnetworks/SUBNETWORK". If the subnetwork is located in a Shared VPC network, you must use the complete URL. Corresponds to the JSON property subnetwork

Returns:

  • (String)


4498
4499
4500
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4498

def subnetwork
  @subnetwork
end

#temp_locationString

Required. The Cloud Storage path to use for temporary files. Must be a valid Cloud Storage URL, beginning with gs://. Corresponds to the JSON property tempLocation

Returns:

  • (String)


4504
4505
4506
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4504

def temp_location
  @temp_location
end

#worker_regionString

Required. The Compute Engine region (https://cloud.google.com/compute/docs/ regions-zones/regions-zones) in which worker processing should occur, e.g. "us- west1". Mutually exclusive with worker_zone. If neither worker_region nor worker_zone is specified, default to the control plane's region. Corresponds to the JSON property workerRegion

Returns:

  • (String)


4512
4513
4514
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4512

def worker_region
  @worker_region
end

#worker_zoneString

Optional. The Compute Engine zone (https://cloud.google.com/compute/docs/ regions-zones/regions-zones) in which worker processing should occur, e.g. "us- west1-a". Mutually exclusive with worker_region. If neither worker_region nor worker_zone is specified, a zone in the control plane's region is chosen based on available capacity. If both worker_zone and zone are set, worker_zone takes precedence. Corresponds to the JSON property workerZone

Returns:

  • (String)


4522
4523
4524
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4522

def worker_zone
  @worker_zone
end

#zoneString

Optional. The Compute Engine availability zone for launching worker instances to run your pipeline. In the future, worker_zone will take precedence. Corresponds to the JSON property zone

Returns:

  • (String)


4529
4530
4531
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4529

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4536
4537
4538
4539
4540
4541
4542
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552
4553
4554
4555
# File 'lib/google/apis/dataflow_v1b3/classes.rb', line 4536

def update!(**args)
  @additional_experiments = args[:additional_experiments] if args.key?(:additional_experiments)
  @additional_user_labels = args[:additional_user_labels] if args.key?(:additional_user_labels)
  @bypass_temp_dir_validation = args[:bypass_temp_dir_validation] if args.key?(:bypass_temp_dir_validation)
  @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
  @enable_streaming_engine = args[:enable_streaming_engine] if args.key?(:enable_streaming_engine)
  @ip_configuration = args[:ip_configuration] if args.key?(:ip_configuration)
  @kms_key_name = args[:kms_key_name] if args.key?(:kms_key_name)
  @machine_type = args[:machine_type] if args.key?(:machine_type)
  @max_workers = args[:max_workers] if args.key?(:max_workers)
  @network = args[:network] if args.key?(:network)
  @num_workers = args[:num_workers] if args.key?(:num_workers)
  @service_account_email = args[:service_account_email] if args.key?(:service_account_email)
  @streaming_mode = args[:streaming_mode] if args.key?(:streaming_mode)
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
  @temp_location = args[:temp_location] if args.key?(:temp_location)
  @worker_region = args[:worker_region] if args.key?(:worker_region)
  @worker_zone = args[:worker_zone] if args.key?(:worker_zone)
  @zone = args[:zone] if args.key?(:zone)
end