aws-sdk-dlm 1.63.0 → 1.65.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -30,8 +30,8 @@ module Aws::DLM
30
30
  include Aws::Structure
31
31
  end
32
32
 
33
- # **\[Snapshot policies only\]** Specifies information about the archive
34
- # storage tier retention period.
33
+ # **\[Custom snapshot policies only\]** Specifies information about the
34
+ # archive storage tier retention period.
35
35
  #
36
36
  # @!attribute [rw] retention_archive_tier
37
37
  # Information about retention period in the Amazon EBS Snapshots
@@ -51,8 +51,8 @@ module Aws::DLM
51
51
  include Aws::Structure
52
52
  end
53
53
 
54
- # **\[Snapshot policies only\]** Specifies a snapshot archiving rule for
55
- # a schedule.
54
+ # **\[Custom snapshot policies only\]** Specifies a snapshot archiving
55
+ # rule for a schedule.
56
56
  #
57
57
  # @!attribute [rw] retain_rule
58
58
  # Information about the retention period for the snapshot archiving
@@ -78,17 +78,103 @@ module Aws::DLM
78
78
  # @return [String]
79
79
  #
80
80
  # @!attribute [rw] state
81
- # The desired activation state of the lifecycle policy after creation.
81
+ # The activation state of the lifecycle policy after creation.
82
82
  # @return [String]
83
83
  #
84
84
  # @!attribute [rw] policy_details
85
85
  # The configuration details of the lifecycle policy.
86
+ #
87
+ # If you create a default policy, you can specify the request
88
+ # parameters either in the request body, or in the PolicyDetails
89
+ # request structure, but not both.
86
90
  # @return [Types::PolicyDetails]
87
91
  #
88
92
  # @!attribute [rw] tags
89
93
  # The tags to apply to the lifecycle policy during creation.
90
94
  # @return [Hash<String,String>]
91
95
  #
96
+ # @!attribute [rw] default_policy
97
+ # **\[Default policies only\]** Specify the type of default policy to
98
+ # create.
99
+ #
100
+ # * To create a default policy for EBS snapshots, that creates
101
+ # snapshots of all volumes in the Region that do not have recent
102
+ # backups, specify `VOLUME`.
103
+ #
104
+ # * To create a default policy for EBS-backed AMIs, that creates
105
+ # EBS-backed AMIs from all instances in the Region that do not have
106
+ # recent backups, specify `INSTANCE`.
107
+ # @return [String]
108
+ #
109
+ # @!attribute [rw] create_interval
110
+ # **\[Default policies only\]** Specifies how often the policy should
111
+ # run and create snapshots or AMIs. The creation frequency can range
112
+ # from 1 to 7 days. If you do not specify a value, the default is 1.
113
+ #
114
+ # Default: 1
115
+ # @return [Integer]
116
+ #
117
+ # @!attribute [rw] retain_interval
118
+ # **\[Default policies only\]** Specifies how long the policy should
119
+ # retain snapshots or AMIs before deleting them. The retention period
120
+ # can range from 2 to 14 days, but it must be greater than the
121
+ # creation frequency to ensure that the policy retains at least 1
122
+ # snapshot or AMI at any given time. If you do not specify a value,
123
+ # the default is 7.
124
+ #
125
+ # Default: 7
126
+ # @return [Integer]
127
+ #
128
+ # @!attribute [rw] copy_tags
129
+ # **\[Default policies only\]** Indicates whether the policy should
130
+ # copy tags from the source resource to the snapshot or AMI. If you do
131
+ # not specify a value, the default is `false`.
132
+ #
133
+ # Default: false
134
+ # @return [Boolean]
135
+ #
136
+ # @!attribute [rw] extend_deletion
137
+ # **\[Default policies only\]** Defines the snapshot or AMI retention
138
+ # behavior for the policy if the source volume or instance is deleted,
139
+ # or if the policy enters the error, disabled, or deleted state.
140
+ #
141
+ # By default (**ExtendDeletion=false**):
142
+ #
143
+ # * If a source resource is deleted, Amazon Data Lifecycle Manager
144
+ # will continue to delete previously created snapshots or AMIs, up
145
+ # to but not including the last one, based on the specified
146
+ # retention period. If you want Amazon Data Lifecycle Manager to
147
+ # delete all snapshots or AMIs, including the last one, specify
148
+ # `true`.
149
+ #
150
+ # * If a policy enters the error, disabled, or deleted state, Amazon
151
+ # Data Lifecycle Manager stops deleting snapshots and AMIs. If you
152
+ # want Amazon Data Lifecycle Manager to continue deleting snapshots
153
+ # or AMIs, including the last one, if the policy enters one of these
154
+ # states, specify `true`.
155
+ #
156
+ # If you enable extended deletion (**ExtendDeletion=true**), you
157
+ # override both default behaviors simultaneously.
158
+ #
159
+ # If you do not specify a value, the default is `false`.
160
+ #
161
+ # Default: false
162
+ # @return [Boolean]
163
+ #
164
+ # @!attribute [rw] cross_region_copy_targets
165
+ # **\[Default policies only\]** Specifies destination Regions for
166
+ # snapshot or AMI copies. You can specify up to 3 destination Regions.
167
+ # If you do not want to create cross-Region copies, omit this
168
+ # parameter.
169
+ # @return [Array<Types::CrossRegionCopyTarget>]
170
+ #
171
+ # @!attribute [rw] exclusions
172
+ # **\[Default policies only\]** Specifies exclusion parameters for
173
+ # volumes or instances for which you do not want to create snapshots
174
+ # or AMIs. The policy will not create snapshots or AMIs for target
175
+ # resources that match any of the specified exclusion parameters.
176
+ # @return [Types::Exclusions]
177
+ #
92
178
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/CreateLifecyclePolicyRequest AWS API Documentation
93
179
  #
