Class CfnCapacityProvider

java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
All Implemented Interfaces:
IInspectable, ITaggable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct, software.constructs.IDependable

@Generated(value="jsii-pacmak/1.104.0 (build e79254c)", date="2024-11-06T23:25:09.214Z") @Stability(Stable) public class CfnCapacityProvider extends CfnResource implements IInspectable, ITaggable
Creates a new capacity provider.

Capacity providers are associated with an Amazon ECS cluster and are used in capacity provider strategies to facilitate cluster auto scaling.

Only capacity providers that use an Auto Scaling group can be created. Amazon ECS tasks on AWS Fargate use the FARGATE and FARGATE_SPOT capacity providers. These providers are available to all accounts in the AWS Regions that AWS Fargate supports.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.ecs.*;
 CfnCapacityProvider cfnCapacityProvider = CfnCapacityProvider.Builder.create(this, "MyCfnCapacityProvider")
         .autoScalingGroupProvider(AutoScalingGroupProviderProperty.builder()
                 .autoScalingGroupArn("autoScalingGroupArn")
                 // the properties below are optional
                 .managedDraining("managedDraining")
                 .managedScaling(ManagedScalingProperty.builder()
                         .instanceWarmupPeriod(123)
                         .maximumScalingStepSize(123)
                         .minimumScalingStepSize(123)
                         .status("status")
                         .targetCapacity(123)
                         .build())
                 .managedTerminationProtection("managedTerminationProtection")
                 .build())
         .name("name")
         .tags(List.of(CfnTag.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .build();
 

See Also:
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnCapacityProvider

      protected CfnCapacityProvider(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnCapacityProvider

      protected CfnCapacityProvider(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnCapacityProvider

      @Stability(Stable) public CfnCapacityProvider(@NotNull software.constructs.Construct scope, @NotNull String id, @Nullable CfnCapacityProviderProps props)
      Parameters:
      scope - Scope in which this resource is defined. This parameter is required.
      id - Construct identifier for this resource (unique in its scope). This parameter is required.
      props - Resource properties.
    • CfnCapacityProvider

      @Stability(Stable) public CfnCapacityProvider(@NotNull software.constructs.Construct scope, @NotNull String id)
      Parameters:
      scope - Scope in which this resource is defined. This parameter is required.
      id - Construct identifier for this resource (unique in its scope). This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector - tree inspector to collect and process attributes. This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getTags

      @Stability(Stable) @NotNull public TagManager getTags()
      Tag Manager which manages the tags for this resource.
      Specified by:
      getTags in interface ITaggable
    • getAutoScalingGroupProvider

      @Stability(Stable) @Nullable public Object getAutoScalingGroupProvider()
      The Auto Scaling group settings for the capacity provider.
    • setAutoScalingGroupProvider

      @Stability(Stable) public void setAutoScalingGroupProvider(@Nullable IResolvable value)
      The Auto Scaling group settings for the capacity provider.
    • setAutoScalingGroupProvider

      @Stability(Stable) public void setAutoScalingGroupProvider(@Nullable CfnCapacityProvider.AutoScalingGroupProviderProperty value)
      The Auto Scaling group settings for the capacity provider.
    • getName

      @Stability(Stable) @Nullable public String getName()
      The name of the capacity provider.
    • setName

      @Stability(Stable) public void setName(@Nullable String value)
      The name of the capacity provider.
    • getTagsRaw

      @Stability(Stable) @Nullable public List<CfnTag> getTagsRaw()
      The metadata that you apply to the capacity provider to help you categorize and organize it.
    • setTagsRaw

      @Stability(Stable) public void setTagsRaw(@Nullable List<CfnTag> value)
      The metadata that you apply to the capacity provider to help you categorize and organize it.