Class: Google::Apis::ComputeAlpha::MultiMig

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

Overview

Multi-MIG represents a group of managed instance groups.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ MultiMig

Returns a new instance of MultiMig.



29513
29514
29515
# File 'lib/google/apis/compute_alpha/classes.rb', line 29513

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

Instance Attribute Details

#creation_timestampString

[Output only] The creation timestamp of this multi-MIG in RFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


29439
29440
29441
# File 'lib/google/apis/compute_alpha/classes.rb', line 29439

def creation_timestamp
  @creation_timestamp
end

#descriptionString

An optional description of this resource. Corresponds to the JSON property description

Returns:

  • (String)


29444
29445
29446
# File 'lib/google/apis/compute_alpha/classes.rb', line 29444

def description
  @description
end

#idFixnum

[Output only] The unique identifier for this resource type. The server generates this identifier. Corresponds to the JSON property id

Returns:

  • (Fixnum)


29450
29451
29452
# File 'lib/google/apis/compute_alpha/classes.rb', line 29450

def id
  @id
end

#kindString

[Output only] Type of the resource. Always compute#multiMig for multi-MIGs. Corresponds to the JSON property kind

Returns:

  • (String)


29455
29456
29457
# File 'lib/google/apis/compute_alpha/classes.rb', line 29455

def kind
  @kind
end

#location_policyGoogle::Apis::ComputeAlpha::MultiMigLocationPolicy

Policy regarding where to create managed instance groups. Initially only zonal managed instance groups in the same zone are supported. Corresponds to the JSON property locationPolicy



29461
29462
29463
# File 'lib/google/apis/compute_alpha/classes.rb', line 29461

def location_policy
  @location_policy
end

#nameString

The name of the multi-MIG. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. Corresponds to the JSON property name

Returns:

  • (String)


29471
29472
29473
# File 'lib/google/apis/compute_alpha/classes.rb', line 29471

def name
  @name
end

#partsHash<String,Google::Apis::ComputeAlpha::MultiMigPart>

Map of user-provided names associated with their parts. Keys in the map are arbitrary names chosen by the user for parts. Keys need to be alphanumeric and not longer than 64 characters. Corresponds to the JSON property parts



29478
29479
29480
# File 'lib/google/apis/compute_alpha/classes.rb', line 29478

def parts
  @parts
end

#regionString

[Output only] The URL of the region where the resource resides. You must specify this field as part of the HTTP request URL. You cannot set the region as a field in the request body. Corresponds to the JSON property region

Returns:

  • (String)


29485
29486
29487
# File 'lib/google/apis/compute_alpha/classes.rb', line 29485

def region
  @region
end

#resource_policiesGoogle::Apis::ComputeAlpha::MultiMigResourcePolicies

Resource policies message for a multi-MIG. Specifies the workload policy configuration of the multi-MIG. Corresponds to the JSON property resourcePolicies



29491
29492
29493
# File 'lib/google/apis/compute_alpha/classes.rb', line 29491

def resource_policies
  @resource_policies
end

#scheduling_policyGoogle::Apis::ComputeAlpha::MultiMigSchedulingPolicy

Policy for handling provisioning and other scheduling-related events. Corresponds to the JSON property schedulingPolicy



29496
29497
29498
# File 'lib/google/apis/compute_alpha/classes.rb', line 29496

def scheduling_policy
  @scheduling_policy
end

[Output only] Server-defined URL for the resource. Corresponds to the JSON property selfLink

Returns:

  • (String)


29501
29502
29503
# File 'lib/google/apis/compute_alpha/classes.rb', line 29501

def self_link
  @self_link
end

[Output only] Server-defined URL for this resource with the resource id. Corresponds to the JSON property selfLinkWithId

Returns:

  • (String)


29506
29507
29508
# File 'lib/google/apis/compute_alpha/classes.rb', line 29506

def self_link_with_id
  @self_link_with_id
end

#statusGoogle::Apis::ComputeAlpha::MultiMigStatus

Corresponds to the JSON property status



29511
29512
29513
# File 'lib/google/apis/compute_alpha/classes.rb', line 29511

def status
  @status
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



29518
29519
29520
29521
29522
29523
29524
29525
29526
29527
29528
29529
29530
29531
29532
# File 'lib/google/apis/compute_alpha/classes.rb', line 29518

def update!(**args)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @description = args[:description] if args.key?(:description)
  @id = args[:id] if args.key?(:id)
  @kind = args[:kind] if args.key?(:kind)
  @location_policy = args[:location_policy] if args.key?(:location_policy)
  @name = args[:name] if args.key?(:name)
  @parts = args[:parts] if args.key?(:parts)
  @region = args[:region] if args.key?(:region)
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
  @scheduling_policy = args[:scheduling_policy] if args.key?(:scheduling_policy)
  @self_link = args[:self_link] if args.key?(:self_link)
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
  @status = args[:status] if args.key?(:status)
end