CfnLambdaHookProps Struct
Properties for defining a CfnLambdaHook.
Example
ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import * as cdk from 'aws-cdk-lib';
const cfnLambdaHookProps: cdk.CfnLambdaHookProps = {
alias: 'alias',
executionRole: 'executionRole',
failureMode: 'failureMode',
hookStatus: 'hookStatus',
lambdaFunction: 'lambdaFunction',
targetOperations: ['targetOperations'],
// the properties below are optional
autoUpdate: false,
loggingConfig: {
logGroupName: 'logGroupName',
logRoleArn: 'logRoleArn',
},
stackFilters: {
filteringCriteria: 'filteringCriteria',
// the properties below are optional
stackNames: {
exclude: ['exclude'],
include: ['include'],
},
stackRoles: {
exclude: ['exclude'],
include: ['include'],
},
},
targetFilters: {
targets: [{
action: 'action',
invocationPoint: 'invocationPoint',
targetName: 'targetName',
}],
// the properties below are optional
actions: ['actions'],
invocationPoints: ['invocationPoints'],
targetNames: ['targetNames'],
},
};
Properties
The type name alias for the Hook. This alias must be unique per account and Region.
The alias must be in the form Name1::Name2::Name3 and must not begin with AWS . For example, Private::Lambda::MyTestHook .
autoUpdateoptionalboolean | IResolvableauto_updateoptionaltyping.Union[bool, IResolvable]autoUpdateoptionalBooleanAutoUpdateoptionalboolAutoUpdateoptionalinterface{}= true#Whether to automatically update the extension in this account and Region when a new minor version is published by the extension publisher.
executionRolestringexecution_rolestrexecutionRoleStringExecutionRolestringExecutionRole*stringrequired#The IAM role that the Hook assumes to invoke your Lambda function.
Specifies how the Hook responds when the Lambda function invoked by the Hook returns a `FAILED` response.
notes
FAIL: Prevents the action from proceeding. This is helpful for enforcing strict compliance or security policies.WARN: Issues warnings to users but allows actions to continue. This is useful for non-critical validations or informational checks.
Specifies if the Hook is `ENABLED` or `DISABLED` .
lambdaFunctionstringlambda_functionstrlambdaFunctionStringLambdaFunctionstringLambdaFunction*stringrequired#Specifies the Lambda function for the Hook. You can use:.
- The full Amazon Resource Name (ARN) without a suffix.
- A qualified ARN with a version or alias suffix.
loggingConfigoptionalIResolvable | CfnLambdaHook.LoggingConfigPropertylogging_configoptionaltyping.Union[IResolvable, LoggingConfigProperty]loggingConfigoptionalIResolvableLoggingConfigoptionalIResolvableLoggingConfigoptionalinterface{}#Contains logging configuration information for an extension.
stackFiltersoptionalIResolvable | CfnLambdaHook.StackFiltersPropertystack_filtersoptionaltyping.Union[IResolvable, StackFiltersProperty]stackFiltersoptionalIResolvableStackFiltersoptionalIResolvableStackFiltersoptionalinterface{}#Specifies the stack level filters for the Hook.
notes
Example stack level filter in JSON:
"StackFilters": {"FilteringCriteria": "ALL", "StackNames": {"Exclude": [ "stack-1", "stack-2"]}}
Example stack level filter in YAML:
StackFilters: FilteringCriteria: ALL StackNames: Exclude: - stack-1 - stack-2
targetFiltersoptionalIResolvable | CfnLambdaHook.TargetFiltersPropertytarget_filtersoptionaltyping.Union[IResolvable, TargetFiltersProperty]targetFiltersoptionalIResolvableTargetFiltersoptionalIResolvableTargetFiltersoptionalinterface{}#Specifies the target filters for the Hook.
Example target filter in JSON:
"TargetFilters": {"Actions": [ "CREATE", "UPDATE", "DELETE" ]}
Example target filter in YAML:
TargetFilters: Actions: - CREATE - UPDATE - DELETE
targetOperationsstring[]target_operationstyping.List[str]targetOperationsList<String>TargetOperationsstring[]TargetOperations*[]*stringrequired#Specifies the list of operations the Hook is run against.
notes
For more information, see Hook targets in the CloudFormation Hooks User Guide .
Valid values: STACK | RESOURCE | CHANGE_SET | CLOUD_CONTROL