94
180
  class CreateLifecyclePolicyRequest < Struct.new(
@@ -96,7 +182,14 @@ module Aws::DLM
96
182
  :description,
97
183
  :state,
98
184
  :policy_details,
99
- :tags)
185
+ :tags,
186
+ :default_policy,
187
+ :create_interval,
188
+ :retain_interval,
189
+ :copy_tags,
190
+ :extend_deletion,
191
+ :cross_region_copy_targets,
192
+ :exclusions)
100
193
  SENSITIVE = []
101
194
  include Aws::Structure
102
195
  end
@@ -113,8 +206,8 @@ module Aws::DLM
113
206
  include Aws::Structure
114
207
  end
115
208
 
116
- # **\[Snapshot and AMI policies only\]** Specifies when the policy
117
- # should create snapshots or AMIs.
209
+ # **\[Custom snapshot and AMI policies only\]** Specifies when the
210
+ # policy should create snapshots or AMIs.
118
211
  #
119
212
  # <note markdown="1"> * You must specify either **CronExpression**, or **Interval**,
120
213
  # **IntervalUnit**, and **Times**.
@@ -129,7 +222,7 @@ module Aws::DLM
129
222
  # [1]: https://docs.aws.amazon.com/dlm/latest/APIReference/API_ArchiveRule.html
130
223
  #
131
224
  # @!attribute [rw] location
132
- # **\[Snapshot policies only\]** Specifies the destination for
225
+ # **\[Custom snapshot policies only\]** Specifies the destination for
133
226
  # snapshots created by the policy. To create snapshots in the same
134
227
  # Region as the source resource, specify `CLOUD`. To create snapshots
135
228
  # on the same Outpost as the source resource, specify `OUTPOST_LOCAL`.
@@ -171,11 +264,12 @@ module Aws::DLM
171
264
  # @return [String]
172
265
  #
173
266
  # @!attribute [rw] scripts
174
- # **\[Snapshot policies that target instances only\]** Specifies pre
175
- # and/or post scripts for a snapshot lifecycle policy that targets
176
- # instances. This is useful for creating application-consistent
177
- # snapshots, or for performing specific administrative tasks before or
178
- # after Amazon Data Lifecycle Manager initiates snapshot creation.
267
+ # **\[Custom snapshot policies that target instances only\]**
268
+ # Specifies pre and/or post scripts for a snapshot lifecycle policy
269
+ # that targets instances. This is useful for creating
270
+ # application-consistent snapshots, or for performing specific
271
+ # administrative tasks before or after Amazon Data Lifecycle Manager
272
+ # initiates snapshot creation.
179
273
  #
180
274
  # For more information, see [Automating application-consistent
181
275
  # snapshots with pre and post scripts][1].
@@ -235,7 +329,7 @@ module Aws::DLM
235
329
  include Aws::Structure
236
330
  end
237
331
 
238
- # **\[AMI policies only\]** Specifies an AMI deprecation rule for
332
+ # **\[Custom AMI policies only\]** Specifies an AMI deprecation rule for
239
333
  # cross-Region AMI copies created by an AMI policy.
240
334
  #
241
335
  # @!attribute [rw] interval
@@ -286,8 +380,8 @@ module Aws::DLM
286
380
  include Aws::Structure
287
381
  end
288
382
 
289
- # **\[Snapshot and AMI policies only\]** Specifies a cross-Region copy
290
- # rule for a snapshot and AMI policies.
383
+ # **\[Custom snapshot and AMI policies only\]** Specifies a cross-Region
384
+ # copy rule for a snapshot and AMI policies.
291
385
  #
292
386
  # <note markdown="1"> To specify a cross-Region copy action for event-based polices, use
293
387
  # [CrossRegionCopyAction][1].
@@ -308,8 +402,8 @@ module Aws::DLM
308
402
  #
309
403
  # </note>
310
404
  #
311
- # **\[AMI policies only\]** The target Region or the Amazon Resource
312
- # Name (ARN) of the target Outpost for the snapshot copies.
405
+ # **\[Custom AMI policies only\]** The target Region or the Amazon
406
+ # Resource Name (ARN) of the target Outpost for the snapshot copies.
313
407
  # @return [String]
314
408
  #
315
409
  # @!attribute [rw] target
@@ -318,8 +412,9 @@ module Aws::DLM
318
412
  #
319
413
  # </note>
320
414
  #
321
- # **\[Snapshot policies only\]** The target Region or the Amazon
322
- # Resource Name (ARN) of the target Outpost for the snapshot copies.
415
+ # **\[Custom snapshot policies only\]** The target Region or the
416
+ # Amazon Resource Name (ARN) of the target Outpost for the snapshot
417
+ # copies.
323
418
  # @return [String]
