Class: AWSCDK::DLM::CfnLifecyclePolicy::ExclusionsProperty

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

Overview

[Default policies only] Specifies exclusion parameters for volumes or instances for which you do not want to create snapshots or AMIs.

The policy will not create snapshots or AMIs for target resources that match any of the specified exclusion parameters.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(exclude_boot_volumes: nil, exclude_tags: nil, exclude_volume_types: nil) ⇒ ExclusionsProperty

Returns a new instance of ExclusionsProperty.

Parameters:

  • exclude_boot_volumes (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    [Default policies for EBS snapshots only] Indicates whether to exclude volumes that are attached to instances as the boot volume.

  • exclude_tags (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::CfnTag>, nil) (defaults to: nil)

    [Default policies for EBS-backed AMIs only] Specifies whether to exclude volumes that have specific tags.

  • exclude_volume_types (Array<Object>, AWSCDK::IResolvable, nil) (defaults to: nil)

    [Default policies for EBS snapshots only] Specifies the volume types to exclude.



1394
1395
1396
1397
1398
1399
1400
1401
# File 'dlm/cfn_lifecycle_policy.rb', line 1394

def initialize(exclude_boot_volumes: nil, exclude_tags: nil, exclude_volume_types: nil)
  @exclude_boot_volumes = exclude_boot_volumes
  Jsii::Type.check_type(@exclude_boot_volumes, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "excludeBootVolumes") unless @exclude_boot_volumes.nil?
  @exclude_tags = exclude_tags
  Jsii::Type.check_type(@exclude_tags, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5UYWcifV19fSwia2luZCI6ImFycmF5In19XX19")), "excludeTags") unless @exclude_tags.nil?
  @exclude_volume_types = exclude_volume_types
  Jsii::Type.check_type(@exclude_volume_types, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siY29sbGVjdGlvbiI6eyJlbGVtZW50dHlwZSI6eyJwcmltaXRpdmUiOiJhbnkifSwia2luZCI6ImFycmF5In19LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "excludeVolumeTypes") unless @exclude_volume_types.nil?
end

Instance Attribute Details

#exclude_boot_volumesBoolean, ... (readonly)

[Default policies for EBS snapshots only] Indicates whether to exclude volumes that are attached to instances as the boot volume.

If you exclude boot volumes, only volumes attached as data (non-boot) volumes will be backed up by the policy. To exclude boot volumes, specify true .



1409
1410
1411
# File 'dlm/cfn_lifecycle_policy.rb', line 1409

def exclude_boot_volumes
  @exclude_boot_volumes
end

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

[Default policies for EBS-backed AMIs only] Specifies whether to exclude volumes that have specific tags.



1414
1415
1416
# File 'dlm/cfn_lifecycle_policy.rb', line 1414

def exclude_tags
  @exclude_tags
end

#exclude_volume_typesArray<Object>, ... (readonly)

[Default policies for EBS snapshots only] Specifies the volume types to exclude.

Volumes of the specified types will not be targeted by the policy.



1421
1422
1423
# File 'dlm/cfn_lifecycle_policy.rb', line 1421

def exclude_volume_types
  @exclude_volume_types
end

Class Method Details

.jsii_propertiesObject



1423
1424
1425
1426
1427
1428
1429
# File 'dlm/cfn_lifecycle_policy.rb', line 1423

def self.jsii_properties
  {
    :exclude_boot_volumes => "excludeBootVolumes",
    :exclude_tags => "excludeTags",
    :exclude_volume_types => "excludeVolumeTypes",
  }
end

Instance Method Details

#to_jsiiObject



1431
1432
1433
1434
1435
1436
1437
1438
1439
# File 'dlm/cfn_lifecycle_policy.rb', line 1431

def to_jsii
  result = {}
  result.merge!({
    "excludeBootVolumes" => @exclude_boot_volumes,
    "excludeTags" => @exclude_tags,
    "excludeVolumeTypes" => @exclude_volume_types,
  })
  result.compact
end