Class: Google::Apis::ComputeAlpha::InstanceGroupManager
- Inherits:
- 
      Object
      
        - Object
- Google::Apis::ComputeAlpha::InstanceGroupManager
 
- Defined in:
- generated/google/apis/compute_alpha/classes.rb,
 generated/google/apis/compute_alpha/representations.rb,
 generated/google/apis/compute_alpha/representations.rb
Overview
An Instance Group Manager resource. (== resource_for beta. instanceGroupManagers ==) (== resource_for v1.instanceGroupManagers ==) (== resource_for beta.regionInstanceGroupManagers ==) (== resource_for v1. regionInstanceGroupManagers ==)
Instance Attribute Summary collapse
- 
  
    
      #activities  ⇒ Google::Apis::ComputeAlpha::InstanceGroupManagerActivities 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    Corresponds to the JSON property activities.
- 
  
    
      #auto_healing_policies  ⇒ Array<Google::Apis::ComputeAlpha::InstanceGroupManagerAutoHealingPolicy> 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    The autohealing policy for this managed instance group. 
- 
  
    
      #base_instance_name  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    The base instance name to use for instances in this group. 
- 
  
    
      #creation_timestamp  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    [Output Only] The creation timestamp for this managed instance group in RFC3339 text format. 
- 
  
    
      #current_actions  ⇒ Google::Apis::ComputeAlpha::InstanceGroupManagerActionsSummary 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    [Output Only] The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions. 
- 
  
    
      #description  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    An optional description of this resource. 
- 
  
    
      #distribution_policy  ⇒ Google::Apis::ComputeAlpha::DistributionPolicy 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    Policy valid only for regional managed instance groups. 
- 
  
    
      #failover_action  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    The action to perform in case of zone failure. 
- 
  
    
      #fingerprint  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    Fingerprint of this resource. 
- 
  
    
      #id  ⇒ Fixnum 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    [Output Only] A unique identifier for this resource type. 
- 
  
    
      #instance_group  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    [Output Only] The URL of the Instance Group resource. 
- 
  
    
      #instance_template  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    The URL of the instance template that is specified for this managed instance group. 
- 
  
    
      #kind  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    [Output Only] The resource type, which is always compute#instanceGroupManager for managed instance groups. 
- 
  
    
      #name  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    The name of the managed instance group. 
- 
  
    
      #named_ports  ⇒ Array<Google::Apis::ComputeAlpha::NamedPort> 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    Named ports configured for the Instance Groups complementary to this Instance Group Manager. 
- 
  
    
      #pending_actions  ⇒ Google::Apis::ComputeAlpha::InstanceGroupManagerPendingActionsSummary 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    [Output Only] The list of instance actions and the number of instances in this managed instance group that are pending for each of those actions. 
- 
  
    
      #region  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    [Output Only] The URL of the region where the managed instance group resides ( for regional resources). 
- 
  
    
      #self_link  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    [Output Only] The URL for this managed instance group. 
- 
  
    
      #service_account  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    The service account to be used as credentials for all operations performed by the managed instance group on instances. 
- 
  
    
      #stateful_policy  ⇒ Google::Apis::ComputeAlpha::StatefulPolicy 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    Stateful configuration for this Instanced Group Manager Corresponds to the JSON property statefulPolicy.
- 
  
    
      #target_pools  ⇒ Array<String> 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    The URLs for all TargetPool resources to which instances in the instanceGroup field are added. 
- 
  
    
      #target_size  ⇒ Fixnum 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    The target number of running instances for this managed instance group. 
- 
  
    
      #update_policy  ⇒ Google::Apis::ComputeAlpha::InstanceGroupManagerUpdatePolicy 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    The update policy for this managed instance group. 
- 
  
    
      #versions  ⇒ Array<Google::Apis::ComputeAlpha::InstanceGroupManagerVersion> 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    Specifies the instance templates used by this managed instance group to create instances. 
- 
  
    
      #zone  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    [Output Only] The URL of the zone where the managed instance group is located ( for zonal resources). 
Instance Method Summary collapse
- 
  
    
      #initialize(**args)  ⇒ InstanceGroupManager 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    A new instance of InstanceGroupManager. 
- 
  
    
      #update!(**args)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    Update properties of this object. 
