Class: AWSCDK::ImageBuilder::CfnLifecyclePolicy::PolicyDetailProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
image_builder/cfn_lifecycle_policy.rb

Overview

The configuration details for a lifecycle policy resource.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(action:, filter:, exclusion_rules: nil) ⇒ PolicyDetailProperty

Returns a new instance of PolicyDetailProperty.

Parameters:



940
941
942
943
944
945
946
947
# File 'image_builder/cfn_lifecycle_policy.rb', line 940

def initialize(action:, filter:, exclusion_rules: nil)
  @action = action.is_a?(Hash) ? ::AWSCDK::ImageBuilder::CfnLifecyclePolicy::ActionProperty.new(**action.transform_keys(&:to_sym)) : action
  Jsii::Type.check_type(@action, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19pbWFnZWJ1aWxkZXIuQ2ZuTGlmZWN5Y2xlUG9saWN5LkFjdGlvblByb3BlcnR5In1dfX0=")), "action")
  @filter = filter.is_a?(Hash) ? ::AWSCDK::ImageBuilder::CfnLifecyclePolicy::FilterProperty.new(**filter.transform_keys(&:to_sym)) : filter
  Jsii::Type.check_type(@filter, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19pbWFnZWJ1aWxkZXIuQ2ZuTGlmZWN5Y2xlUG9saWN5LkZpbHRlclByb3BlcnR5In1dfX0=")), "filter")
  @exclusion_rules = exclusion_rules.is_a?(Hash) ? ::AWSCDK::ImageBuilder::CfnLifecyclePolicy::ExclusionRulesProperty.new(**exclusion_rules.transform_keys(&:to_sym)) : exclusion_rules
  Jsii::Type.check_type(@exclusion_rules, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19pbWFnZWJ1aWxkZXIuQ2ZuTGlmZWN5Y2xlUG9saWN5LkV4Y2x1c2lvblJ1bGVzUHJvcGVydHkifV19fQ==")), "exclusionRules") unless @exclusion_rules.nil?
end

Instance Attribute Details

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

Additional rules to specify resources that should be exempt from policy actions.



963
964
965
# File 'image_builder/cfn_lifecycle_policy.rb', line 963

def exclusion_rules
  @exclusion_rules
end

Class Method Details

.jsii_propertiesObject



965
966
967
968
969
970
971
# File 'image_builder/cfn_lifecycle_policy.rb', line 965

def self.jsii_properties
  {
    :action => "action",
    :filter => "filter",
    :exclusion_rules => "exclusionRules",
  }
end

Instance Method Details

#to_jsiiObject



973
974
975
976
977
978
979
980
981
# File 'image_builder/cfn_lifecycle_policy.rb', line 973

def to_jsii
  result = {}
  result.merge!({
    "action" => @action,
    "filter" => @filter,
    "exclusionRules" => @exclusion_rules,
  })
  result.compact
end