Class: AWSCDK::Autoscaling::CfnLifecycleHook
- Inherits:
-
CfnResource
- Object
- CfnResource
- AWSCDK::Autoscaling::CfnLifecycleHook
- Includes:
- IInspectable, Interfaces::AWSAutoscaling::ILifecycleHookRef
- Defined in:
- autoscaling/cfn_lifecycle_hook.rb
Overview
The AWS::AutoScaling::LifecycleHook resource specifies lifecycle hooks for an Auto Scaling group.
These hooks let you create solutions that are aware of events in the Auto Scaling instance lifecycle, and then perform a custom action on instances when the corresponding lifecycle event occurs. A lifecycle hook provides a specified amount of time (one hour by default) to wait for the action to complete before the instance transitions to the next state.
Use lifecycle hooks to prepare new instances for use or to delay them from being registered behind a load balancer before their configuration has been applied completely. You can also use lifecycle hooks to prepare running instances to be terminated by, for example, downloading logs or other data.
For more information, see Amazon EC2 Auto Scaling lifecycle hooks in the Amazon EC2 Auto Scaling User Guide .
Class Method Summary collapse
-
.CFN_RESOURCE_TYPE_NAME ⇒ String
The CloudFormation resource type name for this resource class.
-
.is_cfn_lifecycle_hook(x) ⇒ Boolean
Checks whether the given object is a CfnLifecycleHook.
- .jsii_overridable_methods ⇒ Object
Instance Method Summary collapse
-
#add_deletion_override(path) ⇒ void
Syntactic sugar for
addOverride(path, undefined). -
#add_dependency(target) ⇒ void
Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
-
#add_depends_on(target) ⇒ void
deprecated
Deprecated.
use addDependency
-
#add_metadata(key, value) ⇒ void
Add a value to the CloudFormation Resource Metadata.
-
#add_override(path, value) ⇒ void
Adds an override to the synthesized CloudFormation resource.
-
#add_property_deletion_override(property_path) ⇒ void
Adds an override that deletes the value of a property from the resource definition.
-
#add_property_override(property_path, value) ⇒ void
Adds an override to a resource property.
-
#apply_cross_stack_reference_strength(strength) ⇒ void
Sets the cross-stack reference strength for this resource.
-
#apply_removal_policy(policy = nil, options = nil) ⇒ void
Sets the deletion policy of the resource based on the removal policy specified.
-
#auto_scaling_group_name ⇒ String
The name of the Auto Scaling group.
- #auto_scaling_group_name=(value) ⇒ Object
-
#cfn_options ⇒ AWSCDK::ICfnResourceOptions
Options for this resource, such as condition, update policy etc.
- #cfn_properties ⇒ Hash{String => Object}
- #cfn_property_name(cdk_property_name) ⇒ String?
- #cfn_property_names ⇒ Hash{String => String}
-
#cfn_resource_type ⇒ String
AWS resource type.
- #creation_stack ⇒ Array<String>
-
#default_result ⇒ String?
The action the Auto Scaling group takes when the lifecycle hook timeout elapses or if an unexpected failure occurs.
- #default_result=(value) ⇒ Object
- #env ⇒ AWSCDK::Interfaces::ResourceEnvironment
-
#get_att(attribute_name, type_hint = nil) ⇒ AWSCDK::Reference
Returns a token for an runtime attribute of this resource.
-
#get_metadata(key) ⇒ Object
Retrieve a value value from the CloudFormation Resource Metadata.
-
#heartbeat_timeout ⇒ Numeric?
The maximum time, in seconds, that can elapse before the lifecycle hook times out.
- #heartbeat_timeout=(value) ⇒ Object
-
#initialize(scope, id, props) ⇒ CfnLifecycleHook
constructor
Create a new
AWS::AutoScaling::LifecycleHook. -
#inspect(inspector) ⇒ void
Examines the CloudFormation resource and discloses attributes.
-
#lifecycle_hook_name ⇒ String?
The name of the lifecycle hook.
- #lifecycle_hook_name=(value) ⇒ Object
-
#lifecycle_hook_ref ⇒ AWSCDK::Interfaces::AWSAutoscaling::LifecycleHookReference
A reference to a LifecycleHook resource.
-
#lifecycle_transition ⇒ String
The lifecycle transition.
- #lifecycle_transition=(value) ⇒ Object
-
#logical_id ⇒ String
The logical ID for this CloudFormation stack element.
-
#node ⇒ Constructs::Node
The tree node.
-
#notification_metadata ⇒ String?
Additional information that you want to include any time Amazon EC2 Auto Scaling sends a message to the notification target.
- #notification_metadata=(value) ⇒ Object
-
#notification_target_arn ⇒ String?
The Amazon Resource Name (ARN) of the notification target that Amazon EC2 Auto Scaling sends notifications to when an instance is in a wait state for the lifecycle hook.
- #notification_target_arn=(value) ⇒ Object
-
#obtain_dependencies ⇒ Array<AWSCDK::CfnResource, AWSCDK::Stack>
Retrieves an array of resources this resource depends on.
-
#obtain_resource_dependencies ⇒ Array<AWSCDK::CfnResource>
Get a shallow copy of dependencies between this resource and other resources in the same stack.
-
#override_logical_id(new_logical_id) ⇒ void
Overrides the auto-generated logical ID with a specific ID.
-
#ref ⇒ String
Return a string that will be resolved to a CloudFormation
{ Ref }for this element. -
#remove_dependency(target) ⇒ void
Indicates that this resource no longer depends on another resource.
- #render_properties(props) ⇒ Hash{String => Object}
-
#replace_dependency(target, new_target) ⇒ void
Replaces one dependency with another.
-
#role_arn ⇒ String?
The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target.
- #role_arn=(value) ⇒ Object
-
#should_synthesize ⇒ Boolean
Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
-
#stack ⇒ AWSCDK::Stack
The stack in which this element is defined.
-
#to_string ⇒ String
Returns a string representation of this construct.
-
#updated_properites ⇒ Hash{String => Object}
deprecated
Deprecated.
use
updatedPropertiesReturn properties modified after initiation Resources that expose mutable properties should override this function to collect and return the properties object for this resource. -
#updated_properties ⇒ Hash{String => Object}
Return properties modified after initiation.
- #validate_properties(_properties) ⇒ void
-
#with(*mixins) ⇒ Constructs::IConstruct
Applies one or more mixins to this construct.
Constructor Details
#initialize(scope, id, props) ⇒ CfnLifecycleHook
Create a new AWS::AutoScaling::LifecycleHook.
23 24 25 26 27 28 29 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 23 def initialize(scope, id, props) props = props.is_a?(Hash) ? ::AWSCDK::Autoscaling::CfnLifecycleHookProps.new(**props.transform_keys(&:to_sym)) : props Jsii::Type.check_type(scope, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLkNvbnN0cnVjdCJ9")), "scope") Jsii::Type.check_type(id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "id") Jsii::Type.check_type(props, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXV0b3NjYWxpbmcuQ2ZuTGlmZWN5Y2xlSG9va1Byb3BzIn0=")), "props") Jsii::Object.instance_method(:initialize).bind(self).call(scope, id, props) end |
Class Method Details
.CFN_RESOURCE_TYPE_NAME ⇒ String
The CloudFormation resource type name for this resource class.
182 183 184 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 182 def self.CFN_RESOURCE_TYPE_NAME() Jsii::Kernel.instance.get_static("aws-cdk-lib.aws_autoscaling.CfnLifecycleHook", "CFN_RESOURCE_TYPE_NAME") end |
.is_cfn_lifecycle_hook(x) ⇒ Boolean
Checks whether the given object is a CfnLifecycleHook.
84 85 86 87 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 84 def self.is_cfn_lifecycle_hook(x) Jsii::Type.check_type(x, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "x") Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_autoscaling.CfnLifecycleHook", "isCfnLifecycleHook", [x]) end |
.jsii_overridable_methods ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 31 def self.jsii_overridable_methods { :node => { kind: :property, name: "node", is_optional: false }, :creation_stack => { kind: :property, name: "creationStack", is_optional: false }, :logical_id => { kind: :property, name: "logicalId", is_optional: false }, :stack => { kind: :property, name: "stack", is_optional: false }, :ref => { kind: :property, name: "ref", is_optional: false }, :cfn_options => { kind: :property, name: "cfnOptions", is_optional: false }, :cfn_properties => { kind: :property, name: "cfnProperties", is_optional: false }, :cfn_property_names => { kind: :property, name: "cfnPropertyNames", is_optional: false }, :cfn_resource_type => { kind: :property, name: "cfnResourceType", is_optional: false }, :env => { kind: :property, name: "env", is_optional: false }, :updated_properites => { kind: :property, name: "updatedProperites", is_optional: false }, :updated_properties => { kind: :property, name: "updatedProperties", is_optional: false }, :lifecycle_hook_ref => { kind: :property, name: "lifecycleHookRef", is_optional: false }, :auto_scaling_group_name => { kind: :property, name: "autoScalingGroupName", is_optional: false }, :lifecycle_transition => { kind: :property, name: "lifecycleTransition", is_optional: false }, :default_result => { kind: :property, name: "defaultResult", is_optional: true }, :heartbeat_timeout => { kind: :property, name: "heartbeatTimeout", is_optional: true }, :lifecycle_hook_name => { kind: :property, name: "lifecycleHookName", is_optional: true }, :notification_metadata => { kind: :property, name: "notificationMetadata", is_optional: true }, :notification_target_arn => { kind: :property, name: "notificationTargetArn", is_optional: true }, :role_arn => { kind: :property, name: "roleArn", is_optional: true }, :to_string => { kind: :method, name: "toString", is_optional: false }, :with => { kind: :method, name: "with", is_optional: false }, :override_logical_id => { kind: :method, name: "overrideLogicalId", is_optional: false }, :add_deletion_override => { kind: :method, name: "addDeletionOverride", is_optional: false }, :add_dependency => { kind: :method, name: "addDependency", is_optional: false }, :add_depends_on => { kind: :method, name: "addDependsOn", is_optional: false }, :add_metadata => { kind: :method, name: "addMetadata", is_optional: false }, :add_override => { kind: :method, name: "addOverride", is_optional: false }, :add_property_deletion_override => { kind: :method, name: "addPropertyDeletionOverride", is_optional: false }, :add_property_override => { kind: :method, name: "addPropertyOverride", is_optional: false }, :apply_cross_stack_reference_strength => { kind: :method, name: "applyCrossStackReferenceStrength", is_optional: false }, :apply_removal_policy => { kind: :method, name: "applyRemovalPolicy", is_optional: false }, :cfn_property_name => { kind: :method, name: "cfnPropertyName", is_optional: false }, :get_att => { kind: :method, name: "getAtt", is_optional: false }, :get_metadata => { kind: :method, name: "getMetadata", is_optional: false }, :obtain_dependencies => { kind: :method, name: "obtainDependencies", is_optional: false }, :obtain_resource_dependencies => { kind: :method, name: "obtainResourceDependencies", is_optional: false }, :remove_dependency => { kind: :method, name: "removeDependency", is_optional: false }, :render_properties => { kind: :method, name: "renderProperties", is_optional: false }, :replace_dependency => { kind: :method, name: "replaceDependency", is_optional: false }, :should_synthesize => { kind: :method, name: "shouldSynthesize", is_optional: false }, :validate_properties => { kind: :method, name: "validateProperties", is_optional: false }, :inspect => { kind: :method, name: "inspect", is_optional: false }, } end |
Instance Method Details
#add_deletion_override(path) ⇒ void
This method returns an undefined value.
Syntactic sugar for addOverride(path, undefined).
327 328 329 330 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 327 def add_deletion_override(path) Jsii::Type.check_type(path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "path") jsii_call_method("addDeletionOverride", [path]) end |
#add_dependency(target) ⇒ void
This method returns an undefined value.
Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
This can be used for resources across stacks (or nested stack) boundaries and the dependency will automatically be transferred to the relevant scope.
339 340 341 342 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 339 def add_dependency(target) Jsii::Type.check_type(target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5SZXNvdXJjZSJ9")), "target") jsii_call_method("addDependency", [target]) end |
#add_depends_on(target) ⇒ void
use addDependency
This method returns an undefined value.
Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
349 350 351 352 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 349 def add_depends_on(target) Jsii::Type.check_type(target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5SZXNvdXJjZSJ9")), "target") jsii_call_method("addDependsOn", [target]) end |
#add_metadata(key, value) ⇒ void
This method returns an undefined value.
Add a value to the CloudFormation Resource Metadata.
360 361 362 363 364 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 360 def (key, value) Jsii::Type.check_type(key, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "key") Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "value") jsii_call_method("addMetadata", [key, value]) end |
#add_override(path, value) ⇒ void
This method returns an undefined value.
Adds an override to the synthesized CloudFormation resource.
To add a
property override, either use add_property_override or prefix path with
"Properties." (i.e. Properties.TopicName).
If the override is nested, separate each nested level using a dot (.) in the path parameter. If there is an array as part of the nesting, specify the index in the path.
To include a literal . in the property name, prefix with a \. In most
programming languages you will need to write this as "\\." because the
\ itself will need to be escaped.
For example,
# Example automatically generated from non-compiling source. May contain errors.
cfn_resource.add_override("Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes", ["myattribute"])
cfn_resource.add_override("Properties.GlobalSecondaryIndexes.1.ProjectionType", "INCLUDE")
would add the overrides
"Properties": {
"GlobalSecondaryIndexes": [
{
"Projection": {
"NonKeyAttributes": [ "myattribute" ]
...
}
...
},
{
"ProjectionType": "INCLUDE"
...
},
]
...
}
The value argument to add_override will not be processed or translated
in any way. Pass raw JSON values in here with the correct capitalization
for CloudFormation. If you pass CDK classes or structs, they will be
rendered with lowercased key names, and CloudFormation will reject the
template.
417 418 419 420 421 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 417 def add_override(path, value) Jsii::Type.check_type(path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "path") Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "value") jsii_call_method("addOverride", [path, value]) end |
#add_property_deletion_override(property_path) ⇒ void
This method returns an undefined value.
Adds an override that deletes the value of a property from the resource definition.
427 428 429 430 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 427 def add_property_deletion_override(property_path) Jsii::Type.check_type(property_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "propertyPath") jsii_call_method("addPropertyDeletionOverride", [property_path]) end |
#add_property_override(property_path, value) ⇒ void
This method returns an undefined value.
Adds an override to a resource property.
Syntactic sugar for addOverride("Properties.<...>", value).
439 440 441 442 443 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 439 def add_property_override(property_path, value) Jsii::Type.check_type(property_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "propertyPath") Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "value") jsii_call_method("addPropertyOverride", [property_path, value]) end |
#apply_cross_stack_reference_strength(strength) ⇒ void
This method returns an undefined value.
Sets the cross-stack reference strength for this resource.
When set, any cross-stack reference to this resource will use the specified strength instead of the global default from the consuming stack's context.
452 453 454 455 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 452 def apply_cross_stack_reference_strength(strength) Jsii::Type.check_type(strength, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5SZWZlcmVuY2VTdHJlbmd0aCJ9")), "strength") jsii_call_method("applyCrossStackReferenceStrength", [strength]) end |
#apply_removal_policy(policy = nil, options = nil) ⇒ void
This method returns an undefined value.
Sets the deletion policy of the resource based on the removal policy specified.
The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you've removed it from the CDK application or because you've made a change that requires the resource to be replaced.
The resource can be deleted (RemovalPolicy.DESTROY), or left in your AWS
account for data recovery and cleanup later (RemovalPolicy.RETAIN). In some
cases, a snapshot can be taken of the resource prior to deletion
(RemovalPolicy.SNAPSHOT). A list of resources that support this policy
can be found in the following link:
474 475 476 477 478 479 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 474 def apply_removal_policy(policy = nil, = nil) Jsii::Type.check_type(policy, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5SZW1vdmFsUG9saWN5In0=")), "policy") unless policy.nil? = .is_a?(Hash) ? ::AWSCDK::RemovalPolicyOptions.new(**.transform_keys(&:to_sym)) : Jsii::Type.check_type(, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5SZW1vdmFsUG9saWN5T3B0aW9ucyJ9")), "options") unless .nil? jsii_call_method("applyRemovalPolicy", [policy, ]) end |
#auto_scaling_group_name ⇒ String
The name of the Auto Scaling group.
196 197 198 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 196 def auto_scaling_group_name() jsii_get_property("autoScalingGroupName") end |
#auto_scaling_group_name=(value) ⇒ Object
200 201 202 203 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 200 def auto_scaling_group_name=(value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "autoScalingGroupName") jsii_set_property("autoScalingGroupName", value) end |
#cfn_options ⇒ AWSCDK::ICfnResourceOptions
Options for this resource, such as condition, update policy etc.
135 136 137 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 135 def () jsii_get_property("cfnOptions") end |
#cfn_properties ⇒ Hash{String => Object}
140 141 142 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 140 def cfn_properties() jsii_get_property("cfnProperties") end |
#cfn_property_name(cdk_property_name) ⇒ String?
483 484 485 486 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 483 def cfn_property_name(cdk_property_name) Jsii::Type.check_type(cdk_property_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "cdkPropertyName") jsii_call_method("cfnPropertyName", [cdk_property_name]) end |
#cfn_property_names ⇒ Hash{String => String}
145 146 147 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 145 def cfn_property_names() jsii_get_property("cfnPropertyNames") end |
#cfn_resource_type ⇒ String
AWS resource type.
152 153 154 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 152 def cfn_resource_type() jsii_get_property("cfnResourceType") end |
#creation_stack ⇒ Array<String>
97 98 99 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 97 def creation_stack() jsii_get_property("creationStack") end |
#default_result ⇒ String?
The action the Auto Scaling group takes when the lifecycle hook timeout elapses or if an unexpected failure occurs.
222 223 224 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 222 def default_result() jsii_get_property("defaultResult") end |
#default_result=(value) ⇒ Object
226 227 228 229 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 226 def default_result=(value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "defaultResult") unless value.nil? jsii_set_property("defaultResult", value) end |
#env ⇒ AWSCDK::Interfaces::ResourceEnvironment
157 158 159 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 157 def env() jsii_get_property("env") end |
#get_att(attribute_name, type_hint = nil) ⇒ AWSCDK::Reference
Returns a token for an runtime attribute of this resource.
Ideally, use generated attribute accessors (e.g. resource.arn), but this can be used for future compatibility
in case there is no generated attribute.
496 497 498 499 500 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 496 def get_att(attribute_name, type_hint = nil) Jsii::Type.check_type(attribute_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "attributeName") Jsii::Type.check_type(type_hint, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5SZXNvbHV0aW9uVHlwZUhpbnQifQ==")), "typeHint") unless type_hint.nil? jsii_call_method("getAtt", [attribute_name, type_hint]) end |
#get_metadata(key) ⇒ Object
Retrieve a value value from the CloudFormation Resource Metadata.
507 508 509 510 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 507 def (key) Jsii::Type.check_type(key, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "key") jsii_call_method("getMetadata", [key]) end |
#heartbeat_timeout ⇒ Numeric?
The maximum time, in seconds, that can elapse before the lifecycle hook times out.
234 235 236 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 234 def heartbeat_timeout() jsii_get_property("heartbeatTimeout") end |
#heartbeat_timeout=(value) ⇒ Object
238 239 240 241 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 238 def heartbeat_timeout=(value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "heartbeatTimeout") unless value.nil? jsii_set_property("heartbeatTimeout", value) end |
#inspect(inspector) ⇒ void
This method returns an undefined value.
Examines the CloudFormation resource and discloses attributes.
577 578 579 580 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 577 def inspect(inspector) Jsii::Type.check_type(inspector, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5UcmVlSW5zcGVjdG9yIn0=")), "inspector") jsii_call_method("inspect", [inspector]) end |
#lifecycle_hook_name ⇒ String?
The name of the lifecycle hook.
246 247 248 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 246 def lifecycle_hook_name() jsii_get_property("lifecycleHookName") end |
#lifecycle_hook_name=(value) ⇒ Object
250 251 252 253 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 250 def lifecycle_hook_name=(value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "lifecycleHookName") unless value.nil? jsii_set_property("lifecycleHookName", value) end |
#lifecycle_hook_ref ⇒ AWSCDK::Interfaces::AWSAutoscaling::LifecycleHookReference
A reference to a LifecycleHook resource.
189 190 191 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 189 def lifecycle_hook_ref() jsii_get_property("lifecycleHookRef") end |
#lifecycle_transition ⇒ String
The lifecycle transition.
For Auto Scaling groups, there are two major lifecycle transitions.
210 211 212 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 210 def lifecycle_transition() jsii_get_property("lifecycleTransition") end |
#lifecycle_transition=(value) ⇒ Object
214 215 216 217 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 214 def lifecycle_transition=(value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "lifecycleTransition") jsii_set_property("lifecycleTransition", value) end |
#logical_id ⇒ String
The logical ID for this CloudFormation stack element.
The logical ID of the element is calculated from the path of the resource node in the construct tree.
To override this value, use override_logical_id(new_logical_id).
109 110 111 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 109 def logical_id() jsii_get_property("logicalId") end |
#node ⇒ Constructs::Node
The tree node.
92 93 94 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 92 def node() jsii_get_property("node") end |
#notification_metadata ⇒ String?
Additional information that you want to include any time Amazon EC2 Auto Scaling sends a message to the notification target.
258 259 260 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 258 def () jsii_get_property("notificationMetadata") end |
#notification_metadata=(value) ⇒ Object
262 263 264 265 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 262 def (value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "notificationMetadata") unless value.nil? jsii_set_property("notificationMetadata", value) end |
#notification_target_arn ⇒ String?
The Amazon Resource Name (ARN) of the notification target that Amazon EC2 Auto Scaling sends notifications to when an instance is in a wait state for the lifecycle hook.
270 271 272 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 270 def notification_target_arn() jsii_get_property("notificationTargetArn") end |
#notification_target_arn=(value) ⇒ Object
274 275 276 277 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 274 def notification_target_arn=(value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "notificationTargetArn") unless value.nil? jsii_set_property("notificationTargetArn", value) end |
#obtain_dependencies ⇒ Array<AWSCDK::CfnResource, AWSCDK::Stack>
Retrieves an array of resources this resource depends on.
This assembles dependencies on resources across stacks (including nested stacks) automatically.
518 519 520 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 518 def obtain_dependencies() jsii_call_method("obtainDependencies", []) end |
#obtain_resource_dependencies ⇒ Array<AWSCDK::CfnResource>
Get a shallow copy of dependencies between this resource and other resources in the same stack.
525 526 527 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 525 def obtain_resource_dependencies() jsii_call_method("obtainResourceDependencies", []) end |
#override_logical_id(new_logical_id) ⇒ void
This method returns an undefined value.
Overrides the auto-generated logical ID with a specific ID.
318 319 320 321 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 318 def override_logical_id(new_logical_id) Jsii::Type.check_type(new_logical_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "newLogicalId") jsii_call_method("overrideLogicalId", [new_logical_id]) end |
#ref ⇒ String
Return a string that will be resolved to a CloudFormation { Ref } for this element.
If, by any chance, the intrinsic reference of a resource is not a string, you could
coerce it to an IResolvable through Lazy.any({ produce: resource.ref }).
128 129 130 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 128 def ref() jsii_get_property("ref") end |
#remove_dependency(target) ⇒ void
This method returns an undefined value.
Indicates that this resource no longer depends on another resource.
This can be used for resources across stacks (including nested stacks) and the dependency will automatically be removed from the relevant scope.
536 537 538 539 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 536 def remove_dependency(target) Jsii::Type.check_type(target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5SZXNvdXJjZSJ9")), "target") jsii_call_method("removeDependency", [target]) end |
#render_properties(props) ⇒ Hash{String => Object}
543 544 545 546 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 543 def render_properties(props) Jsii::Type.check_type(props, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6ImFueSJ9LCJraW5kIjoibWFwIn19")), "props") jsii_call_method("renderProperties", [props]) end |
#replace_dependency(target, new_target) ⇒ void
This method returns an undefined value.
Replaces one dependency with another.
553 554 555 556 557 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 553 def replace_dependency(target, new_target) Jsii::Type.check_type(target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5SZXNvdXJjZSJ9")), "target") Jsii::Type.check_type(new_target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5SZXNvdXJjZSJ9")), "newTarget") jsii_call_method("replaceDependency", [target, new_target]) end |
#role_arn ⇒ String?
The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target.
282 283 284 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 282 def role_arn() jsii_get_property("roleArn") end |
#role_arn=(value) ⇒ Object
286 287 288 289 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 286 def role_arn=(value) Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "roleArn") unless value.nil? jsii_set_property("roleArn", value) end |
#should_synthesize ⇒ Boolean
Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.
562 563 564 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 562 def should_synthesize() jsii_call_method("shouldSynthesize", []) end |
#stack ⇒ AWSCDK::Stack
The stack in which this element is defined.
CfnElements must be defined within a stack scope (directly or indirectly).
118 119 120 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 118 def stack() jsii_get_property("stack") end |
#to_string ⇒ String
Returns a string representation of this construct.
294 295 296 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 294 def to_string() jsii_call_method("toString", []) end |
#updated_properites ⇒ Hash{String => Object}
use updatedProperties Return properties modified after initiation Resources that expose mutable properties should override this function to collect and return the properties object for this resource.
Deprecated.
165 166 167 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 165 def updated_properites() jsii_get_property("updatedProperites") end |
#updated_properties ⇒ Hash{String => Object}
Return properties modified after initiation.
Resources that expose mutable properties should override this function to collect and return the properties object for this resource.
175 176 177 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 175 def updated_properties() jsii_get_property("updatedProperties") end |
#validate_properties(_properties) ⇒ void
This method returns an undefined value.
568 569 570 571 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 568 def validate_properties(_properties) Jsii::Type.check_type(_properties, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "_properties") jsii_call_method("validateProperties", [_properties]) end |
#with(*mixins) ⇒ Constructs::IConstruct
Applies one or more mixins to this construct.
Mixins are applied in order. The list of constructs is captured at the
start of the call, so constructs added by a mixin will not be visited.
Use multiple with() calls if subsequent mixins should apply to added
constructs.
307 308 309 310 311 312 |
# File 'autoscaling/cfn_lifecycle_hook.rb', line 307 def with(*mixins) mixins.each_with_index do |item, index| Jsii::Type.check_type(item, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLklNaXhpbiJ9")), "mixins[#{index}]") end jsii_call_method("with", [*mixins]) end |