Skip to content
v2.274.0

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 ​

aliasstringaliasstraliasStringAliasstringAlias*stringrequired#
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.
failureModestringfailure_modestrfailureModeStringFailureModestringFailureMode*stringrequired#
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.
hookStatusstringhook_statusstrhookStatusStringHookStatusstringHookStatus*string= "ENABLED"required#
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