324
419
  #
325
420
  # @!attribute [rw] encrypted
@@ -346,8 +441,8 @@ module Aws::DLM
346
441
  # @return [Types::CrossRegionCopyRetainRule]
347
442
  #
348
443
  # @!attribute [rw] deprecate_rule
349
- # **\[AMI policies only\]** The AMI deprecation rule for cross-Region
350
- # AMI copies created by the rule.
444
+ # **\[Custom AMI policies only\]** The AMI deprecation rule for
445
+ # cross-Region AMI copies created by the rule.
351
446
  # @return [Types::CrossRegionCopyDeprecateRule]
352
447
  #
353
448
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/CrossRegionCopyRule AWS API Documentation
@@ -364,6 +459,21 @@ module Aws::DLM
364
459
  include Aws::Structure
365
460
  end
366
461
 
462
+ # **\[Default policies only\]** Specifies a destination Region for
463
+ # cross-Region copy actions.
464
+ #
465
+ # @!attribute [rw] target_region
466
+ # The target Region, for example `us-east-1`.
467
+ # @return [String]
468
+ #
469
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/CrossRegionCopyTarget AWS API Documentation
470
+ #
471
+ class CrossRegionCopyTarget < Struct.new(
472
+ :target_region)
473
+ SENSITIVE = []
474
+ include Aws::Structure
475
+ end
476
+
367
477
  # @!attribute [rw] policy_id
368
478
  # The identifier of the lifecycle policy.
369
479
  # @return [String]
@@ -380,8 +490,8 @@ module Aws::DLM
380
490
  #
381
491
  class DeleteLifecyclePolicyResponse < Aws::EmptyStructure; end
382
492
 
383
- # **\[AMI policies only\]** Specifies an AMI deprecation rule for AMIs
384
- # created by an AMI lifecycle policy.
493
+ # **\[Custom AMI policies only\]** Specifies an AMI deprecation rule for
494
+ # AMIs created by an AMI lifecycle policy.
385
495
  #
386
496
  # For age-based schedules, you must specify **Interval** and
387
497
  # **IntervalUnit**. For count-based schedules, you must specify
@@ -499,9 +609,43 @@ module Aws::DLM
499
609
  include Aws::Structure
500
610
  end
501
611
 
502
- # **\[Snapshot policies only\]** Specifies a rule for enabling fast
503
- # snapshot restore for snapshots created by snapshot policies. You can
504
- # enable fast snapshot restore based on either a count or a time
612
+ # **\[Default policies only\]** Specifies exclusion parameters for
613
+ # volumes or instances for which you do not want to create snapshots or
614
+ # AMIs. The policy will not create snapshots or AMIs for target
615
+ # resources that match any of the specified exclusion parameters.
616
+ #
617
+ # @!attribute [rw] exclude_boot_volumes
618
+ # **\[Default policies for EBS snapshots only\]** Indicates whether to
619
+ # exclude volumes that are attached to instances as the boot volume.
620
+ # If you exclude boot volumes, only volumes attached as data
621
+ # (non-boot) volumes will be backed up by the policy. To exclude boot
622
+ # volumes, specify `true`.
623
+ # @return [Boolean]
624
+ #
625
+ # @!attribute [rw] exclude_volume_types
626
+ # **\[Default policies for EBS snapshots only\]** Specifies the volume
627
+ # types to exclude. Volumes of the specified types will not be
628
+ # targeted by the policy.
629
+ # @return [Array<String>]
630
+ #
631
+ # @!attribute [rw] exclude_tags
632
+ # **\[Default policies for EBS-backed AMIs only\]** Specifies whether
633
+ # to exclude volumes that have specific tags.
634
+ # @return [Array<Types::Tag>]
635
+ #
636
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/Exclusions AWS API Documentation
637
+ #
638
+ class Exclusions < Struct.new(
639
+ :exclude_boot_volumes,
640
+ :exclude_volume_types,
641
+ :exclude_tags)
642
+ SENSITIVE = []
643
+ include Aws::Structure
644
+ end
645
+
646
+ # **\[Custom snapshot policies only\]** Specifies a rule for enabling
647
+ # fast snapshot restore for snapshots created by snapshot policies. You
648
+ # can enable fast snapshot restore based on either a count or a time
505
649
  # interval.
506
650
  #
507
651
  # @!attribute [rw] count
@@ -560,6 +704,17 @@ module Aws::DLM
560
704
  # Services-added lifecycle tags.
561
705
  # @return [Array<String>]
562
706
  #
707
+ # @!attribute [rw] default_policy_type
708
+ # **\[Default policies only\]** Specifies the type of default policy
709
+ # to get. Specify one of the following:
710
+ #
711
+ # * `VOLUME` - To get only the default policy for EBS snapshots
712
+ #
713
+ # * `INSTANCE` - To get only the default policy for EBS-backed AMIs
714
+ #
715
+ # * `ALL` - To get all default policies
716
+ # @return [String]
717
+ #
563
718
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/GetLifecyclePoliciesRequest AWS API Documentation
564
719
  #
