Class: AWSCDK::Autoscaling::CfnAutoScalingGroup::RetentionTriggersProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
autoscaling/cfn_auto_scaling_group.rb

Overview

Defines the specific triggers that cause instances to be retained in a Retained state rather than terminated.

Each trigger corresponds to a different failure scenario during the instance lifecycle. This allows fine-grained control over when to preserve instances for manual intervention.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(terminate_hook_abandon: nil) ⇒ RetentionTriggersProperty

Returns a new instance of RetentionTriggersProperty.

Parameters:

  • terminate_hook_abandon (String, nil) (defaults to: nil)

    Specifies the action when a termination lifecycle hook is abandoned due to failure, timeout, or explicit abandonment (calling CompleteLifecycleAction).



2764
2765
2766
2767
# File 'autoscaling/cfn_auto_scaling_group.rb', line 2764

def initialize(terminate_hook_abandon: nil)
  @terminate_hook_abandon = terminate_hook_abandon
  Jsii::Type.check_type(@terminate_hook_abandon, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "terminateHookAbandon") unless @terminate_hook_abandon.nil?
end

Instance Attribute Details

#terminate_hook_abandonString? (readonly)

Specifies the action when a termination lifecycle hook is abandoned due to failure, timeout, or explicit abandonment (calling CompleteLifecycleAction).

Set to Retain to move instances to a Retained state. Set to Terminate for default termination behavior.

Retained instances don't count toward desired capacity and remain until you call TerminateInstanceInAutoScalingGroup .



2777
2778
2779
# File 'autoscaling/cfn_auto_scaling_group.rb', line 2777

def terminate_hook_abandon
  @terminate_hook_abandon
end

Class Method Details

.jsii_propertiesObject



2779
2780
2781
2782
2783
# File 'autoscaling/cfn_auto_scaling_group.rb', line 2779

def self.jsii_properties
  {
    :terminate_hook_abandon => "terminateHookAbandon",
  }
end

Instance Method Details

#to_jsiiObject



2785
2786
2787
2788
2789
2790
2791
# File 'autoscaling/cfn_auto_scaling_group.rb', line 2785

def to_jsii
  result = {}
  result.merge!({
    "terminateHookAbandon" => @terminate_hook_abandon,
  })
  result.compact
end