Class: Google::Apis::BatchV1::InstancePolicyOrTemplate

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

Overview

InstancePolicyOrTemplate lets you define the type of resources to use for this job either with an InstancePolicy or an instance template. If undefined, Batch picks the type of VM to use and doesn't include optional VM resources such as GPUs and extra disks.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ InstancePolicyOrTemplate

Returns a new instance of InstancePolicyOrTemplate.



1052
1053
1054
# File 'lib/google/apis/batch_v1/classes.rb', line 1052

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

Instance Attribute Details

#install_gpu_driversBoolean Also known as: install_gpu_drivers?

Set this field true if users want Batch to help fetch drivers from a third party location and install them for GPUs specified in policy.accelerators or instance_template on their behalf. Default is false. For Container-Optimized Image cases, Batch will install the accelerator driver following milestones of https://cloud.google.com/container-optimized-os/docs/release-notes. For non Container-Optimized Image cases, following https://github.com/ GoogleCloudPlatform/compute-gpu-installation/blob/main/linux/ install_gpu_driver.py. Corresponds to the JSON property installGpuDrivers

Returns:

  • (Boolean)


1037
1038
1039
# File 'lib/google/apis/batch_v1/classes.rb', line 1037

def install_gpu_drivers
  @install_gpu_drivers
end

#instance_templateString

Name of an instance template used to create VMs. Named the field as ' instance_template' instead of 'template' to avoid c++ keyword conflict. Corresponds to the JSON property instanceTemplate

Returns:

  • (String)


1044
1045
1046
# File 'lib/google/apis/batch_v1/classes.rb', line 1044

def instance_template
  @instance_template
end

#policyGoogle::Apis::BatchV1::InstancePolicy

InstancePolicy describes an instance type and resources attached to each VM created by this InstancePolicy. Corresponds to the JSON property policy



1050
1051
1052
# File 'lib/google/apis/batch_v1/classes.rb', line 1050

def policy
  @policy
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1057
1058
1059
1060
1061
# File 'lib/google/apis/batch_v1/classes.rb', line 1057

def update!(**args)
  @install_gpu_drivers = args[:install_gpu_drivers] if args.key?(:install_gpu_drivers)
  @instance_template = args[:instance_template] if args.key?(:instance_template)
  @policy = args[:policy] if args.key?(:policy)
end