565
720
  class GetLifecyclePoliciesRequest < Struct.new(
@@ -567,7 +722,8 @@ module Aws::DLM
567
722
  :state,
568
723
  :resource_types,
569
724
  :target_tags,
570
- :tags_to_add)
725
+ :tags_to_add,
726
+ :default_policy_type)
571
727
  SENSITIVE = []
572
728
  include Aws::Structure
573
729
  end
@@ -653,8 +809,8 @@ module Aws::DLM
653
809
  include Aws::Structure
654
810
  end
655
811
 
656
- # **\[All policy types\]** Detailed information about a snapshot, AMI,
657
- # or event-based lifecycle policy.
812
+ # **\[Custom policies only\]** Detailed information about a snapshot,
813
+ # AMI, or event-based lifecycle policy.
658
814
  #
659
815
  # @!attribute [rw] policy_id
660
816
  # The identifier of the lifecycle policy.
@@ -697,6 +853,15 @@ module Aws::DLM
697
853
  # The Amazon Resource Name (ARN) of the policy.
698
854
  # @return [String]
699
855
  #
856
+ # @!attribute [rw] default_policy
857
+ # **\[Default policies only\]** The type of default policy. Values
858
+ # include:
859
+ #
860
+ # * `VOLUME` - Default policy for EBS snapshots
861
+ #
862
+ # * `INSTANCE` - Default policy for EBS-backed AMIs
863
+ # @return [Boolean]
864
+ #
700
865
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/LifecyclePolicy AWS API Documentation
701
866
  #
702
867
  class LifecyclePolicy < Struct.new(
@@ -709,7 +874,8 @@ module Aws::DLM
709
874
  :date_modified,
710
875
  :policy_details,
711
876
  :tags,
712
- :policy_arn)
877
+ :policy_arn,
878
+ :default_policy)
713
879
  SENSITIVE = []
714
880
  include Aws::Structure
715
881
  end
@@ -741,6 +907,15 @@ module Aws::DLM
741
907
  # shared with your account.
742
908
  # @return [String]
743
909
  #
910
+ # @!attribute [rw] default_policy
911
+ # **\[Default policies only\]** The type of default policy. Values
912
+ # include:
913
+ #
914
+ # * `VOLUME` - Default policy for EBS snapshots
915
+ #
916
+ # * `INSTANCE` - Default policy for EBS-backed AMIs
917
+ # @return [Boolean]
918
+ #
744
919
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/LifecyclePolicySummary AWS API Documentation
745
920
  #
746
921
  class LifecyclePolicySummary < Struct.new(
@@ -748,7 +923,8 @@ module Aws::DLM
748
923
  :description,
749
924
  :state,
750
925
  :tags,
751
- :policy_type)
926
+ :policy_type,
927
+ :default_policy)
752
928
  SENSITIVE = []
753
929
  include Aws::Structure
754
930
  end
@@ -799,9 +975,9 @@ module Aws::DLM
799
975
  include Aws::Structure
800
976
  end
801
977
 
802
- # **\[Snapshot and AMI policies only\]** Specifies optional parameters
803
- # for snapshot and AMI policies. The set of valid parameters depends on
804
- # the combination of policy type and target resource type.
978
+ # **\[Custom snapshot and AMI policies only\]** Specifies optional
979
+ # parameters for snapshot and AMI policies. The set of valid parameters
980
+ # depends on the combination of policy type and target resource type.
805
981
  #
806
982
  # If you choose to exclude boot volumes and you specify tags that
807
983
  # consequently exclude all of the additional data volumes attached to an
@@ -815,25 +991,25 @@ module Aws::DLM
815
991
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitor-dlm-cw-metrics.html
816
992
  #
817
993
  # @!attribute [rw] exclude_boot_volume
818
- # **\[Snapshot policies that target instances only\]** Indicates
819
- # whether to exclude the root volume from multi-volume snapshot sets.
820
- # The default is `false`. If you specify `true`, then the root volumes
821
- # attached to targeted instances will be excluded from the
822
- # multi-volume snapshot sets created by the policy.
994
+ # **\[Custom snapshot policies that target instances only\]**
995
+ # Indicates whether to exclude the root volume from multi-volume
996
+ # snapshot sets. The default is `false`. If you specify `true`, then
997
+ # the root volumes attached to targeted instances will be excluded
998
+ # from the multi-volume snapshot sets created by the policy.
823
999
  # @return [Boolean]
824
1000
  #
825
1001
  # @!attribute [rw] no_reboot
826
- # **\[AMI policies only\]** Indicates whether targeted instances are
827
- # rebooted when the lifecycle policy runs. `true` indicates that
828
- # targeted instances are not rebooted when the policy runs. `false`
829
- # indicates that target instances are rebooted when the policy runs.
830
- # The default is `true` (instances are not rebooted).
1002
+ # **\[Custom AMI policies only\]** Indicates whether targeted
1003
+ # instances are rebooted when the lifecycle policy runs. `true`
1004
+ # indicates that targeted instances are not rebooted when the policy
1005
+ # runs. `false` indicates that target instances are rebooted when the
1006
+ # policy runs. The default is `true` (instances are not rebooted).
831
1007
  # @return [Boolean]
832
1008
  #
833
1009
  # @!attribute [rw] exclude_data_volume_tags
