Class: AWSCDK::CloudFormation::CfnLambdaHook::StackFiltersProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
cloud_formation/cfn_lambda_hook.rb

Overview

The StackFilters property type specifies stack level filters for a Hook.

The StackNames or StackRoles properties are optional. However, you must specify at least one of these properties.

For more information, see CloudFormation Hooks stack level filters .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(filtering_criteria:, stack_names: nil, stack_roles: nil) ⇒ StackFiltersProperty

Returns a new instance of StackFiltersProperty.

Parameters:



662
663
664
665
666
667
668
669
# File 'cloud_formation/cfn_lambda_hook.rb', line 662

def initialize(filtering_criteria:, stack_names: nil, stack_roles: nil)
  @filtering_criteria = filtering_criteria
  Jsii::Type.check_type(@filtering_criteria, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "filteringCriteria")
  @stack_names = stack_names.is_a?(Hash) ? ::AWSCDK::CloudFormation::CfnLambdaHook::StackNamesProperty.new(**stack_names.transform_keys(&:to_sym)) : stack_names
  Jsii::Type.check_type(@stack_names, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jbG91ZGZvcm1hdGlvbi5DZm5MYW1iZGFIb29rLlN0YWNrTmFtZXNQcm9wZXJ0eSJ9XX19")), "stackNames") unless @stack_names.nil?
  @stack_roles = stack_roles.is_a?(Hash) ? ::AWSCDK::CloudFormation::CfnLambdaHook::StackRolesProperty.new(**stack_roles.transform_keys(&:to_sym)) : stack_roles
  Jsii::Type.check_type(@stack_roles, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jbG91ZGZvcm1hdGlvbi5DZm5MYW1iZGFIb29rLlN0YWNrUm9sZXNQcm9wZXJ0eSJ9XX19")), "stackRoles") unless @stack_roles.nil?
end

Instance Attribute Details

#filtering_criteriaString (readonly)

Note:

Default: - "ALL"

The filtering criteria.

  • All stack names and stack roles ( All ): The Hook will only be invoked when all specified filters match.
  • Any stack names and stack roles ( Any ): The Hook will be invoked if at least one of the specified filters match.


679
680
681
# File 'cloud_formation/cfn_lambda_hook.rb', line 679

def filtering_criteria
  @filtering_criteria
end

#stack_namesAWSCDK::IResolvable, ... (readonly)

Includes or excludes specific stacks from Hook invocations.



684
685
686
# File 'cloud_formation/cfn_lambda_hook.rb', line 684

def stack_names
  @stack_names
end

#stack_rolesAWSCDK::IResolvable, ... (readonly)

Includes or excludes specific stacks from Hook invocations based on their associated IAM roles.



689
690
691
# File 'cloud_formation/cfn_lambda_hook.rb', line 689

def stack_roles
  @stack_roles
end

Class Method Details

.jsii_propertiesObject



691
692
693
694
695
696
697
# File 'cloud_formation/cfn_lambda_hook.rb', line 691

def self.jsii_properties
  {
    :filtering_criteria => "filteringCriteria",
    :stack_names => "stackNames",
    :stack_roles => "stackRoles",
  }
end

Instance Method Details

#to_jsiiObject



699
700
701
702
703
704
705
706
707
# File 'cloud_formation/cfn_lambda_hook.rb', line 699

def to_jsii
  result = {}
  result.merge!({
    "filteringCriteria" => @filtering_criteria,
    "stackNames" => @stack_names,
    "stackRoles" => @stack_roles,
  })
  result.compact
end