CustomResourceProviderProps
- class aws_cdk.CustomResourceProviderProps(*, description=None, environment=None, memory_size=None, policy_statements=None, timeout=None, use_cfn_response_wrapper=None, code_directory, runtime)
Bases:
CustomResourceProviderOptions
Initialization properties for
CustomResourceProvider
.- Parameters:
description (
Optional
[str
]) – A description of the function. Default: - No description.environment (
Optional
[Mapping
[str
,str
]]) – Key-value pairs that are passed to Lambda as Environment. Default: - No environment variables.memory_size (
Optional
[Size
]) – The amount of memory that your function has access to. Increasing the function’s memory also increases its CPU allocation. Default: Size.mebibytes(128)policy_statements (
Optional
[Sequence
[Any
]]) – A set of IAM policy statements to include in the inline policy of the provider’s lambda function. Please note: these are direct IAM JSON policy blobs, notiam.PolicyStatement
objects like you will see in the rest of the CDK. Default: - no additional inline policytimeout (
Optional
[Duration
]) – AWS Lambda timeout for the provider. Default: Duration.minutes(15)use_cfn_response_wrapper (
Optional
[bool
]) – Whether or not the cloudformation response wrapper (nodejs-entrypoint.ts
) is used. If set totrue
,nodejs-entrypoint.js
is bundled in the same asset as the custom resource and set as the entrypoint. If set tofalse
, the custom resource provided is the entrypoint. Default: -true
ifinlineCode: false
andfalse
otherwise.code_directory (
str
) – A local file system directory with the provider’s code. The code will be bundled into a zip asset and wired to the provider’s AWS Lambda function.runtime (
CustomResourceProviderRuntime
) – The AWS Lambda runtime and version to use for the provider.
- ExampleMetadata:
infused
Example:
provider = CustomResourceProvider.get_or_create_provider(self, "Custom::MyCustomResourceType", code_directory=f"{__dirname}/my-handler", runtime=CustomResourceProviderRuntime.NODEJS_18_X ) provider.add_to_role_policy({ "Effect": "Allow", "Action": "s3:GetObject", "Resource": "*" })
Attributes
- code_directory
A local file system directory with the provider’s code.
The code will be bundled into a zip asset and wired to the provider’s AWS Lambda function.
- description
A description of the function.
- Default:
No description.
- environment
Key-value pairs that are passed to Lambda as Environment.
- Default:
No environment variables.
- memory_size
The amount of memory that your function has access to.
Increasing the function’s memory also increases its CPU allocation.
- Default:
Size.mebibytes(128)
- policy_statements
A set of IAM policy statements to include in the inline policy of the provider’s lambda function.
Please note: these are direct IAM JSON policy blobs, not
iam.PolicyStatement
objects like you will see in the rest of the CDK.- Default:
no additional inline policy
Example:
provider = CustomResourceProvider.get_or_create_provider(self, "Custom::MyCustomResourceType", code_directory=f"{__dirname}/my-handler", runtime=CustomResourceProviderRuntime.NODEJS_18_X, policy_statements=[{ "Effect": "Allow", "Action": "s3:PutObject*", "Resource": "*" } ] )
- runtime
The AWS Lambda runtime and version to use for the provider.
- timeout
AWS Lambda timeout for the provider.
- Default:
Duration.minutes(15)
- use_cfn_response_wrapper
Whether or not the cloudformation response wrapper (
nodejs-entrypoint.ts
) is used. If set totrue
,nodejs-entrypoint.js
is bundled in the same asset as the custom resource and set as the entrypoint. If set tofalse
, the custom resource provided is the entrypoint.- Default:
true
ifinlineCode: false
andfalse
otherwise.