834
- # **\[Snapshot policies that target instances only\]** The tags used
835
- # to identify data (non-root) volumes to exclude from multi-volume
836
- # snapshot sets.
1010
+ # **\[Custom snapshot policies that target instances only\]** The tags
1011
+ # used to identify data (non-root) volumes to exclude from
1012
+ # multi-volume snapshot sets.
837
1013
  #
838
1014
  # If you create a snapshot lifecycle policy that targets instances and
839
1015
  # you specify tags for this parameter, then data volumes with the
@@ -851,33 +1027,33 @@ module Aws::DLM
851
1027
  include Aws::Structure
852
1028
  end
853
1029
 
854
- # **\[All policy types\]** Specifies the configuration of a lifecycle
855
- # policy.
1030
+ # Specifies the configuration of a lifecycle policy.
856
1031
  #
857
1032
  # @!attribute [rw] policy_type
858
- # **\[All policy types\]** The valid target resource types and actions
859
- # a policy can manage. Specify `EBS_SNAPSHOT_MANAGEMENT` to create a
860
- # lifecycle policy that manages the lifecycle of Amazon EBS snapshots.
861
- # Specify `IMAGE_MANAGEMENT` to create a lifecycle policy that manages
862
- # the lifecycle of EBS-backed AMIs. Specify `EVENT_BASED_POLICY ` to
863
- # create an event-based policy that performs specific actions when a
864
- # defined event occurs in your Amazon Web Services account.
1033
+ # **\[Custom policies only\]** The valid target resource types and
1034
+ # actions a policy can manage. Specify `EBS_SNAPSHOT_MANAGEMENT` to
1035
+ # create a lifecycle policy that manages the lifecycle of Amazon EBS
1036
+ # snapshots. Specify `IMAGE_MANAGEMENT` to create a lifecycle policy
1037
+ # that manages the lifecycle of EBS-backed AMIs. Specify
1038
+ # `EVENT_BASED_POLICY ` to create an event-based policy that performs
1039
+ # specific actions when a defined event occurs in your Amazon Web
1040
+ # Services account.
865
1041
  #
866
1042
  # The default is `EBS_SNAPSHOT_MANAGEMENT`.
867
1043
  # @return [String]
868
1044
  #
869
1045
  # @!attribute [rw] resource_types
870
- # **\[Snapshot policies only\]** The target resource type for snapshot
871
- # and AMI lifecycle policies. Use `VOLUME `to create snapshots of
872
- # individual volumes or use `INSTANCE` to create multi-volume
873
- # snapshots from the volumes for an instance.
1046
+ # **\[Custom snapshot policies only\]** The target resource type for
1047
+ # snapshot and AMI lifecycle policies. Use `VOLUME `to create
1048
+ # snapshots of individual volumes or use `INSTANCE` to create
1049
+ # multi-volume snapshots from the volumes for an instance.
874
1050
  # @return [Array<String>]
875
1051
  #
876
1052
  # @!attribute [rw] resource_locations
877
- # **\[Snapshot and AMI policies only\]** The location of the resources
878
- # to backup. If the source resources are located in an Amazon Web
879
- # Services Region, specify `CLOUD`. If the source resources are
880
- # located on an Outpost in your account, specify `OUTPOST`.
1053
+ # **\[Custom snapshot and AMI policies only\]** The location of the
1054
+ # resources to backup. If the source resources are located in an
1055
+ # Amazon Web Services Region, specify `CLOUD`. If the source resources
1056
+ # are located on an Outpost in your account, specify `OUTPOST`.
881
1057
  #
882
1058
  # If you specify `OUTPOST`, Amazon Data Lifecycle Manager backs up all
883
1059
  # resources of the specified type with matching target tags across all
@@ -885,20 +1061,20 @@ module Aws::DLM
885
1061
  # @return [Array<String>]
886
1062
  #
887
1063
  # @!attribute [rw] target_tags
888
- # **\[Snapshot and AMI policies only\]** The single tag that
1064
+ # **\[Custom snapshot and AMI policies only\]** The single tag that
889
1065
  # identifies targeted resources for this policy.
890
1066
  # @return [Array<Types::Tag>]
891
1067
  #
892
1068
  # @!attribute [rw] schedules
893
- # **\[Snapshot and AMI policies only\]** The schedules of
1069
+ # **\[Custom snapshot and AMI policies only\]** The schedules of
894
1070
  # policy-defined actions for snapshot and AMI lifecycle policies. A
895
1071
  # policy can have up to four schedules—one mandatory schedule and up
896
1072
  # to three optional schedules.
897
1073
  # @return [Array<Types::Schedule>]
898
1074
  #
899
1075
  # @!attribute [rw] parameters
900
- # **\[Snapshot and AMI policies only\]** A set of optional parameters
901
- # for snapshot and AMI lifecycle policies.
1076
+ # **\[Custom snapshot and AMI policies only\]** A set of optional
1077
+ # parameters for snapshot and AMI lifecycle policies.
902
1078
  #
903
1079
  # <note markdown="1"> If you are modifying a policy that was created or previously
904
1080
  # modified using the Amazon Data Lifecycle Manager console, then you
@@ -920,6 +1096,96 @@ module Aws::DLM
920
1096
  # per policy.
921
1097
  # @return [Array<Types::Action>]
922
1098
  #
