Class: Google::Apis::ComputeV1::BulkInsertInstanceResource
- Inherits:
-
Object
- Object
- Google::Apis::ComputeV1::BulkInsertInstanceResource
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_v1/classes.rb,
lib/google/apis/compute_v1/representations.rb,
lib/google/apis/compute_v1/representations.rb
Overview
A transient resource used in compute.instances.bulkInsert and compute.regionInstances.bulkInsert . This resource is not persisted anywhere, it is used only for processing the requests.
Instance Attribute Summary collapse
-
#count ⇒ Fixnum
The maximum number of instances to create.
-
#instance_flexibility_policy ⇒ Google::Apis::ComputeV1::InstanceFlexibilityPolicy
A flexible specification of machine types for instances to create.
-
#instance_properties ⇒ Google::Apis::ComputeV1::InstanceProperties
The instance properties defining the VM instances to be created.
-
#location_policy ⇒ Google::Apis::ComputeV1::LocationPolicy
Configuration for location policy among multiple possible locations (e.g. preferences for zone selection among zones in a single region).
-
#min_count ⇒ Fixnum
The minimum number of instances to create.
-
#name_pattern ⇒ String
The string pattern used for the names of the VMs.
-
#per_instance_properties ⇒ Hash<String,Google::Apis::ComputeV1::BulkInsertInstanceResourcePerInstanceProperties>
Per-instance properties to be set on individual instances.
-
#source_instance_template ⇒ String
Specifies the instance template from which to create instances.
Instance Method Summary collapse
-
#initialize(**args) ⇒ BulkInsertInstanceResource
constructor
A new instance of BulkInsertInstanceResource.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ BulkInsertInstanceResource
Returns a new instance of BulkInsertInstanceResource.
6680 6681 6682 |
# File 'lib/google/apis/compute_v1/classes.rb', line 6680 def initialize(**args) update!(**args) end |
Instance Attribute Details
#count ⇒ Fixnum
The maximum number of instances to create.
Corresponds to the JSON property count
6610 6611 6612 |
# File 'lib/google/apis/compute_v1/classes.rb', line 6610 def count @count end |
#instance_flexibility_policy ⇒ Google::Apis::ComputeV1::InstanceFlexibilityPolicy
A flexible specification of machine types for instances to create.
Corresponds to the JSON property instanceFlexibilityPolicy
6615 6616 6617 |
# File 'lib/google/apis/compute_v1/classes.rb', line 6615 def instance_flexibility_policy @instance_flexibility_policy end |
#instance_properties ⇒ Google::Apis::ComputeV1::InstanceProperties
The instance properties defining the VM instances to be created. Required
if sourceInstanceTemplate is not provided.
Corresponds to the JSON property instanceProperties
6621 6622 6623 |
# File 'lib/google/apis/compute_v1/classes.rb', line 6621 def instance_properties @instance_properties end |
#location_policy ⇒ Google::Apis::ComputeV1::LocationPolicy
Configuration for location policy among multiple possible locations
(e.g. preferences for zone selection among zones in a single region).
Corresponds to the JSON property locationPolicy
6627 6628 6629 |
# File 'lib/google/apis/compute_v1/classes.rb', line 6627 def location_policy @location_policy end |
#min_count ⇒ Fixnum
The minimum number of instances to create. If no min_count is
specified then count is used as the default value. Ifmin_count instances
cannot be created, then no instances will
be created and instances already created will be deleted.
Corresponds to the JSON property minCount
6635 6636 6637 |
# File 'lib/google/apis/compute_v1/classes.rb', line 6635 def min_count @min_count end |
#name_pattern ⇒ String
The string pattern used for the names of the VMs.
Either name_pattern or per_instance_properties
must be set. The pattern must contain one continuous sequence of
placeholder hash characters (#) with each character corresponding to one
digit of the generated instance name. Example: a name_pattern
of inst-#### generates instance names such asinst-0001 and inst-0002. If
existing instances
in the same project and zone have names that match the name pattern
then the generated instance numbers start after the biggest
existing number. For example, if there exists an instance with nameinst-0050,
then instance names generated using the patterninst-#### begin with inst-0051.
The name pattern
placeholder #...# can contain up to 18 characters.
Corresponds to the JSON property namePattern
6652 6653 6654 |
# File 'lib/google/apis/compute_v1/classes.rb', line 6652 def name_pattern @name_pattern end |
#per_instance_properties ⇒ Hash<String,Google::Apis::ComputeV1::BulkInsertInstanceResourcePerInstanceProperties>
Per-instance properties to be set on individual instances.
Keys of this map specify requested instance names.
Can be empty if name_pattern is used.
Corresponds to the JSON property perInstanceProperties
6659 6660 6661 |
# File 'lib/google/apis/compute_v1/classes.rb', line 6659 def per_instance_properties @per_instance_properties end |
#source_instance_template ⇒ String
Specifies the instance template from which to create instances. You may combine sourceInstanceTemplate withinstanceProperties to override specific values from an existing instance template. Bulk API follows the semantics of JSON Merge Patch described by RFC 7396. It can be a full or partial URL. For example, the following are all valid URLs to an instance template:
- https://www.googleapis.com/compute/v1/projects/project/global/ instanceTemplates/instanceTemplate
- projects/project/global/instanceTemplates/instanceTemplate
- global/instanceTemplates/instanceTemplate
This field is optional.
Corresponds to the JSON property
sourceInstanceTemplate
6678 6679 6680 |
# File 'lib/google/apis/compute_v1/classes.rb', line 6678 def source_instance_template @source_instance_template end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
6685 6686 6687 6688 6689 6690 6691 6692 6693 6694 |
# File 'lib/google/apis/compute_v1/classes.rb', line 6685 def update!(**args) @count = args[:count] if args.key?(:count) @instance_flexibility_policy = args[:instance_flexibility_policy] if args.key?(:instance_flexibility_policy) @instance_properties = args[:instance_properties] if args.key?(:instance_properties) @location_policy = args[:location_policy] if args.key?(:location_policy) @min_count = args[:min_count] if args.key?(:min_count) @name_pattern = args[:name_pattern] if args.key?(:name_pattern) @per_instance_properties = args[:per_instance_properties] if args.key?(:per_instance_properties) @source_instance_template = args[:source_instance_template] if args.key?(:source_instance_template) end |