Signals Class
Configure whether the AutoScalingGroup waits for signals.
If you do configure waiting for signals, you should make sure the instances invoke cfn-signal somewhere in their UserData to signal that they have started up (either successfully or unsuccessfully).
Signals are used both during intial creation and subsequent updates.
Example
declare const vpc: ec2.Vpc;
declare const instanceType: ec2.InstanceType;
declare const machineImage: ec2.IMachineImage;
new autoscaling.AutoScalingGroup(this, 'ASG', {
vpc,
instanceType,
machineImage,
// ...
init: ec2.CloudFormationInit.fromElements(
ec2.InitFile.fromString('/etc/my_instance', 'This got written during instance startup'),
),
signals: autoscaling.Signals.waitForAll({
timeout: Duration.minutes(10),
}),
});
Initializer
new Signals()
Signals()
new Signals()
new Signals()
NewSignals()
Methods
renderCreationPolicy(renderOptions: RenderSignalsOptions): CfnCreationPolicydef render_creation_policy(self, render_options: RenderSignalsOptions) -> CfnCreationPolicypublic CfnCreationPolicy renderCreationPolicy(RenderSignalsOptions renderOptions)public CfnCreationPolicy RenderCreationPolicy(RenderSignalsOptions renderOptions)func RenderCreationPolicy(RenderOptions RenderSignalsOptions) CfnCreationPolicy#waitForAll(options?: SignalsOptions): Signals // chainable@staticmethod def wait_for_all(options: typing.Optional[SignalsOptions] = None) -> Signalspublic static Signals waitForAll(SignalsOptions options)public static Signals WaitForAll(SignalsOptions? options = null)func WaitForAll(Options SignalsOptions) Signalsstatic#If no desiredCapacity has been configured, wait for minCapacity signals intead.
This number is used during initial creation and during replacing updates. During rolling updates, all updated instances must send a signal.
waitForCount(count: number, options?: SignalsOptions): Signals // chainable@staticmethod def wait_for_count(count: int | float, options: typing.Optional[SignalsOptions] = None) -> Signalspublic static Signals waitForCount(Number count, SignalsOptions options)public static Signals WaitForCount(double count, SignalsOptions? options = null)func WaitForCount(Count *float64, Options SignalsOptions) Signalsstatic#You should send one signal per instance, so this represents the number of instances to wait for.
This number is used during initial creation and during replacing updates. During rolling updates, all updated instances must send a signal.
waitForMinCapacity(options?: SignalsOptions): Signals // chainable@staticmethod def wait_for_min_capacity(options: typing.Optional[SignalsOptions] = None) -> Signalspublic static Signals waitForMinCapacity(SignalsOptions options)public static Signals WaitForMinCapacity(SignalsOptions? options = null)func WaitForMinCapacity(Options SignalsOptions) Signalsstatic#This number is used during initial creation and during replacing updates. During rolling updates, all updated instances must send a signal.