1099
+ # @!attribute [rw] policy_language
1100
+ # The type of policy to create. Specify one of the following:
1101
+ #
1102
+ # * `SIMPLIFIED` To create a default policy.
1103
+ #
1104
+ # * `STANDARD` To create a custom policy.
1105
+ # @return [String]
1106
+ #
1107
+ # @!attribute [rw] resource_type
1108
+ # **\[Default policies only\]** Specify the type of default policy to
1109
+ # create.
1110
+ #
1111
+ # * To create a default policy for EBS snapshots, that creates
1112
+ # snapshots of all volumes in the Region that do not have recent
1113
+ # backups, specify `VOLUME`.
1114
+ #
1115
+ # * To create a default policy for EBS-backed AMIs, that creates
1116
+ # EBS-backed AMIs from all instances in the Region that do not have
1117
+ # recent backups, specify `INSTANCE`.
1118
+ # @return [String]
1119
+ #
1120
+ # @!attribute [rw] create_interval
1121
+ # **\[Default policies only\]** Specifies how often the policy should
1122
+ # run and create snapshots or AMIs. The creation frequency can range
1123
+ # from 1 to 7 days. If you do not specify a value, the default is 1.
1124
+ #
1125
+ # Default: 1
1126
+ # @return [Integer]
1127
+ #
1128
+ # @!attribute [rw] retain_interval
1129
+ # **\[Default policies only\]** Specifies how long the policy should
1130
+ # retain snapshots or AMIs before deleting them. The retention period
1131
+ # can range from 2 to 14 days, but it must be greater than the
1132
+ # creation frequency to ensure that the policy retains at least 1
1133
+ # snapshot or AMI at any given time. If you do not specify a value,
1134
+ # the default is 7.
1135
+ #
1136
+ # Default: 7
1137
+ # @return [Integer]
1138
+ #
1139
+ # @!attribute [rw] copy_tags
1140
+ # **\[Default policies only\]** Indicates whether the policy should
1141
+ # copy tags from the source resource to the snapshot or AMI. If you do
1142
+ # not specify a value, the default is `false`.
1143
+ #
1144
+ # Default: false
1145
+ # @return [Boolean]
1146
+ #
1147
+ # @!attribute [rw] cross_region_copy_targets
1148
+ # **\[Default policies only\]** Specifies destination Regions for
1149
+ # snapshot or AMI copies. You can specify up to 3 destination Regions.
1150
+ # If you do not want to create cross-Region copies, omit this
1151
+ # parameter.
1152
+ # @return [Array<Types::CrossRegionCopyTarget>]
1153
+ #
1154
+ # @!attribute [rw] extend_deletion
1155
+ # **\[Default policies only\]** Defines the snapshot or AMI retention
1156
+ # behavior for the policy if the source volume or instance is deleted,
1157
+ # or if the policy enters the error, disabled, or deleted state.
1158
+ #
1159
+ # By default (**ExtendDeletion=false**):
1160
+ #
1161
+ # * If a source resource is deleted, Amazon Data Lifecycle Manager
1162
+ # will continue to delete previously created snapshots or AMIs, up
1163
+ # to but not including the last one, based on the specified
1164
+ # retention period. If you want Amazon Data Lifecycle Manager to
1165
+ # delete all snapshots or AMIs, including the last one, specify
1166
+ # `true`.
1167
+ #
1168
+ # * If a policy enters the error, disabled, or deleted state, Amazon
1169
+ # Data Lifecycle Manager stops deleting snapshots and AMIs. If you
1170
+ # want Amazon Data Lifecycle Manager to continue deleting snapshots
1171
+ # or AMIs, including the last one, if the policy enters one of these
1172
+ # states, specify `true`.
1173
+ #
1174
+ # If you enable extended deletion (**ExtendDeletion=true**), you
1175
+ # override both default behaviors simultaneously.
1176
+ #
1177
+ # If you do not specify a value, the default is `false`.
1178
+ #
1179
+ # Default: false
1180
+ # @return [Boolean]
1181
+ #
1182
+ # @!attribute [rw] exclusions
1183
+ # **\[Default policies only\]** Specifies exclusion parameters for
1184
+ # volumes or instances for which you do not want to create snapshots
1185
+ # or AMIs. The policy will not create snapshots or AMIs for target
1186
+ # resources that match any of the specified exclusion parameters.
1187
+ # @return [Types::Exclusions]
1188
+ #
923
1189
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/PolicyDetails AWS API Documentation
924
1190
  #
925
1191
  class PolicyDetails < Struct.new(
@@ -930,7 +1196,15 @@ module Aws::DLM
930
1196
  :schedules,
931
1197
  :parameters,
932
1198
  :event_source,
933
- :actions)
1199
+ :actions,
1200
+ :policy_language,
1201
+ :resource_type,
1202
+ :create_interval,
1203
+ :retain_interval,
1204
+ :copy_tags,
1205
+ :cross_region_copy_targets,
1206
+ :extend_deletion,
1207
+ :exclusions)
934
1208
  SENSITIVE = []
935
1209
  include Aws::Structure
936
1210
  end
@@ -962,9 +1236,9 @@ module Aws::DLM
962
1236
  include Aws::Structure
963
1237
  end
964
1238
 
