Class: AWSCDK::Backup::CfnRestoreTestingSelectionProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
backup/cfn_restore_testing_selection_props.rb

Overview

Properties for defining a CfnRestoreTestingSelection.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(iam_role_arn:, protected_resource_type:, restore_testing_plan_name:, restore_testing_selection_name:, protected_resource_arns: nil, protected_resource_conditions: nil, restore_metadata_overrides: nil, validation_window_hours: nil) ⇒ CfnRestoreTestingSelectionProps

Returns a new instance of CfnRestoreTestingSelectionProps.

Parameters:

  • iam_role_arn (String)

    The Amazon Resource Name (ARN) of the IAM role that AWS Backup uses to create the target resource;

  • protected_resource_type (String)

    The type of AWS resource included in a resource testing selection;

  • restore_testing_plan_name (String)

    Unique string that is the name of the restore testing plan.

  • restore_testing_selection_name (String)

    The unique name of the restore testing selection that belongs to the related restore testing plan.

  • protected_resource_arns (Array<String>, nil) (defaults to: nil)

    You can include specific ARNs, such as ProtectedResourceArns: ["arn:aws:...", "arn:aws:..."] or you can include a wildcard: ProtectedResourceArns: ["*"] , but not both.

  • protected_resource_conditions (AWSCDK::IResolvable, AWSCDK::Backup::CfnRestoreTestingSelection::ProtectedResourceConditionsProperty, nil) (defaults to: nil)

    In a resource testing selection, this parameter filters by specific conditions such as StringEquals or StringNotEquals .

  • restore_metadata_overrides (AWSCDK::IResolvable, Hash{String => String}, nil) (defaults to: nil)

    You can override certain restore metadata keys by including the parameter RestoreMetadataOverrides in the body of RestoreTestingSelection .

  • validation_window_hours (Numeric, nil) (defaults to: nil)

    This is amount of hours (1 to 168) available to run a validation script on the data.



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'backup/cfn_restore_testing_selection_props.rb', line 17

