Class: Google::Apis::ReplicapoolV1beta2::InstanceGroupManager

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

Overview

An Instance Group Manager resource.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ InstanceGroupManager

Returns a new instance of InstanceGroupManager



117
118
119
# File 'generated/google/apis/replicapool_v1beta2/classes.rb', line 117

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

Instance Attribute Details

#auto_healing_policiesArray<Google::Apis::ReplicapoolV1beta2::ReplicaPoolAutoHealingPolicy>

The autohealing policy for this managed instance group. You can specify only one value. Corresponds to the JSON property autoHealingPolicies



33
34
35
# File 'generated/google/apis/replicapool_v1beta2/classes.rb', line 33

def auto_healing_policies
  @auto_healing_policies
end

#base_instance_nameString

The base instance name to use for instances in this group. The value must be a valid RFC1035 name. Supported characters are lowercase letters, numbers, and hyphens (-). Instances are named by appending a hyphen and a random four- character string to the base instance name. Corresponds to the JSON property baseInstanceName

Returns:

  • (String)


41
42
43
# File 'generated/google/apis/replicapool_v1beta2/classes.rb', line 41

def base_instance_name
  @base_instance_name
end

#creation_timestampString

[Output only] The time the instance group manager was created, in RFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


47
48
49
# File 'generated/google/apis/replicapool_v1beta2/classes.rb', line 47

def creation_timestamp
  @creation_timestamp
end

#current_sizeFixnum

[Output only] The number of instances that currently exist and are a part of this group. This includes instances that are starting but are not yet RUNNING, and instances that are in the process of being deleted or abandoned. Corresponds to the JSON property currentSize

Returns:

  • (Fixnum)


54
55
56
# File 'generated/google/apis/replicapool_v1beta2/classes.rb', line 54

def current_size
  @current_size
end

#descriptionString

An optional textual description of the instance group manager. Corresponds to the JSON property description

Returns:

  • (String)


59
60
61
# File 'generated/google/apis/replicapool_v1beta2/classes.rb', line 59

def description
  @description
end

#fingerprintString

[Output only] Fingerprint of the instance group manager. This field is used for optimistic locking. An up-to-date fingerprint must be provided in order to modify the Instance Group Manager resource. Corresponds to the JSON property fingerprint NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


67
68
69
# File 'generated/google/apis/replicapool_v1beta2/classes.rb', line 67

def fingerprint
  @fingerprint
end

#groupString

[Output only] The full URL of the instance group created by the manager. This group contains all of the instances being managed, and cannot contain non- managed instances. Corresponds to the JSON property group

Returns:

  • (String)


74
75
76
# File 'generated/google/apis/replicapool_v1beta2/classes.rb', line 74

def group
  @group
end

#idFixnum

[Output only] A server-assigned unique identifier for the resource. Corresponds to the JSON property id

Returns:

  • (Fixnum)


79
80
81
# File 'generated/google/apis/replicapool_v1beta2/classes.rb', line 79

def id
  @id
end

#instance_templateString

The full URL to an instance template from which all new instances will be created. Corresponds to the JSON property instanceTemplate

Returns:

  • (String)


85
86
87
# File 'generated/google/apis/replicapool_v1beta2/classes.rb', line 85

def instance_template
  @instance_template
end

#kindString

[Output only] The resource type. Always replicapool#instanceGroupManager. Corresponds to the JSON property kind

Returns:

  • (String)


90
91
92
# File 'generated/google/apis/replicapool_v1beta2/classes.rb', line 90

def kind
  @kind
end

#nameString

The name of the instance group manager. Must be 1-63 characters long and comply with RFC1035. Supported characters include lowercase letters, numbers, and hyphens. Corresponds to the JSON property name

Returns:

  • (String)


97
98
99
# File 'generated/google/apis/replicapool_v1beta2/classes.rb', line 97

def name
  @name
end

[Output only] The fully qualified URL for this resource. Corresponds to the JSON property selfLink

Returns:

  • (String)


102
103
104
# File 'generated/google/apis/replicapool_v1beta2/classes.rb', line 102

def self_link
  @self_link
end

#target_poolsArray<String>

The full URL of all target pools to which new instances in the group are added. Updating the target pool values does not affect existing instances. Corresponds to the JSON property targetPools

Returns:

  • (Array<String>)


108
109
110
# File 'generated/google/apis/replicapool_v1beta2/classes.rb', line 108

def target_pools
  @target_pools
end

#target_sizeFixnum

[Output only] The number of instances that the manager is attempting to maintain. Deleting or abandoning instances affects this number, as does resizing the group. Corresponds to the JSON property targetSize

Returns:

  • (Fixnum)


115
116
117
# File 'generated/google/apis/replicapool_v1beta2/classes.rb', line 115

def target_size
  @target_size
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'generated/google/apis/replicapool_v1beta2/classes.rb', line 122

def update!(**args)
  @auto_healing_policies = args[:auto_healing_policies] if args.key?(:auto_healing_policies)
  @base_instance_name = args[:base_instance_name] if args.key?(:base_instance_name)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @current_size = args[:current_size] if args.key?(:current_size)
  @description = args[:description] if args.key?(:description)
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
  @group = args[:group] if args.key?(:group)
  @id = args[:id] if args.key?(:id)
  @instance_template = args[:instance_template] if args.key?(:instance_template)
  @kind = args[:kind] if args.key?(:kind)
  @name = args[:name] if args.key?(:name)
  @self_link = args[:self_link] if args.key?(:self_link)
  @target_pools = args[:target_pools] if args.key?(:target_pools)
  @target_size = args[:target_size] if args.key?(:target_size)
end