965
- # **\[Snapshot and AMI policies only\]** Specifies a retention rule for
966
- # snapshots created by snapshot policies, or for AMIs created by AMI
967
- # policies.
1239
+ # **\[Custom snapshot and AMI policies only\]** Specifies a retention
1240
+ # rule for snapshots created by snapshot policies, or for AMIs created
1241
+ # by AMI policies.
968
1242
  #
969
1243
  # <note markdown="1"> For snapshot policies that have an [ArchiveRule][1], this retention
970
1244
  # rule applies to standard tier retention. When the retention threshold
@@ -1040,7 +1314,7 @@ module Aws::DLM
1040
1314
  include Aws::Structure
1041
1315
  end
1042
1316
 
1043
- # **\[Snapshot policies only\]** Describes the retention rule for
1317
+ # **\[Custom snapshot policies only\]** Describes the retention rule for
1044
1318
  # archived snapshots. Once the archive retention threshold is met, the
1045
1319
  # snapshots are permanently deleted from the archive tier.
1046
1320
  #
@@ -1091,8 +1365,8 @@ module Aws::DLM
1091
1365
  include Aws::Structure
1092
1366
  end
1093
1367
 
1094
- # **\[Snapshot and AMI policies only\]** Specifies a schedule for a
1095
- # snapshot or AMI lifecycle policy.
1368
+ # **\[Custom snapshot and AMI policies only\]** Specifies a schedule for
1369
+ # a snapshot or AMI lifecycle policy.
1096
1370
  #
1097
1371
  # @!attribute [rw] name
1098
1372
  # The name of the schedule.
@@ -1127,8 +1401,8 @@ module Aws::DLM
1127
1401
  # @return [Types::RetainRule]
1128
1402
  #
1129
1403
  # @!attribute [rw] fast_restore_rule
1130
- # **\[Snapshot policies only\]** The rule for enabling fast snapshot
1131
- # restore.
1404
+ # **\[Custom snapshot policies only\]** The rule for enabling fast
1405
+ # snapshot restore.
1132
1406
  # @return [Types::FastRestoreRule]
1133
1407
  #
1134
1408
  # @!attribute [rw] cross_region_copy_rules
@@ -1143,20 +1417,21 @@ module Aws::DLM
1143
1417
  # @return [Array<Types::CrossRegionCopyRule>]
1144
1418
  #
1145
1419
  # @!attribute [rw] share_rules
1146
- # **\[Snapshot policies only\]** The rule for sharing snapshots with
1147
- # other Amazon Web Services accounts.
1420
+ # **\[Custom snapshot policies only\]** The rule for sharing snapshots
1421
+ # with other Amazon Web Services accounts.
1148
1422
  # @return [Array<Types::ShareRule>]
1149
1423
  #
1150
1424
  # @!attribute [rw] deprecate_rule
1151
- # **\[AMI policies only\]** The AMI deprecation rule for the schedule.
1425
+ # **\[Custom AMI policies only\]** The AMI deprecation rule for the
1426
+ # schedule.
1152
1427
  # @return [Types::DeprecateRule]
1153
1428
  #
1154
1429
  # @!attribute [rw] archive_rule
1155
- # **\[Snapshot policies that target volumes only\]** The snapshot
1156
- # archiving rule for the schedule. When you specify an archiving rule,
1157
- # snapshots are automatically moved from the standard tier to the
1158
- # archive tier once the schedule's retention threshold is met.
1159
- # Snapshots are then retained in the archive tier for the archive
1430
+ # **\[Custom snapshot policies that target volumes only\]** The
1431
+ # snapshot archiving rule for the schedule. When you specify an
1432
+ # archiving rule, snapshots are automatically moved from the standard
1433
+ # tier to the archive tier once the schedule's retention threshold is
1434
+ # met. Snapshots are then retained in the archive tier for the archive
1160
1435
  # retention period that you specify.
1161
1436
  #
1162
1437
  # For more information about using snapshot archiving, see
@@ -1185,9 +1460,9 @@ module Aws::DLM
1185
1460
  include Aws::Structure
1186
1461
  end
1187
1462
 
1188
- # **\[Snapshot policies that target instances only\]** Information about
1189
- # pre and/or post scripts for a snapshot lifecycle policy that targets
1190
- # instances. For more information, see [ Automating
1463
+ # **\[Custom snapshot policies that target instances only\]**
1464
+ # Information about pre and/or post scripts for a snapshot lifecycle
1465
+ # policy that targets instances. For more information, see [ Automating
1191
1466
  # application-consistent snapshots with pre and post scripts][1].
1192
1467
  #
1193
1468
  #
@@ -1222,7 +1497,8 @@ module Aws::DLM
1222
1497
  # @!attribute [rw] execution_handler_service
1223
1498
  # Indicates the service used to execute the pre and/or post scripts.
1224
1499
  #
1225
- # * If you are using custom SSM documents, specify
1500
+ # * If you are using custom SSM documents or automating
1501
+ # application-consistent snapshots of SAP HANA workloads, specify
1226
1502
  # `AWS_SYSTEMS_MANAGER`.
1227
1503
  #
1228
1504
  # * If you are automating VSS Backups, omit this parameter.