def initialize(iam_role_arn:, protected_resource_type:, restore_testing_plan_name:, restore_testing_selection_name:, protected_resource_arns: nil, protected_resource_conditions: nil, restore_metadata_overrides: nil, validation_window_hours: nil)
  @iam_role_arn = iam_role_arn
  Jsii::Type.check_type(@iam_role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "iamRoleArn")
  @protected_resource_type = protected_resource_type
  Jsii::Type.check_type(@protected_resource_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "protectedResourceType")
  @restore_testing_plan_name = restore_testing_plan_name
  Jsii::Type.check_type(@restore_testing_plan_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "restoreTestingPlanName")
  @restore_testing_selection_name = restore_testing_selection_name
  Jsii::Type.check_type(@restore_testing_selection_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "restoreTestingSelectionName")
  @protected_resource_arns = protected_resource_arns
  Jsii::Type.check_type(@protected_resource_arns, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "protectedResourceArns") unless @protected_resource_arns.nil?
  @protected_resource_conditions = protected_resource_conditions.is_a?(Hash) ? ::AWSCDK::Backup::CfnRestoreTestingSelection::ProtectedResourceConditionsProperty.new(**protected_resource_conditions.transform_keys(&:to_sym)) : protected_resource_conditions
  Jsii::Type.check_type(@protected_resource_conditions, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19iYWNrdXAuQ2ZuUmVzdG9yZVRlc3RpbmdTZWxlY3Rpb24uUHJvdGVjdGVkUmVzb3VyY2VDb25kaXRpb25zUHJvcGVydHkifV19fQ==")), "protectedResourceConditions") unless @protected_resource_conditions.nil?
  @restore_metadata_overrides = 
  Jsii::Type.check_type(@restore_metadata_overrides, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsicHJpbWl0aXZlIjoic3RyaW5nIn0sImtpbmQiOiJtYXAifX1dfX0=")), "restoreMetadataOverrides") unless @restore_metadata_overrides.nil?
  @validation_window_hours = validation_window_hours
  Jsii::Type.check_type(@validation_window_hours, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "validationWindowHours") unless @validation_window_hours.nil?
end

Instance Attribute Details

#iam_role_arnString (readonly)

The Amazon Resource Name (ARN) of the IAM role that AWS Backup uses to create the target resource;

for example: arn:aws:iam::123456789012:role/S3Access .



42
43
44
# File 'backup/cfn_restore_testing_selection_props.rb', line 42

def iam_role_arn
  @iam_role_arn
end

#protected_resource_arnsArray<String>? (readonly)

You can include specific ARNs, such as ProtectedResourceArns: ["arn:aws:...", "arn:aws:..."] or you can include a wildcard: ProtectedResourceArns: ["*"] , but not both.



68
69
70
# File 'backup/cfn_restore_testing_selection_props.rb', line 68

def protected_resource_arns
  @protected_resource_arns
end

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

In a resource testing selection, this parameter filters by specific conditions such as StringEquals or StringNotEquals .



73
74
75
# File 'backup/cfn_restore_testing_selection_props.rb', line 73

def protected_resource_conditions
  @protected_resource_conditions
end

#protected_resource_typeString (readonly)

The type of AWS resource included in a resource testing selection;

for example, an Amazon EBS volume or an Amazon RDS database.



49
50
51
# File 'backup/cfn_restore_testing_selection_props.rb', line 49

def protected_resource_type
  @protected_resource_type
end

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

You can override certain restore metadata keys by including the parameter RestoreMetadataOverrides in the body of RestoreTestingSelection .

Key values are not case sensitive.

See the complete list of restore testing inferred metadata .



82
83
84
# File 'backup/cfn_restore_testing_selection_props.rb', line 82

def 
  @restore_metadata_overrides
end

#restore_testing_plan_nameString (readonly)

Unique string that is the name of the restore testing plan.

The name cannot be changed after creation. The name must consist of only alphanumeric characters and underscores. Maximum length is 50.



56
57
58
# File 'backup/cfn_restore_testing_selection_props.rb', line 56

def restore_testing_plan_name
  @restore_testing_plan_name
end

#restore_testing_selection_nameString (readonly)

The unique name of the restore testing selection that belongs to the related restore testing plan.

The name consists of only alphanumeric characters and underscores. Maximum length is 50.



63
64
65
# File 'backup/cfn_restore_testing_selection_props.rb', line 63

def restore_testing_selection_name
  @restore_testing_selection_name
end

#validation_window_hoursNumeric? (readonly)

This is amount of hours (1 to 168) available to run a validation script on the data.

The data will be deleted upon the completion of the validation script or the end of the specified retention period, whichever comes first.



89
90
91
# File 'backup/cfn_restore_testing_selection_props.rb', line 89

def validation_window_hours
  @validation_window_hours
end

Class Method Details

.jsii_propertiesObject



91
92
93
94
95
96
97
98
99
100
101
102
# File 'backup/cfn_restore_testing_selection_props.rb', line 91

def self.jsii_properties
  {
    :iam_role_arn => "iamRoleArn",
    :protected_resource_type => "protectedResourceType",
    :restore_testing_plan_name => "restoreTestingPlanName",
    :restore_testing_selection_name => "restoreTestingSelectionName",
    :protected_resource_arns => "protectedResourceArns",
    :protected_resource_conditions => "protectedResourceConditions",
    :restore_metadata_overrides => "restoreMetadataOverrides",
    :validation_window_hours => "validationWindowHours",
  }
end

Instance Method Details

#to_jsiiObject



104
105
106
107
108
109
110
111
112
113
114
115
116
117
# File 'backup/cfn_restore_testing_selection_props.rb', line 104

def to_jsii
  result = {}
  result.merge!({
    "iamRoleArn" => @iam_role_arn,
    "protectedResourceType" => @protected_resource_type,
    "restoreTestingPlanName" => @restore_testing_plan_name,
    "restoreTestingSelectionName" => @restore_testing_selection_name,
    "protectedResourceArns" => @protected_resource_arns,
    "protectedResourceConditions" => @protected_resource_conditions,
    "restoreMetadataOverrides" => @restore_metadata_overrides,
    "validationWindowHours" => @validation_window_hours,
  })
  result.compact
end