Interface IAutoScalingGroup.Jsii$Default

All Superinterfaces:
IAutoScalingGroup, software.constructs.IConstruct, software.constructs.IConstruct.Jsii$Default, software.constructs.IDependable, software.constructs.IDependable.Jsii$Default, IGrantable, IGrantable.Jsii$Default, IResource, IResource.Jsii$Default, software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
IAutoScalingGroup.Jsii$Proxy
Enclosing interface:
IAutoScalingGroup

@Internal public static interface IAutoScalingGroup.Jsii$Default extends IAutoScalingGroup, IResource.Jsii$Default, IGrantable.Jsii$Default
Internal default implementation for IAutoScalingGroup.
  • Method Details

    • getNode

      @Stability(Stable) @NotNull default software.constructs.Node getNode()
      The tree node.
      Specified by:
      getNode in interface software.constructs.IConstruct
      Specified by:
      getNode in interface software.constructs.IConstruct.Jsii$Default
      Specified by:
      getNode in interface IResource.Jsii$Default
    • getEnv

      @Stability(Stable) @NotNull default ResourceEnvironment getEnv()
      The environment this resource belongs to.

      For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.

      Specified by:
      getEnv in interface IResource
      Specified by:
      getEnv in interface IResource.Jsii$Default
    • getStack

      @Stability(Stable) @NotNull default Stack getStack()
      The stack in which this resource is defined.
      Specified by:
      getStack in interface IResource
      Specified by:
      getStack in interface IResource.Jsii$Default
    • getGrantPrincipal

      @Stability(Stable) @NotNull default IPrincipal getGrantPrincipal()
      The principal to grant permissions to.
      Specified by:
      getGrantPrincipal in interface IGrantable
      Specified by:
      getGrantPrincipal in interface IGrantable.Jsii$Default
    • getAutoScalingGroupArn

      @Stability(Stable) @NotNull default String getAutoScalingGroupArn()
      The arn of the AutoScalingGroup.
      Specified by:
      getAutoScalingGroupArn in interface IAutoScalingGroup
    • getAutoScalingGroupName

      @Stability(Stable) @NotNull default String getAutoScalingGroupName()
      The name of the AutoScalingGroup.
      Specified by:
      getAutoScalingGroupName in interface IAutoScalingGroup
    • getOsType

      @Stability(Stable) @NotNull default OperatingSystemType getOsType()
      The operating system family that the instances in this auto-scaling group belong to.

      Is 'UNKNOWN' for imported ASGs.

      Specified by:
      getOsType in interface IAutoScalingGroup
    • applyRemovalPolicy

      @Stability(Stable) default void applyRemovalPolicy(@NotNull RemovalPolicy policy)
      Apply the given removal policy to this resource.

      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).

      Specified by:
      applyRemovalPolicy in interface IResource
      Specified by:
      applyRemovalPolicy in interface IResource.Jsii$Default
      Parameters:
      policy - This parameter is required.
    • addLifecycleHook

      @Stability(Stable) @NotNull default LifecycleHook addLifecycleHook(@NotNull String id, @NotNull BasicLifecycleHookProps props)
      Send a message to either an SQS queue or SNS topic when instances launch or terminate.

      Specified by:
      addLifecycleHook in interface IAutoScalingGroup
      Parameters:
      id - This parameter is required.
      props - This parameter is required.
    • addUserData

      @Stability(Stable) default void addUserData(@NotNull @NotNull String... commands)
      Add command to the startup script of fleet instances.

      The command must be in the scripting language supported by the fleet's OS (i.e. Linux/Windows). Does nothing for imported ASGs.

      Specified by:
      addUserData in interface IAutoScalingGroup
      Parameters:
      commands - This parameter is required.
    • addWarmPool

      @Stability(Stable) @NotNull default WarmPool addWarmPool(@Nullable WarmPoolOptions options)
      Add a pool of pre-initialized EC2 instances that sits alongside an Auto Scaling group.

      Specified by:
      addWarmPool in interface IAutoScalingGroup
      Parameters:
      options -
    • scaleOnCpuUtilization

      @Stability(Stable) @NotNull default TargetTrackingScalingPolicy scaleOnCpuUtilization(@NotNull String id, @NotNull CpuUtilizationScalingProps props)
      Scale out or in to achieve a target CPU utilization.

      Specified by:
      scaleOnCpuUtilization in interface IAutoScalingGroup
      Parameters:
      id - This parameter is required.
      props - This parameter is required.
    • scaleOnIncomingBytes

      @Stability(Stable) @NotNull default TargetTrackingScalingPolicy scaleOnIncomingBytes(@NotNull String id, @NotNull NetworkUtilizationScalingProps props)
      Scale out or in to achieve a target network ingress rate.

      Specified by:
      scaleOnIncomingBytes in interface IAutoScalingGroup
      Parameters:
      id - This parameter is required.
      props - This parameter is required.
    • scaleOnMetric

      @Stability(Stable) @NotNull default StepScalingPolicy scaleOnMetric(@NotNull String id, @NotNull BasicStepScalingPolicyProps props)
      Scale out or in, in response to a metric.

      Specified by:
      scaleOnMetric in interface IAutoScalingGroup
      Parameters:
      id - This parameter is required.
      props - This parameter is required.
    • scaleOnOutgoingBytes

      @Stability(Stable) @NotNull default TargetTrackingScalingPolicy scaleOnOutgoingBytes(@NotNull String id, @NotNull NetworkUtilizationScalingProps props)
      Scale out or in to achieve a target network egress rate.

      Specified by:
      scaleOnOutgoingBytes in interface IAutoScalingGroup
      Parameters:
      id - This parameter is required.
      props - This parameter is required.
    • scaleOnSchedule

      @Stability(Stable) @NotNull default ScheduledAction scaleOnSchedule(@NotNull String id, @NotNull BasicScheduledActionProps props)
      Scale out or in based on time.

      Specified by:
      scaleOnSchedule in interface IAutoScalingGroup
      Parameters:
      id - This parameter is required.
      props - This parameter is required.
    • scaleToTrackMetric

      @Stability(Stable) @NotNull default TargetTrackingScalingPolicy scaleToTrackMetric(@NotNull String id, @NotNull MetricTargetTrackingProps props)
      Scale out or in in order to keep a metric around a target value.

      Specified by:
      scaleToTrackMetric in interface IAutoScalingGroup
      Parameters:
      id - This parameter is required.
      props - This parameter is required.