We recommend new projects start with resources from the AWS provider.
published on Monday, Mar 9, 2026 by Pulumi
We recommend new projects start with resources from the AWS provider.
published on Monday, Mar 9, 2026 by Pulumi
Creates a capacity provider that manages compute resources for Lambda functions
Create CapacityProvider Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new CapacityProvider(name: string, args: CapacityProviderArgs, opts?: CustomResourceOptions);@overload
def CapacityProvider(resource_name: str,
args: CapacityProviderArgs,
opts: Optional[ResourceOptions] = None)
@overload
def CapacityProvider(resource_name: str,
opts: Optional[ResourceOptions] = None,
permissions_config: Optional[CapacityProviderPermissionsConfigArgs] = None,
vpc_config: Optional[CapacityProviderVpcConfigArgs] = None,
capacity_provider_name: Optional[str] = None,
capacity_provider_scaling_config: Optional[CapacityProviderScalingConfigArgs] = None,
instance_requirements: Optional[CapacityProviderInstanceRequirementsArgs] = None,
kms_key_arn: Optional[str] = None,
tags: Optional[Sequence[_root_inputs.TagArgs]] = None)func NewCapacityProvider(ctx *Context, name string, args CapacityProviderArgs, opts ...ResourceOption) (*CapacityProvider, error)public CapacityProvider(string name, CapacityProviderArgs args, CustomResourceOptions? opts = null)
public CapacityProvider(String name, CapacityProviderArgs args)
public CapacityProvider(String name, CapacityProviderArgs args, CustomResourceOptions options)
type: aws-native:lambda:CapacityProvider
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args CapacityProviderArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args CapacityProviderArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args CapacityProviderArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args CapacityProviderArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args CapacityProviderArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
CapacityProvider Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The CapacityProvider resource accepts the following input properties:
- Permissions
Config Pulumi.Aws Native. Lambda. Inputs. Capacity Provider Permissions Config - The permissions configuration for the capacity provider.
- Vpc
Config Pulumi.Aws Native. Lambda. Inputs. Capacity Provider Vpc Config - The VPC configuration for the capacity provider.
- Capacity
Provider stringName - Capacity
Provider Pulumi.Scaling Config Aws Native. Lambda. Inputs. Capacity Provider Scaling Config - The scaling configuration for the capacity provider.
- Instance
Requirements Pulumi.Aws Native. Lambda. Inputs. Capacity Provider Instance Requirements - The instance requirements for compute resources managed by the capacity provider.
- Kms
Key stringArn - The ARN of the KMS key used to encrypt the capacity provider's resources.
-
List<Pulumi.
Aws Native. Inputs. Tag> - A key-value pair that provides metadata for the capacity provider.
- Permissions
Config CapacityProvider Permissions Config Args - The permissions configuration for the capacity provider.
- Vpc
Config CapacityProvider Vpc Config Args - The VPC configuration for the capacity provider.
- Capacity
Provider stringName - Capacity
Provider CapacityScaling Config Provider Scaling Config Args - The scaling configuration for the capacity provider.
- Instance
Requirements CapacityProvider Instance Requirements Args - The instance requirements for compute resources managed by the capacity provider.
- Kms
Key stringArn - The ARN of the KMS key used to encrypt the capacity provider's resources.
-
Tag
Args - A key-value pair that provides metadata for the capacity provider.
- permissions
Config CapacityProvider Permissions Config - The permissions configuration for the capacity provider.
- vpc
Config CapacityProvider Vpc Config - The VPC configuration for the capacity provider.
- capacity
Provider StringName - capacity
Provider CapacityScaling Config Provider Scaling Config - The scaling configuration for the capacity provider.
- instance
Requirements CapacityProvider Instance Requirements - The instance requirements for compute resources managed by the capacity provider.
- kms
Key StringArn - The ARN of the KMS key used to encrypt the capacity provider's resources.
- List<Tag>
- A key-value pair that provides metadata for the capacity provider.
- permissions
Config CapacityProvider Permissions Config - The permissions configuration for the capacity provider.
- vpc
Config CapacityProvider Vpc Config - The VPC configuration for the capacity provider.
- capacity
Provider stringName - capacity
Provider CapacityScaling Config Provider Scaling Config - The scaling configuration for the capacity provider.
- instance
Requirements CapacityProvider Instance Requirements - The instance requirements for compute resources managed by the capacity provider.
- kms
Key stringArn - The ARN of the KMS key used to encrypt the capacity provider's resources.
- Tag[]
- A key-value pair that provides metadata for the capacity provider.
- permissions_
config CapacityProvider Permissions Config Args - The permissions configuration for the capacity provider.
- vpc_
config CapacityProvider Vpc Config Args - The VPC configuration for the capacity provider.
- capacity_
provider_ strname - capacity_
provider_ Capacityscaling_ config Provider Scaling Config Args - The scaling configuration for the capacity provider.
- instance_
requirements CapacityProvider Instance Requirements Args - The instance requirements for compute resources managed by the capacity provider.
- kms_
key_ strarn - The ARN of the KMS key used to encrypt the capacity provider's resources.
-
Sequence[Tag
Args] - A key-value pair that provides metadata for the capacity provider.
- permissions
Config Property Map - The permissions configuration for the capacity provider.
- vpc
Config Property Map - The VPC configuration for the capacity provider.
- capacity
Provider StringName - capacity
Provider Property MapScaling Config - The scaling configuration for the capacity provider.
- instance
Requirements Property Map - The instance requirements for compute resources managed by the capacity provider.
- kms
Key StringArn - The ARN of the KMS key used to encrypt the capacity provider's resources.
- List<Property Map>
- A key-value pair that provides metadata for the capacity provider.
Outputs
All input properties are implicitly available as output properties. Additionally, the CapacityProvider resource produces the following output properties:
- Arn string
- Id string
- The provider-assigned unique ID for this managed resource.
- State
Pulumi.
Aws Native. Lambda. Capacity Provider State - The current state of the capacity provider.
- Arn string
- Id string
- The provider-assigned unique ID for this managed resource.
- State
Capacity
Provider State Enum - The current state of the capacity provider.
- arn String
- id String
- The provider-assigned unique ID for this managed resource.
- state
Capacity
Provider State - The current state of the capacity provider.
- arn string
- id string
- The provider-assigned unique ID for this managed resource.
- state
Capacity
Provider State - The current state of the capacity provider.
- arn str
- id str
- The provider-assigned unique ID for this managed resource.
- state
Capacity
Provider State - The current state of the capacity provider.
- arn String
- id String
- The provider-assigned unique ID for this managed resource.
- state "Pending" | "Active" | "Failed" | "Deleting"
- The current state of the capacity provider.
Supporting Types
CapacityProviderArchitecture, CapacityProviderArchitectureArgs
- X8664
x86_64- Arm64
arm64
- Capacity
Provider Architecture X8664 x86_64- Capacity
Provider Architecture Arm64 arm64
- X8664
x86_64- Arm64
arm64
- X8664
x86_64- Arm64
arm64
- X8664
x86_64- ARM64
arm64
- "x86_64"
x86_64- "arm64"
arm64
CapacityProviderInstanceRequirements, CapacityProviderInstanceRequirementsArgs
Specifications that define the characteristics and constraints for compute instances used by the capacity provider.- Allowed
Instance List<string>Types - A list of EC2 instance types that the capacity provider is allowed to use. If not specified, all compatible instance types are allowed.
- Architectures
List<Pulumi.
Aws Native. Lambda. Capacity Provider Architecture> - A list of supported CPU architectures for compute instances. Valid values include
x86_64andarm64. - Excluded
Instance List<string>Types - A list of EC2 instance types that the capacity provider should not use, even if they meet other requirements.
- Allowed
Instance []stringTypes - A list of EC2 instance types that the capacity provider is allowed to use. If not specified, all compatible instance types are allowed.
- Architectures
[]Capacity
Provider Architecture - A list of supported CPU architectures for compute instances. Valid values include
x86_64andarm64. - Excluded
Instance []stringTypes - A list of EC2 instance types that the capacity provider should not use, even if they meet other requirements.
- allowed
Instance List<String>Types - A list of EC2 instance types that the capacity provider is allowed to use. If not specified, all compatible instance types are allowed.
- architectures
List<Capacity
Provider Architecture> - A list of supported CPU architectures for compute instances. Valid values include
x86_64andarm64. - excluded
Instance List<String>Types - A list of EC2 instance types that the capacity provider should not use, even if they meet other requirements.
- allowed
Instance string[]Types - A list of EC2 instance types that the capacity provider is allowed to use. If not specified, all compatible instance types are allowed.
- architectures
Capacity
Provider Architecture[] - A list of supported CPU architectures for compute instances. Valid values include
x86_64andarm64. - excluded
Instance string[]Types - A list of EC2 instance types that the capacity provider should not use, even if they meet other requirements.
- allowed_
instance_ Sequence[str]types - A list of EC2 instance types that the capacity provider is allowed to use. If not specified, all compatible instance types are allowed.
- architectures
Sequence[Capacity
Provider Architecture] - A list of supported CPU architectures for compute instances. Valid values include
x86_64andarm64. - excluded_
instance_ Sequence[str]types - A list of EC2 instance types that the capacity provider should not use, even if they meet other requirements.
- allowed
Instance List<String>Types - A list of EC2 instance types that the capacity provider is allowed to use. If not specified, all compatible instance types are allowed.
- architectures List<"x86_64" | "arm64">
- A list of supported CPU architectures for compute instances. Valid values include
x86_64andarm64. - excluded
Instance List<String>Types - A list of EC2 instance types that the capacity provider should not use, even if they meet other requirements.
CapacityProviderPermissionsConfig, CapacityProviderPermissionsConfigArgs
Configuration that specifies the permissions required for the capacity provider to manage compute resources.- Capacity
Provider stringOperator Role Arn - The ARN of the IAM role that the capacity provider uses to manage compute instances and other AWS resources.
- Capacity
Provider stringOperator Role Arn - The ARN of the IAM role that the capacity provider uses to manage compute instances and other AWS resources.
- capacity
Provider StringOperator Role Arn - The ARN of the IAM role that the capacity provider uses to manage compute instances and other AWS resources.
- capacity
Provider stringOperator Role Arn - The ARN of the IAM role that the capacity provider uses to manage compute instances and other AWS resources.
- capacity_
provider_ stroperator_ role_ arn - The ARN of the IAM role that the capacity provider uses to manage compute instances and other AWS resources.
- capacity
Provider StringOperator Role Arn - The ARN of the IAM role that the capacity provider uses to manage compute instances and other AWS resources.
CapacityProviderPredefinedMetricType, CapacityProviderPredefinedMetricTypeArgs
- Lambda
Capacity Provider Average Cpu Utilization LambdaCapacityProviderAverageCPUUtilization
- Capacity
Provider Predefined Metric Type Lambda Capacity Provider Average Cpu Utilization LambdaCapacityProviderAverageCPUUtilization
- Lambda
Capacity Provider Average Cpu Utilization LambdaCapacityProviderAverageCPUUtilization
- Lambda
Capacity Provider Average Cpu Utilization LambdaCapacityProviderAverageCPUUtilization
- LAMBDA_CAPACITY_PROVIDER_AVERAGE_CPU_UTILIZATION
LambdaCapacityProviderAverageCPUUtilization
- "Lambda
Capacity Provider Average CPUUtilization" LambdaCapacityProviderAverageCPUUtilization
CapacityProviderScalingConfig, CapacityProviderScalingConfigArgs
Configuration that defines how the capacity provider scales compute instances based on demand and policies.- Max
VCpu intCount - The maximum number of vCPUs that the capacity provider can provision across all compute instances.
- Scaling
Mode Pulumi.Aws Native. Lambda. Capacity Provider Scaling Mode - The scaling mode that determines how the capacity provider responds to changes in demand.
- Scaling
Policies List<Pulumi.Aws Native. Lambda. Inputs. Capacity Provider Target Tracking Scaling Policy> - A list of target tracking scaling policies for the capacity provider.
- Max
VCpu intCount - The maximum number of vCPUs that the capacity provider can provision across all compute instances.
- Scaling
Mode CapacityProvider Scaling Mode - The scaling mode that determines how the capacity provider responds to changes in demand.
- Scaling
Policies []CapacityProvider Target Tracking Scaling Policy - A list of target tracking scaling policies for the capacity provider.
- max
VCpu IntegerCount - The maximum number of vCPUs that the capacity provider can provision across all compute instances.
- scaling
Mode CapacityProvider Scaling Mode - The scaling mode that determines how the capacity provider responds to changes in demand.
- scaling
Policies List<CapacityProvider Target Tracking Scaling Policy> - A list of target tracking scaling policies for the capacity provider.
- max
VCpu numberCount - The maximum number of vCPUs that the capacity provider can provision across all compute instances.
- scaling
Mode CapacityProvider Scaling Mode - The scaling mode that determines how the capacity provider responds to changes in demand.
- scaling
Policies CapacityProvider Target Tracking Scaling Policy[] - A list of target tracking scaling policies for the capacity provider.
- max_
v_ intcpu_ count - The maximum number of vCPUs that the capacity provider can provision across all compute instances.
- scaling_
mode CapacityProvider Scaling Mode - The scaling mode that determines how the capacity provider responds to changes in demand.
- scaling_
policies Sequence[CapacityProvider Target Tracking Scaling Policy] - A list of target tracking scaling policies for the capacity provider.
- max
VCpu NumberCount - The maximum number of vCPUs that the capacity provider can provision across all compute instances.
- scaling
Mode "Auto" | "Manual" - The scaling mode that determines how the capacity provider responds to changes in demand.
- scaling
Policies List<Property Map> - A list of target tracking scaling policies for the capacity provider.
CapacityProviderScalingMode, CapacityProviderScalingModeArgs
- Auto
Auto- Manual
Manual
- Capacity
Provider Scaling Mode Auto Auto- Capacity
Provider Scaling Mode Manual Manual
- Auto
Auto- Manual
Manual
- Auto
Auto- Manual
Manual
- AUTO
Auto- MANUAL
Manual
- "Auto"
Auto- "Manual"
Manual
CapacityProviderState, CapacityProviderStateArgs
- Pending
Pending- Active
Active- Failed
Failed- Deleting
Deleting
- Capacity
Provider State Pending Pending- Capacity
Provider State Active Active- Capacity
Provider State Failed Failed- Capacity
Provider State Deleting Deleting
- Pending
Pending- Active
Active- Failed
Failed- Deleting
Deleting
- Pending
Pending- Active
Active- Failed
Failed- Deleting
Deleting
- PENDING
Pending- ACTIVE
Active- FAILED
Failed- DELETING
Deleting
- "Pending"
Pending- "Active"
Active- "Failed"
Failed- "Deleting"
Deleting
CapacityProviderTargetTrackingScalingPolicy, CapacityProviderTargetTrackingScalingPolicyArgs
A scaling policy for the capacity provider that automatically adjusts capacity to maintain a target value for a specific metric.- Predefined
Metric Pulumi.Type Aws Native. Lambda. Capacity Provider Predefined Metric Type - The predefined metric type to track for scaling decisions.
- Target
Value double - The target value for the metric that the scaling policy attempts to maintain through scaling actions.
- Predefined
Metric CapacityType Provider Predefined Metric Type - The predefined metric type to track for scaling decisions.
- Target
Value float64 - The target value for the metric that the scaling policy attempts to maintain through scaling actions.
- predefined
Metric CapacityType Provider Predefined Metric Type - The predefined metric type to track for scaling decisions.
- target
Value Double - The target value for the metric that the scaling policy attempts to maintain through scaling actions.
- predefined
Metric CapacityType Provider Predefined Metric Type - The predefined metric type to track for scaling decisions.
- target
Value number - The target value for the metric that the scaling policy attempts to maintain through scaling actions.
- predefined_
metric_ Capacitytype Provider Predefined Metric Type - The predefined metric type to track for scaling decisions.
- target_
value float - The target value for the metric that the scaling policy attempts to maintain through scaling actions.
- predefined
Metric "LambdaType Capacity Provider Average CPUUtilization" - The predefined metric type to track for scaling decisions.
- target
Value Number - The target value for the metric that the scaling policy attempts to maintain through scaling actions.
CapacityProviderVpcConfig, CapacityProviderVpcConfigArgs
VPC configuration that specifies the network settings for compute instances managed by the capacity provider.- Security
Group List<string>Ids - A list of security group IDs that control network access for compute instances managed by the capacity provider.
- Subnet
Ids List<string> - A list of subnet IDs where the capacity provider launches compute instances.
- Security
Group []stringIds - A list of security group IDs that control network access for compute instances managed by the capacity provider.
- Subnet
Ids []string - A list of subnet IDs where the capacity provider launches compute instances.
- security
Group List<String>Ids - A list of security group IDs that control network access for compute instances managed by the capacity provider.
- subnet
Ids List<String> - A list of subnet IDs where the capacity provider launches compute instances.
- security
Group string[]Ids - A list of security group IDs that control network access for compute instances managed by the capacity provider.
- subnet
Ids string[] - A list of subnet IDs where the capacity provider launches compute instances.
- security_
group_ Sequence[str]ids - A list of security group IDs that control network access for compute instances managed by the capacity provider.
- subnet_
ids Sequence[str] - A list of subnet IDs where the capacity provider launches compute instances.
- security
Group List<String>Ids - A list of security group IDs that control network access for compute instances managed by the capacity provider.
- subnet
Ids List<String> - A list of subnet IDs where the capacity provider launches compute instances.
Tag, TagArgs
A set of tags to apply to the resource.Package Details
- Repository
- AWS Native pulumi/pulumi-aws-native
- License
- Apache-2.0
We recommend new projects start with resources from the AWS provider.
published on Monday, Mar 9, 2026 by Pulumi
