AWS::Lambda::Version¶
Resource Type definition for AWS::Lambda::Version
Generated by cfn-typegen --out cfn_types AWS::Lambda::Version into cfn_types/lambda_.py:
# Generated by cfn-typegen from the CloudFormation registry schemas. Do not edit.
# fmt: off
# ruff: noqa
"""AWS::Lambda resources."""
from typing import Any, Literal, NotRequired, Unpack
from typing_extensions import TypedDict
from cfn_typed.base import DeletionPolicy, DependsOn, ResourceAttrs, UpdateReplacePolicy, build
from cfn_typed.intrinsics import Expr
_c0="^(arn:(aws[a-zA-Z-]*)?:lambda:)?((eusc-)?[a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1}:)?(\\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\\$LATEST|[a-zA-Z0-9-_]+))?$"
CONSTRAINTS:dict[str,Any]={
'AWS::Lambda::Version':{'FunctionArn':{'p':_c0},'Description':{'l':0,'L':256},'FunctionName':{'p':_c0,'l':1,'L':140},'RuntimePolicy':{'P':{'RuntimeVersionArn':{'p':"^arn:(aws[a-zA-Z-]*):lambda:(eusc-)?[a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1}::runtime:.+$",'l':26,'L':2048}}},'FunctionScalingConfig':{'P':{'MinExecutionEnvironments':{'m':0},'MaxExecutionEnvironments':{'m':0}}}},
}
ATTRIBUTES:dict[str,Any]={"AWS::Lambda::Version":["FunctionArn","Version"]}
RULES:dict[str,Any]={}
Nested types (6)
These are defined above the properties in the generated module.
class VersionProvisionedConcurrencyConfiguration(TypedDict, closed=True):
"A provisioned concurrency configuration for a function's version."
ProvisionedConcurrentExecutions: Expr[int]
'The amount of provisioned concurrency to allocate for the version.'
class VersionRuntimePolicy(TypedDict, closed=True):
'Runtime Management Config of a function.'
RuntimeVersionArn: NotRequired[Expr[str]]
'The ARN of the runtime the function is configured to use.'
UpdateRuntimeOn: Expr[str]
'The runtime update mode.'
class VersionFunctionScalingConfig(TypedDict, closed=True):
'Configuration that defines the scaling behavior for a Lambda Managed Instances function, including the minimum and maximum number of execution environments t...'
MinExecutionEnvironments: NotRequired[Expr[int]]
'The minimum number of execution environments to maintain for the function.'
MaxExecutionEnvironments: NotRequired[Expr[int]]
'The maximum number of execution environments that can be provisioned for the function.'
class VersionProps(TypedDict, closed=True):
'Resource Type definition for AWS::Lambda::Version'
CodeSha256: NotRequired[Expr[str]]
"Only publish a version if the hash value matches the value that's specified."
Description: NotRequired[Expr[str]]
'A description for the version to override the description in the function configuration.'
FunctionName: Expr[str]
'The name of the Lambda function.'
ProvisionedConcurrencyConfig: NotRequired[Expr[VersionProvisionedConcurrencyConfiguration]]
"Specifies a provisioned concurrency configuration for a function's version."
RuntimePolicy: NotRequired[Expr[VersionRuntimePolicy]]
'Specifies the runtime management configuration of a function.'
FunctionScalingConfig: NotRequired[Expr[VersionFunctionScalingConfig]]
'The scaling configuration to apply to the function, including minimum and maximum execution environment limits.'
class Version(ResourceAttrs):
'Resource Type definition for AWS::Lambda::Version'
Type: Literal['AWS::Lambda::Version']
Properties: VersionProps
def version(
*,
depends_on: DependsOn | None = None,
deletion_policy: DeletionPolicy | None = None,
update_replace_policy: UpdateReplacePolicy | None = None,
condition: str | None = None,
metadata: dict[str, Any] | None = None,
**props: Unpack[VersionProps],
) -> Version:
return build('AWS::Lambda::Version', props, depends_on, deletion_policy, update_replace_policy, condition, metadata)
Attributes¶
Read-only values for get_att(logical_id, attribute). They are not accepted as inputs.
FunctionArnVersion