@@ -1237,6 +1513,10 @@ module Aws::DLM
1237
1513
  # this case, Amazon Data Lifecycle Manager automatically uses the
1238
1514
  # `AWSEC2-CreateVssSnapshot` SSM document.
1239
1515
  #
1516
+ # * If you are automating application-consistent snapshots for SAP
1517
+ # HANA workloads, specify
1518
+ # `AWSSystemsManagerSAP-CreateDLMSnapshotForSAPHANA`.
1519
+ #
1240
1520
  # * If you are using a custom SSM document that you own, specify
1241
1521
  # either the name or ARN of the SSM document. If you are using a
1242
1522
  # custom SSM document that is shared with you, specify the ARN of
@@ -1302,8 +1582,8 @@ module Aws::DLM
1302
1582
  include Aws::Structure
1303
1583
  end
1304
1584
 
1305
- # **\[Snapshot policies only\]** Specifies a rule for sharing snapshots
1306
- # across Amazon Web Services accounts.
1585
+ # **\[Custom snapshot policies only\]** Specifies a rule for sharing
1586
+ # snapshots across Amazon Web Services accounts.
1307
1587
  #
1308
1588
  # @!attribute [rw] target_accounts
1309
1589
  # The IDs of the Amazon Web Services accounts with which to share the
@@ -1412,6 +1692,65 @@ module Aws::DLM
1412
1692
  # policy type or the resource type.
1413
1693
  # @return [Types::PolicyDetails]
1414
1694
  #
1695
+ # @!attribute [rw] create_interval
1696
+ # **\[Default policies only\]** Specifies how often the policy should
1697
+ # run and create snapshots or AMIs. The creation frequency can range
1698
+ # from 1 to 7 days.
1699
+ # @return [Integer]
1700
+ #
1701
+ # @!attribute [rw] retain_interval
1702
+ # **\[Default policies only\]** Specifies how long the policy should
1703
+ # retain snapshots or AMIs before deleting them. The retention period
1704
+ # can range from 2 to 14 days, but it must be greater than the
1705
+ # creation frequency to ensure that the policy retains at least 1
1706
+ # snapshot or AMI at any given time.
1707
+ # @return [Integer]
1708
+ #
1709
+ # @!attribute [rw] copy_tags
1710
+ # **\[Default policies only\]** Indicates whether the policy should
1711
+ # copy tags from the source resource to the snapshot or AMI.
1712
+ # @return [Boolean]
1713
+ #
1714
+ # @!attribute [rw] extend_deletion
1715
+ # **\[Default policies only\]** Defines the snapshot or AMI retention
1716
+ # behavior for the policy if the source volume or instance is deleted,
1717
+ # or if the policy enters the error, disabled, or deleted state.
1718
+ #
1719
+ # By default (**ExtendDeletion=false**):
1720
+ #
1721
+ # * If a source resource is deleted, Amazon Data Lifecycle Manager
1722
+ # will continue to delete previously created snapshots or AMIs, up
1723
+ # to but not including the last one, based on the specified
1724
+ # retention period. If you want Amazon Data Lifecycle Manager to
1725
+ # delete all snapshots or AMIs, including the last one, specify
1726
+ # `true`.
1727
+ #
1728
+ # * If a policy enters the error, disabled, or deleted state, Amazon
1729
+ # Data Lifecycle Manager stops deleting snapshots and AMIs. If you
1730
+ # want Amazon Data Lifecycle Manager to continue deleting snapshots
1731
+ # or AMIs, including the last one, if the policy enters one of these
1732
+ # states, specify `true`.
1733
+ #
1734
+ # If you enable extended deletion (**ExtendDeletion=true**), you
1735
+ # override both default behaviors simultaneously.
1736
+ #
1737
+ # Default: false
1738
+ # @return [Boolean]
1739
+ #
1740
+ # @!attribute [rw] cross_region_copy_targets
1741
+ # **\[Default policies only\]** Specifies destination Regions for
1742
+ # snapshot or AMI copies. You can specify up to 3 destination Regions.
1743
+ # If you do not want to create cross-Region copies, omit this
1744
+ # parameter.
1745
+ # @return [Array<Types::CrossRegionCopyTarget>]
1746
+ #
1747
+ # @!attribute [rw] exclusions
1748
+ # **\[Default policies only\]** Specifies exclusion parameters for
1749
+ # volumes or instances for which you do not want to create snapshots
1750
+ # or AMIs. The policy will not create snapshots or AMIs for target
1751
+ # resources that match any of the specified exclusion parameters.
1752
+ # @return [Types::Exclusions]
1753
+ #
1415
1754
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/UpdateLifecyclePolicyRequest AWS API Documentation
1416
1755
  #
1417
1756
  class UpdateLifecyclePolicyRequest < Struct.new(
@@ -1419,7 +1758,13 @@ module Aws::DLM
1419
1758
  :execution_role_arn,
1420
1759
  :state,
1421
1760
  :description,
1422
- :policy_details)
1761
+ :policy_details,
1762
+ :create_interval,
1763
+ :retain_interval,
1764
+ :copy_tags,
1765
+ :extend_deletion,
1766
+ :cross_region_copy_targets,
1767
+ :exclusions)
1423
1768
  SENSITIVE = []
1424
1769
  include Aws::Structure
1425
1770
  end