Methods included from Google::Apis::Core::JsonObjectSupport
Methods included from Google::Apis::Core::Hashable
Constructor Details
#initialize(**args) ⇒ InstanceGroupManager
Returns a new instance of InstanceGroupManager
| 9718 9719 9720 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9718 def initialize(**args) update!(**args) end | 
Instance Attribute Details
#activities ⇒ Google::Apis::ComputeAlpha::InstanceGroupManagerActivities
Corresponds to the JSON property activities
| 9560 9561 9562 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9560 def activities @activities end | 
#auto_healing_policies ⇒ Array<Google::Apis::ComputeAlpha::InstanceGroupManagerAutoHealingPolicy>
The autohealing policy for this managed instance group. You can specify only
one value.
Corresponds to the JSON property autoHealingPolicies
| 9566 9567 9568 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9566 def auto_healing_policies @auto_healing_policies end | 
#base_instance_name ⇒ String
The base instance name to use for instances in this group. The value must be 1-
58 characters long. Instances are named by appending a hyphen and a random
four-character string to the base instance name. The base instance name must
comply with RFC1035.
Corresponds to the JSON property baseInstanceName
| 9574 9575 9576 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9574 def base_instance_name @base_instance_name end | 
#creation_timestamp ⇒ String
[Output Only] The creation timestamp for this managed instance group in
RFC3339 text format.
Corresponds to the JSON property creationTimestamp
| 9580 9581 9582 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9580 def @creation_timestamp end | 
#current_actions ⇒ Google::Apis::ComputeAlpha::InstanceGroupManagerActionsSummary
[Output Only] The list of instance actions and the number of instances in this
managed instance group that are scheduled for each of those actions.
Corresponds to the JSON property currentActions
| 9586 9587 9588 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9586 def current_actions @current_actions end | 
#description ⇒ String
An optional description of this resource. Provide this property when you
create the resource.
Corresponds to the JSON property description
| 9592 9593 9594 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9592 def description @description end | 
#distribution_policy ⇒ Google::Apis::ComputeAlpha::DistributionPolicy
Policy valid only for regional managed instance groups.
Corresponds to the JSON property distributionPolicy
| 9597 9598 9599 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9597 def distribution_policy @distribution_policy end | 
#failover_action ⇒ String
The action to perform in case of zone failure. Only one value is supported,
NO_FAILOVER. The default is NO_FAILOVER.
Corresponds to the JSON property failoverAction
| 9603 9604 9605 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9603 def failover_action @failover_action end | 
#fingerprint ⇒ String
Fingerprint of this resource. This field may be used in optimistic locking. It
will be ignored when inserting an InstanceGroupManager. An up-to-date
fingerprint must be provided in order to update the InstanceGroupManager or
the field need to be unset.
Corresponds to the JSON property fingerprint
NOTE: Values are automatically base64 encoded/decoded in the client library.
| 9612 9613 9614 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9612 def fingerprint @fingerprint end | 
#id ⇒ Fixnum
[Output Only] A unique identifier for this resource type. The server generates
this identifier.
Corresponds to the JSON property id
| 9618 9619 9620 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9618 def id @id end | 
#instance_group ⇒ String
[Output Only] The URL of the Instance Group resource.
Corresponds to the JSON property instanceGroup
| 9623 9624 9625 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9623 def instance_group @instance_group end | 
#instance_template ⇒ String
The URL of the instance template that is specified for this managed instance
group. The group uses this template to create all new instances in the managed
instance group.
Corresponds to the JSON property instanceTemplate
| 9630 9631 9632 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9630 def instance_template @instance_template end | 
#kind ⇒ String
[Output Only] The resource type, which is always compute#instanceGroupManager
for managed instance groups.
Corresponds to the JSON property kind
| 9636 9637 9638 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9636 def kind @kind end | 
#name ⇒ String
The name of the managed instance group. The name must be 1-63 characters long,
and comply with RFC1035.
Corresponds to the JSON property name
| 9642 9643 9644 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9642 def name @name end | 
#named_ports ⇒ Array<Google::Apis::ComputeAlpha::NamedPort>
Named ports configured for the Instance Groups complementary to this Instance
Group Manager.
Corresponds to the JSON property namedPorts
| 9648 9649 9650 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9648 def named_ports @named_ports end | 
#pending_actions ⇒ Google::Apis::ComputeAlpha::InstanceGroupManagerPendingActionsSummary
[Output Only] The list of instance actions and the number of instances in this
managed instance group that are pending for each of those actions.
Corresponds to the JSON property pendingActions
| 9654 9655 9656 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9654 def pending_actions @pending_actions end | 
#region ⇒ String
[Output Only] The URL of the region where the managed instance group resides (
for regional resources).
Corresponds to the JSON property region
| 9660 9661 9662 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9660 def region @region end | 
#self_link ⇒ String
[Output Only] The URL for this managed instance group. The server defines this
URL.
Corresponds to the JSON property selfLink
| 9666 9667 9668 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9666 def self_link @self_link end | 
#service_account ⇒ String
The service account to be used as credentials for all operations performed by
the managed instance group on instances. The service accounts needs all
permissions required to create and delete instances. By default, the service
account projectNumber@cloudservices.gserviceaccount.com is used.
Corresponds to the JSON property serviceAccount
| 9674 9675 9676 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9674 def service_account @service_account end | 
#stateful_policy ⇒ Google::Apis::ComputeAlpha::StatefulPolicy
Stateful configuration for this Instanced Group Manager
Corresponds to the JSON property statefulPolicy
| 9679 9680 9681 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9679 def stateful_policy @stateful_policy end | 
#target_pools ⇒ Array<String>
The URLs for all TargetPool resources to which instances in the instanceGroup
field are added. The target pools automatically apply to all of the instances
in the managed instance group.
Corresponds to the JSON property targetPools
| 9686 9687 9688 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9686 def target_pools @target_pools end | 
#target_size ⇒ Fixnum
The target number of running instances for this managed instance group.
Deleting or abandoning instances reduces this number. Resizing the group
changes this number.
Corresponds to the JSON property targetSize
| 9693 9694 9695 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9693 def target_size @target_size end | 
#update_policy ⇒ Google::Apis::ComputeAlpha::InstanceGroupManagerUpdatePolicy
The update policy for this managed instance group.
Corresponds to the JSON property updatePolicy
| 9698 9699 9700 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9698 def update_policy @update_policy end | 
#versions ⇒ Array<Google::Apis::ComputeAlpha::InstanceGroupManagerVersion>
Specifies the instance templates used by this managed instance group to create
instances.
Each version is defined by an instanceTemplate. Every template can appear at
most once per instance group. This field overrides the top-level
instanceTemplate field. Read more about the relationships between these fields.
Exactly one version must leave the targetSize field unset. That version will
be applied to all remaining instances. For more information, read about canary
updates.
Corresponds to the JSON property versions
| 9710 9711 9712 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9710 def versions @versions end | 
#zone ⇒ String
[Output Only] The URL of the zone where the managed instance group is located (
for zonal resources).
Corresponds to the JSON property zone
| 9716 9717 9718 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9716 def zone @zone end | 
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
| 9723 9724 9725 9726 9727 9728 9729 9730 9731 9732 9733 9734 9735 9736 9737 9738 9739 9740 9741 9742 9743 9744 9745 9746 9747 9748 9749 | # File 'generated/google/apis/compute_alpha/classes.rb', line 9723 def update!(**args) @activities = args[:activities] if args.key?(:activities) @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_actions = args[:current_actions] if args.key?(:current_actions) @description = args[:description] if args.key?(:description) @distribution_policy = args[:distribution_policy] if args.key?(:distribution_policy) @failover_action = args[:failover_action] if args.key?(:failover_action) @fingerprint = args[:fingerprint] if args.key?(:fingerprint) @id = args[:id] if args.key?(:id) @instance_group = args[:instance_group] if args.key?(:instance_group) @instance_template = args[:instance_template] if args.key?(:instance_template) @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @named_ports = args[:named_ports] if args.key?(:named_ports) @pending_actions = args[:pending_actions] if args.key?(:pending_actions) @region = args[:region] if args.key?(:region) @self_link = args[:self_link] if args.key?(:self_link) @service_account = args[:service_account] if args.key?(:service_account) @stateful_policy = args[:stateful_policy] if args.key?(:stateful_policy) @target_pools = args[:target_pools] if args.key?(:target_pools) @target_size = args[:target_size] if args.key?(:target_size) @update_policy = args[:update_policy] if args.key?(:update_policy) @versions = args[:versions] if args.key?(:versions) @zone = args[:zone] if args.key?(:zone) end |