aws-sdk-dlm 1.50.0 → 1.52.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 30c98b07dec6c0e3bf73a97485d9e1dd58651c0d3ba52a6f55ce7f6603435356
4
- data.tar.gz: c68fc0997dcd6868f05534cec7c911f6dccf841ab7f0a789eb3e9553bedf9a45
3
+ metadata.gz: e3b97ce83c98e75db8602e18cd75e8e4bb66dad9c9f9901675bb9cad2bd706d1
4
+ data.tar.gz: dec512bd9776a088471cf5a9e9ee1a293400c52512070033fa376133e242a3c9
5
5
  SHA512:
6
- metadata.gz: 3632b531628fedf2251a84cf67aedd4ce3f919e1cf74468194d62dd2f46092d954d11ee9a957ed0011b709f23ce52cf5c76ee12719569055fa1bfc831fb19e6c
7
- data.tar.gz: 2ca1cb776358ff514459782b70472241155c9e318de909e120b24f5f4e2af5d7410b8d20536ddf03cf40223fc7948ab133b0f28278b2cc77c68e6560823b1db2
6
+ metadata.gz: 36e7a9a15c235e48cc6bc982ffe7091d408fb37125fedf8567d6af1eb468c6b3b604464bc36ad1935c0dc84a9cca65bba138c247391b889540c0dd2bab8b27eb
7
+ data.tar.gz: 96fab2034acfe67a667cfdcba7682e0341870c7c6b91d123867acec702a8f39aa91f055b3cc0657ce43a189601a9cae18cb4cceb48e678a7ebcd7c8845aadfce
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.52.0 (2022-09-30)
5
+ ------------------
6
+
7
+ * Feature - This release adds support for archival of single-volume snapshots created by Amazon Data Lifecycle Manager policies
8
+
9
+ 1.51.0 (2022-08-10)
10
+ ------------------
11
+
12
+ * Feature - This release adds support for excluding specific data (non-boot) volumes from multi-volume snapshot sets created by snapshot lifecycle policies
13
+
4
14
  1.50.0 (2022-02-24)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.50.0
1
+ 1.52.0
@@ -454,11 +454,26 @@ module Aws::DLM
454
454
  # interval: 1,
455
455
  # interval_unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
456
456
  # },
457
+ # archive_rule: {
458
+ # retain_rule: { # required
459
+ # retention_archive_tier: { # required
460
+ # count: 1,
461
+ # interval: 1,
462
+ # interval_unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
463
+ # },
464
+ # },
465
+ # },
457
466
  # },
458
467
  # ],
459
468
  # parameters: {
460
469
  # exclude_boot_volume: false,
461
470
  # no_reboot: false,
471
+ # exclude_data_volume_tags: [
472
+ # {
473
+ # key: "String", # required
474
+ # value: "String", # required
475
+ # },
476
+ # ],
462
477
  # },
463
478
  # event_source: {
464
479
  # type: "MANAGED_CWE", # required, accepts MANAGED_CWE
@@ -508,6 +523,13 @@ module Aws::DLM
508
523
  # Deletes the specified lifecycle policy and halts the automated
509
524
  # operations that the policy specified.
510
525
  #
526
+ # For more information about deleting a policy, see [Delete lifecycle
527
+ # policies][1].
528
+ #
529
+ #
530
+ #
531
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/view-modify-delete.html#delete
532
+ #
511
533
  # @option params [required, String] :policy_id
512
534
  # The identifier of the lifecycle policy.
513
535
  #
@@ -661,8 +683,14 @@ module Aws::DLM
661
683
  # resp.policy.policy_details.schedules[0].deprecate_rule.count #=> Integer
662
684
  # resp.policy.policy_details.schedules[0].deprecate_rule.interval #=> Integer
663
685
  # resp.policy.policy_details.schedules[0].deprecate_rule.interval_unit #=> String, one of "DAYS", "WEEKS", "MONTHS", "YEARS"
686
+ # resp.policy.policy_details.schedules[0].archive_rule.retain_rule.retention_archive_tier.count #=> Integer
687
+ # resp.policy.policy_details.schedules[0].archive_rule.retain_rule.retention_archive_tier.interval #=> Integer
688
+ # resp.policy.policy_details.schedules[0].archive_rule.retain_rule.retention_archive_tier.interval_unit #=> String, one of "DAYS", "WEEKS", "MONTHS", "YEARS"
664
689
  # resp.policy.policy_details.parameters.exclude_boot_volume #=> Boolean
665
690
  # resp.policy.policy_details.parameters.no_reboot #=> Boolean
691
+ # resp.policy.policy_details.parameters.exclude_data_volume_tags #=> Array
692
+ # resp.policy.policy_details.parameters.exclude_data_volume_tags[0].key #=> String
693
+ # resp.policy.policy_details.parameters.exclude_data_volume_tags[0].value #=> String
666
694
  # resp.policy.policy_details.event_source.type #=> String, one of "MANAGED_CWE"
667
695
  # resp.policy.policy_details.event_source.parameters.event_type #=> String, one of "shareSnapshot"
668
696
  # resp.policy.policy_details.event_source.parameters.snapshot_owner #=> Array
@@ -774,6 +802,13 @@ module Aws::DLM
774
802
 
775
803
  # Updates the specified lifecycle policy.
776
804
  #
805
+ # For more information about updating a policy, see [Modify lifecycle
806
+ # policies][1].
807
+ #
808
+ #
809
+ #
810
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/view-modify-delete.html#modify
811
+ #
777
812
  # @option params [required, String] :policy_id
778
813
  # The identifier of the lifecycle policy.
779
814
  #
@@ -873,11 +908,26 @@ module Aws::DLM
873
908
  # interval: 1,
874
909
  # interval_unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
875
910
  # },
911
+ # archive_rule: {
912
+ # retain_rule: { # required
913
+ # retention_archive_tier: { # required
914
+ # count: 1,
915
+ # interval: 1,
916
+ # interval_unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
917
+ # },
918
+ # },
919
+ # },
876
920
  # },
877
921
  # ],
878
922
  # parameters: {
879
923
  # exclude_boot_volume: false,
880
924
  # no_reboot: false,
925
+ # exclude_data_volume_tags: [
926
+ # {
927
+ # key: "String", # required
928
+ # value: "String", # required
929
+ # },
930
+ # ],
881
931
  # },
882
932
  # event_source: {
883
933
  # type: "MANAGED_CWE", # required, accepts MANAGED_CWE
@@ -930,7 +980,7 @@ module Aws::DLM
930
980
  params: params,
931
981
  config: config)
932
982
  context[:gem_name] = 'aws-sdk-dlm'
933
- context[:gem_version] = '1.50.0'
983
+ context[:gem_version] = '1.52.0'
934
984
  Seahorse::Client::Request.new(handlers, context)
935
985
  end
936
986
 
@@ -16,6 +16,8 @@ module Aws::DLM
16
16
  Action = Shapes::StructureShape.new(name: 'Action')
17
17
  ActionList = Shapes::ListShape.new(name: 'ActionList')
18
18
  ActionName = Shapes::StringShape.new(name: 'ActionName')
19
+ ArchiveRetainRule = Shapes::StructureShape.new(name: 'ArchiveRetainRule')
20
+ ArchiveRule = Shapes::StructureShape.new(name: 'ArchiveRule')
19
21
  AvailabilityZone = Shapes::StringShape.new(name: 'AvailabilityZone')
20
22
  AvailabilityZoneList = Shapes::ListShape.new(name: 'AvailabilityZoneList')
21
23
  AwsAccountId = Shapes::StringShape.new(name: 'AwsAccountId')
@@ -46,6 +48,7 @@ module Aws::DLM
46
48
  EventSourceValues = Shapes::StringShape.new(name: 'EventSourceValues')
47
49
  EventTypeValues = Shapes::StringShape.new(name: 'EventTypeValues')
48
50
  ExcludeBootVolume = Shapes::BooleanShape.new(name: 'ExcludeBootVolume')
51
+ ExcludeDataVolumeTagList = Shapes::ListShape.new(name: 'ExcludeDataVolumeTagList')
49
52
  ExecutionRoleArn = Shapes::StringShape.new(name: 'ExecutionRoleArn')
50
53
  FastRestoreRule = Shapes::StructureShape.new(name: 'FastRestoreRule')
51
54
  GetLifecyclePoliciesRequest = Shapes::StructureShape.new(name: 'GetLifecyclePoliciesRequest')
@@ -80,6 +83,7 @@ module Aws::DLM
80
83
  ResourceTypeValues = Shapes::StringShape.new(name: 'ResourceTypeValues')
81
84
  ResourceTypeValuesList = Shapes::ListShape.new(name: 'ResourceTypeValuesList')
82
85
  RetainRule = Shapes::StructureShape.new(name: 'RetainRule')
86
+ RetentionArchiveTier = Shapes::StructureShape.new(name: 'RetentionArchiveTier')
83
87
  RetentionIntervalUnitValues = Shapes::StringShape.new(name: 'RetentionIntervalUnitValues')
84
88
  Schedule = Shapes::StructureShape.new(name: 'Schedule')
85
89
  ScheduleList = Shapes::ListShape.new(name: 'ScheduleList')
@@ -89,6 +93,8 @@ module Aws::DLM
89
93
  ShareRules = Shapes::ListShape.new(name: 'ShareRules')
90
94
  ShareTargetAccountList = Shapes::ListShape.new(name: 'ShareTargetAccountList')
91
95
  SnapshotOwnerList = Shapes::ListShape.new(name: 'SnapshotOwnerList')
96
+ StandardTierRetainRuleCount = Shapes::IntegerShape.new(name: 'StandardTierRetainRuleCount')
97
+ StandardTierRetainRuleInterval = Shapes::IntegerShape.new(name: 'StandardTierRetainRuleInterval')
92
98
  StatusMessage = Shapes::StringShape.new(name: 'StatusMessage')
93
99
  String = Shapes::StringShape.new(name: 'String')
94
100
  Tag = Shapes::StructureShape.new(name: 'Tag')
@@ -120,6 +126,12 @@ module Aws::DLM
120
126
 
121
127
  ActionList.member = Shapes::ShapeRef.new(shape: Action)
122
128
 
129
+ ArchiveRetainRule.add_member(:retention_archive_tier, Shapes::ShapeRef.new(shape: RetentionArchiveTier, required: true, location_name: "RetentionArchiveTier"))
130
+ ArchiveRetainRule.struct_class = Types::ArchiveRetainRule
131
+
132
+ ArchiveRule.add_member(:retain_rule, Shapes::ShapeRef.new(shape: ArchiveRetainRule, required: true, location_name: "RetainRule"))
133
+ ArchiveRule.struct_class = Types::ArchiveRule
134
+
123
135
  AvailabilityZoneList.member = Shapes::ShapeRef.new(shape: AvailabilityZone)
124
136
 
125
137
  CreateLifecyclePolicyRequest.add_member(:execution_role_arn, Shapes::ShapeRef.new(shape: ExecutionRoleArn, required: true, location_name: "ExecutionRoleArn"))
@@ -188,6 +200,8 @@ module Aws::DLM
188
200
  EventSource.add_member(:parameters, Shapes::ShapeRef.new(shape: EventParameters, location_name: "Parameters"))
189
201
  EventSource.struct_class = Types::EventSource
190
202
 
203
+ ExcludeDataVolumeTagList.member = Shapes::ShapeRef.new(shape: Tag)
204
+
191
205
  FastRestoreRule.add_member(:count, Shapes::ShapeRef.new(shape: Count, location_name: "Count"))
192
206
  FastRestoreRule.add_member(:interval, Shapes::ShapeRef.new(shape: Interval, location_name: "Interval"))
193
207
  FastRestoreRule.add_member(:interval_unit, Shapes::ShapeRef.new(shape: RetentionIntervalUnitValues, location_name: "IntervalUnit"))
@@ -256,6 +270,7 @@ module Aws::DLM
256
270
 
257
271
  Parameters.add_member(:exclude_boot_volume, Shapes::ShapeRef.new(shape: ExcludeBootVolume, location_name: "ExcludeBootVolume"))
258
272
  Parameters.add_member(:no_reboot, Shapes::ShapeRef.new(shape: NoReboot, location_name: "NoReboot"))
273
+ Parameters.add_member(:exclude_data_volume_tags, Shapes::ShapeRef.new(shape: ExcludeDataVolumeTagList, location_name: "ExcludeDataVolumeTags"))
259
274
  Parameters.struct_class = Types::Parameters
260
275
 
261
276
  PolicyDetails.add_member(:policy_type, Shapes::ShapeRef.new(shape: PolicyTypeValues, location_name: "PolicyType"))
@@ -280,11 +295,16 @@ module Aws::DLM
280
295
 
281
296
  ResourceTypeValuesList.member = Shapes::ShapeRef.new(shape: ResourceTypeValues)
282
297
 
283
- RetainRule.add_member(:count, Shapes::ShapeRef.new(shape: Count, location_name: "Count"))
284
- RetainRule.add_member(:interval, Shapes::ShapeRef.new(shape: Interval, location_name: "Interval"))
298
+ RetainRule.add_member(:count, Shapes::ShapeRef.new(shape: StandardTierRetainRuleCount, location_name: "Count"))
299
+ RetainRule.add_member(:interval, Shapes::ShapeRef.new(shape: StandardTierRetainRuleInterval, location_name: "Interval"))
285
300
  RetainRule.add_member(:interval_unit, Shapes::ShapeRef.new(shape: RetentionIntervalUnitValues, location_name: "IntervalUnit"))
286
301
  RetainRule.struct_class = Types::RetainRule
287
302
 
303
+ RetentionArchiveTier.add_member(:count, Shapes::ShapeRef.new(shape: Count, location_name: "Count"))
304
+ RetentionArchiveTier.add_member(:interval, Shapes::ShapeRef.new(shape: Interval, location_name: "Interval"))
305
+ RetentionArchiveTier.add_member(:interval_unit, Shapes::ShapeRef.new(shape: RetentionIntervalUnitValues, location_name: "IntervalUnit"))
306
+ RetentionArchiveTier.struct_class = Types::RetentionArchiveTier
307
+
288
308
  Schedule.add_member(:name, Shapes::ShapeRef.new(shape: ScheduleName, location_name: "Name"))
289
309
  Schedule.add_member(:copy_tags, Shapes::ShapeRef.new(shape: CopyTags, location_name: "CopyTags"))
290
310
  Schedule.add_member(:tags_to_add, Shapes::ShapeRef.new(shape: TagsToAddList, location_name: "TagsToAdd"))
@@ -295,6 +315,7 @@ module Aws::DLM
295
315
  Schedule.add_member(:cross_region_copy_rules, Shapes::ShapeRef.new(shape: CrossRegionCopyRules, location_name: "CrossRegionCopyRules"))
296
316
  Schedule.add_member(:share_rules, Shapes::ShapeRef.new(shape: ShareRules, location_name: "ShareRules"))
297
317
  Schedule.add_member(:deprecate_rule, Shapes::ShapeRef.new(shape: DeprecateRule, location_name: "DeprecateRule"))
318
+ Schedule.add_member(:archive_rule, Shapes::ShapeRef.new(shape: ArchiveRule, location_name: "ArchiveRule"))
298
319
  Schedule.struct_class = Types::Schedule
299
320
 
300
321
  ScheduleList.member = Shapes::ShapeRef.new(shape: Schedule)
@@ -10,7 +10,8 @@
10
10
  module Aws::DLM
11
11
  module Types
12
12
 
13
- # Specifies an action for an event-based policy.
13
+ # **\[Event-based policies only\]** Specifies an action for an
14
+ # event-based policy.
14
15
  #
15
16
  # @note When making an API call, you may pass Action
16
17
  # data as a hash:
@@ -49,6 +50,67 @@ module Aws::DLM
49
50
  include Aws::Structure
50
51
  end
51
52
 
53
+ # **\[Snapshot policies only\]** Specifies information about the archive
54
+ # storage tier retention period.
55
+ #
56
+ # @note When making an API call, you may pass ArchiveRetainRule
57
+ # data as a hash:
58
+ #
59
+ # {
60
+ # retention_archive_tier: { # required
61
+ # count: 1,
62
+ # interval: 1,
63
+ # interval_unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
64
+ # },
65
+ # }
66
+ #
67
+ # @!attribute [rw] retention_archive_tier
68
+ # Information about retention period in the Amazon EBS Snapshots
69
+ # Archive. For more information, see [Archive Amazon EBS
70
+ # snapshots][1].
71
+ #
72
+ #
73
+ #
74
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/snapshot-archive.html
75
+ # @return [Types::RetentionArchiveTier]
76
+ #
77
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/ArchiveRetainRule AWS API Documentation
78
+ #
79
+ class ArchiveRetainRule < Struct.new(
80
+ :retention_archive_tier)
81
+ SENSITIVE = []
82
+ include Aws::Structure
83
+ end
84
+
85
+ # **\[Snapshot policies only\]** Specifies a snapshot archiving rule for
86
+ # a schedule.
87
+ #
88
+ # @note When making an API call, you may pass ArchiveRule
89
+ # data as a hash:
90
+ #
91
+ # {
92
+ # retain_rule: { # required
93
+ # retention_archive_tier: { # required
94
+ # count: 1,
95
+ # interval: 1,
96
+ # interval_unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
97
+ # },
98
+ # },
99
+ # }
100
+ #
101
+ # @!attribute [rw] retain_rule
102
+ # Information about the retention period for the snapshot archiving
103
+ # rule.
104
+ # @return [Types::ArchiveRetainRule]
105
+ #
106
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/ArchiveRule AWS API Documentation
107
+ #
108
+ class ArchiveRule < Struct.new(
109
+ :retain_rule)
110
+ SENSITIVE = []
111
+ include Aws::Structure
112
+ end
113
+
52
114
  # @note When making an API call, you may pass CreateLifecyclePolicyRequest
53
115
  # data as a hash:
54
116
  #
@@ -129,11 +191,26 @@ module Aws::DLM
129
191
  # interval: 1,
130
192
  # interval_unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
131
193
  # },
194
+ # archive_rule: {
195
+ # retain_rule: { # required
196
+ # retention_archive_tier: { # required
197
+ # count: 1,
198
+ # interval: 1,
199
+ # interval_unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
200
+ # },
201
+ # },
202
+ # },
132
203
  # },
133
204
  # ],
134
205
  # parameters: {
135
206
  # exclude_boot_volume: false,
136
207
  # no_reboot: false,
208
+ # exclude_data_volume_tags: [
209
+ # {
210
+ # key: "String", # required
211
+ # value: "String", # required
212
+ # },
213
+ # ],
137
214
  # },
138
215
  # event_source: {
139
216
  # type: "MANAGED_CWE", # required, accepts MANAGED_CWE
@@ -213,10 +290,16 @@ module Aws::DLM
213
290
  include Aws::Structure
214
291
  end
215
292
 
216
- # Specifies when to create snapshots of EBS volumes.
293
+ # **\[Snapshot and AMI policies only\]** Specifies when the policy
294
+ # should create snapshots or AMIs.
295
+ #
296
+ # <note markdown="1"> * You must specify either **CronExpression**, or **Interval**,
297
+ # **IntervalUnit**, and **Times**.
217
298
  #
218
- # You must specify either a Cron expression or an interval, interval
219
- # unit, and start time. You cannot specify both.
299
+ # * If you need to specify an ArchiveRule for the schedule, then you
300
+ # must specify a creation frequency of at least 28 days.
301
+ #
302
+ # </note>
220
303
  #
221
304
  # @note When making an API call, you may pass CreateRule
222
305
  # data as a hash:
@@ -230,19 +313,17 @@ module Aws::DLM
230
313
  # }
231
314
  #
232
315
  # @!attribute [rw] location
233
- # Specifies the destination for snapshots created by the policy. To
234
- # create snapshots in the same Region as the source resource, specify
235
- # `CLOUD`. To create snapshots on the same Outpost as the source
236
- # resource, specify `OUTPOST_LOCAL`. If you omit this parameter,
237
- # `CLOUD` is used by default.
316
+ # **\[Snapshot policies only\]** Specifies the destination for
317
+ # snapshots created by the policy. To create snapshots in the same
318
+ # Region as the source resource, specify `CLOUD`. To create snapshots
319
+ # on the same Outpost as the source resource, specify `OUTPOST_LOCAL`.
320
+ # If you omit this parameter, `CLOUD` is used by default.
238
321
  #
239
322
  # If the policy targets resources in an Amazon Web Services Region,
240
323
  # then you must create snapshots in the same Region as the source
241
- # resource.
242
- #
243
- # If the policy targets resources on an Outpost, then you can create
244
- # snapshots on the same Outpost as the source resource, or in the
245
- # Region of that Outpost.
324
+ # resource. If the policy targets resources on an Outpost, then you
325
+ # can create snapshots on the same Outpost as the source resource, or
326
+ # in the Region of that Outpost.
246
327
  # @return [String]
247
328
  #
248
329
  # @!attribute [rw] interval
@@ -259,8 +340,8 @@ module Aws::DLM
259
340
  # hh:mm.
260
341
  #
261
342
  # The operation occurs within a one-hour window following the
262
- # specified time. If you do not specify a time, Amazon DLM selects a
263
- # time within the next 24 hours.
343
+ # specified time. If you do not specify a time, Amazon Data Lifecycle
344
+ # Manager selects a time within the next 24 hours.
264
345
  # @return [Array<String>]
265
346
  #
266
347
  # @!attribute [rw] cron_expression
@@ -285,7 +366,13 @@ module Aws::DLM
285
366
  include Aws::Structure
286
367
  end
287
368
 
288
- # Specifies a rule for copying shared snapshots across Regions.
369
+ # **\[Event-based policies only\]** Specifies a cross-Region copy action
370
+ # for event-based policies.
371
+ #
372
+ # <note markdown="1"> To specify a cross-Region copy rule for snapshot and AMI policies, use
373
+ # CrossRegionCopyRule.
374
+ #
375
+ # </note>
289
376
  #
290
377
  # @note When making an API call, you may pass CrossRegionCopyAction
291
378
  # data as a hash:
@@ -311,7 +398,10 @@ module Aws::DLM
311
398
  # @return [Types::EncryptionConfiguration]
312
399
  #
313
400
  # @!attribute [rw] retain_rule
314
- # Specifies the retention rule for cross-Region snapshot copies.
401
+ # Specifies a retention rule for cross-Region snapshot copies created
402
+ # by snapshot or event-based policies, or cross-Region AMI copies
403
+ # created by AMI policies. After the retention period expires, the
404
+ # cross-Region copy is deleted.
315
405
  # @return [Types::CrossRegionCopyRetainRule]
316
406
  #
317
407
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/CrossRegionCopyAction AWS API Documentation
@@ -324,8 +414,8 @@ module Aws::DLM
324
414
  include Aws::Structure
325
415
  end
326
416
 
327
- # Specifies an AMI deprecation rule for cross-Region AMI copies created
328
- # by a cross-Region copy rule.
417
+ # **\[AMI policies only\]** Specifies an AMI deprecation rule for
418
+ # cross-Region AMI copies created by an AMI policy.
329
419
  #
330
420
  # @note When making an API call, you may pass CrossRegionCopyDeprecateRule
331
421
  # data as a hash:
@@ -343,7 +433,9 @@ module Aws::DLM
343
433
  # @return [Integer]
344
434
  #
345
435
  # @!attribute [rw] interval_unit
346
- # The unit of time in which to measure the **Interval**.
436
+ # The unit of time in which to measure the **Interval**. For example,
437
+ # to deprecate a cross-Region AMI copy after 3 months, specify
438
+ # `Interval=3` and `IntervalUnit=MONTHS`.
347
439
  # @return [String]
348
440
  #
349
441
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/CrossRegionCopyDeprecateRule AWS API Documentation
@@ -355,7 +447,10 @@ module Aws::DLM
355
447
  include Aws::Structure
356
448
  end
357
449
 
358
- # Specifies the retention rule for cross-Region snapshot copies.
450
+ # Specifies a retention rule for cross-Region snapshot copies created by
451
+ # snapshot or event-based policies, or cross-Region AMI copies created
452
+ # by AMI policies. After the retention period expires, the cross-Region
453
+ # copy is deleted.
359
454
  #
360
455
  # @note When making an API call, you may pass CrossRegionCopyRetainRule
361
456
  # data as a hash:
@@ -366,12 +461,15 @@ module Aws::DLM
366
461
  # }
367
462
  #
368
463
  # @!attribute [rw] interval
369
- # The amount of time to retain each snapshot. The maximum is 100
370
- # years. This is equivalent to 1200 months, 5200 weeks, or 36500 days.
464
+ # The amount of time to retain a cross-Region snapshot or AMI copy.
465
+ # The maximum is 100 years. This is equivalent to 1200 months, 5200
466
+ # weeks, or 36500 days.
371
467
  # @return [Integer]
372
468
  #
373
469
  # @!attribute [rw] interval_unit
374
- # The unit of time for time-based retention.
470
+ # The unit of time for time-based retention. For example, to retain a
471
+ # cross-Region copy for 3 months, specify `Interval=3` and
472
+ # `IntervalUnit=MONTHS`.
375
473
  # @return [String]
376
474
  #
377
475
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/CrossRegionCopyRetainRule AWS API Documentation
@@ -383,7 +481,13 @@ module Aws::DLM
383
481
  include Aws::Structure
384
482
  end
385
483
 
386
- # Specifies a rule for cross-Region snapshot copies.
484
+ # **\[Snapshot and AMI policies only\]** Specifies a cross-Region copy
485
+ # rule for snapshot and AMI policies.
486
+ #
487
+ # <note markdown="1"> To specify a cross-Region copy action for event-based polices, use
488
+ # CrossRegionCopyAction.
489
+ #
490
+ # </note>
387
491
  #
388
492
  # @note When making an API call, you may pass CrossRegionCopyRule
389
493
  # data as a hash:
@@ -405,12 +509,14 @@ module Aws::DLM
405
509
  # }
406
510
  #
407
511
  # @!attribute [rw] target_region
408
- # Avoid using this parameter when creating new policies. Instead, use
512
+ # <note markdown="1"> Avoid using this parameter when creating new policies. Instead, use
409
513
  # **Target** to specify a target Region or a target Outpost for
410
514
  # snapshot copies.
411
515
  #
412
- # For policies created before the **Target** parameter was introduced,
516
+ # For policies created before the **Target** parameter was introduced,
413
517
  # this parameter indicates the target Region for snapshot copies.
518
+ #
519
+ # </note>
414
520
  # @return [String]
415
521
  #
416
522
  # @!attribute [rw] target
@@ -435,17 +541,17 @@ module Aws::DLM
435
541
  #
436
542
  # @!attribute [rw] copy_tags
437
543
  # Indicates whether to copy all user-defined tags from the source
438
- # snapshot to the cross-Region snapshot copy.
544
+ # snapshot or AMI to the cross-Region copy.
439
545
  # @return [Boolean]
440
546
  #
441
547
  # @!attribute [rw] retain_rule
442
- # The retention rule that indicates how long snapshot copies are to be
443
- # retained in the destination Region.
548
+ # The retention rule that indicates how long the cross-Region snapshot
549
+ # or AMI copies are to be retained in the destination Region.
444
550
  # @return [Types::CrossRegionCopyRetainRule]
445
551
  #
446
552
  # @!attribute [rw] deprecate_rule
447
- # The AMI deprecation rule for cross-Region AMI copies created by the
448
- # rule.
553
+ # **\[AMI policies only\]** The AMI deprecation rule for cross-Region
554
+ # AMI copies created by the rule.
449
555
  # @return [Types::CrossRegionCopyDeprecateRule]
450
556
  #
451
557
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/CrossRegionCopyRule AWS API Documentation
@@ -485,7 +591,12 @@ module Aws::DLM
485
591
  #
486
592
  class DeleteLifecyclePolicyResponse < Aws::EmptyStructure; end
487
593
 
488
- # Specifies an AMI deprecation rule for a schedule.
594
+ # **\[AMI policies only\]** Specifies an AMI deprecation rule for AMIs
595
+ # created by an AMI lifecycle policy.
596
+ #
597
+ # For age-based schedules, you must specify **Interval** and
598
+ # **IntervalUnit**. For count-based schedules, you must specify
599
+ # **Count**.
489
600
  #
490
601
  # @note When making an API call, you may pass DeprecateRule
491
602
  # data as a hash:
@@ -525,8 +636,8 @@ module Aws::DLM
525
636
  include Aws::Structure
526
637
  end
527
638
 
528
- # Specifies the encryption settings for shared snapshots that are copied
529
- # across Regions.
639
+ # **\[Event-based policies only\]** Specifies the encryption settings
640
+ # for cross-Region snapshot copies created by event-based policies.
530
641
  #
531
642
  # @note When making an API call, you may pass EncryptionConfiguration
532
643
  # data as a hash:
@@ -558,7 +669,8 @@ module Aws::DLM
558
669
  include Aws::Structure
559
670
  end
560
671
 
561
- # Specifies an event that triggers an event-based policy.
672
+ # **\[Event-based policies only\]** Specifies an event that activates an
673
+ # event-based policy.
562
674
  #
563
675
  # @note When making an API call, you may pass EventParameters
564
676
  # data as a hash:
@@ -603,7 +715,8 @@ module Aws::DLM
603
715
  include Aws::Structure
604
716
  end
605
717
 
606
- # Specifies an event that triggers an event-based policy.
718
+ # **\[Event-based policies only\]** Specifies an event that activates an
719
+ # event-based policy.
607
720
  #
608
721
  # @note When making an API call, you may pass EventSource
609
722
  # data as a hash:
@@ -635,8 +748,10 @@ module Aws::DLM
635
748
  include Aws::Structure
636
749
  end
637
750
 
638
- # Specifies a rule for enabling fast snapshot restore. You can enable
639
- # fast snapshot restore based on either a count or a time interval.
751
+ # **\[Snapshot policies only\]** Specifies a rule for enabling fast
752
+ # snapshot restore for snapshots created by snapshot policies. You can
753
+ # enable fast snapshot restore based on either a count or a time
754
+ # interval.
640
755
  #
641
756
  # @note When making an API call, you may pass FastRestoreRule
642
757
  # data as a hash:
@@ -815,7 +930,8 @@ module Aws::DLM
815
930
  include Aws::Structure
816
931
  end
817
932
 
818
- # Detailed information about a lifecycle policy.
933
+ # **\[All policy types\]** Detailed information about a snapshot, AMI,
934
+ # or event-based lifecycle policy.
819
935
  #
820
936
  # @!attribute [rw] policy_id
821
937
  # The identifier of the lifecycle policy.
@@ -897,7 +1013,9 @@ module Aws::DLM
897
1013
  # The type of policy. `EBS_SNAPSHOT_MANAGEMENT` indicates that the
898
1014
  # policy manages the lifecycle of Amazon EBS snapshots.
899
1015
  # `IMAGE_MANAGEMENT` indicates that the policy manages the lifecycle
900
- # of EBS-backed AMIs.
1016
+ # of EBS-backed AMIs. `EVENT_BASED_POLICY` indicates that the policy
1017
+ # automates cross-account snapshot copies for snapshots that are
1018
+ # shared with your account.
901
1019
  # @return [String]
902
1020
  #
903
1021
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/LifecyclePolicySummary AWS API Documentation
@@ -965,9 +1083,20 @@ module Aws::DLM
965
1083
  include Aws::Structure
966
1084
  end
967
1085
 
968
- # Specifies optional parameters to add to a policy. The set of valid
969
- # parameters depends on the combination of policy type and resource
970
- # type.
1086
+ # **\[Snapshot and AMI policies only\]** Specifies optional parameters
1087
+ # for snapshot and AMI policies. The set of valid parameters depends on
1088
+ # the combination of policy type and target resource type.
1089
+ #
1090
+ # If you choose to exclude boot volumes and you specify tags that
1091
+ # consequently exclude all of the additional data volumes attached to an
1092
+ # instance, then Amazon Data Lifecycle Manager will not create any
1093
+ # snapshots for the affected instance, and it will emit a
1094
+ # `SnapshotsCreateFailed` Amazon CloudWatch metric. For more
1095
+ # information, see [Monitor your policies using Amazon CloudWatch][1].
1096
+ #
1097
+ #
1098
+ #
1099
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitor-dlm-cw-metrics.html
971
1100
  #
972
1101
  # @note When making an API call, you may pass Parameters
973
1102
  # data as a hash:
@@ -975,36 +1104,53 @@ module Aws::DLM
975
1104
  # {
976
1105
  # exclude_boot_volume: false,
977
1106
  # no_reboot: false,
1107
+ # exclude_data_volume_tags: [
1108
+ # {
1109
+ # key: "String", # required
1110
+ # value: "String", # required
1111
+ # },
1112
+ # ],
978
1113
  # }
979
1114
  #
980
1115
  # @!attribute [rw] exclude_boot_volume
981
- # \[EBS Snapshot Management Instance policies only\] Indicates
982
- # whether to exclude the root volume from snapshots created using
983
- # [CreateSnapshots][1]. The default is false.
984
- #
985
- #
986
- #
987
- # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateSnapshots.html
1116
+ # **\[Snapshot policies that target instances only\]** Indicates
1117
+ # whether to exclude the root volume from multi-volume snapshot sets.
1118
+ # The default is `false`. If you specify `true`, then the root volumes
1119
+ # attached to targeted instances will be excluded from the
1120
+ # multi-volume snapshot sets created by the policy.
988
1121
  # @return [Boolean]
989
1122
  #
990
1123
  # @!attribute [rw] no_reboot
991
- # Applies to AMI lifecycle policies only. Indicates whether targeted
992
- # instances are rebooted when the lifecycle policy runs. `true`
993
- # indicates that targeted instances are not rebooted when the policy
994
- # runs. `false` indicates that target instances are rebooted when the
995
- # policy runs. The default is `true` (instances are not rebooted).
1124
+ # **\[AMI policies only\]** Indicates whether targeted instances are
1125
+ # rebooted when the lifecycle policy runs. `true` indicates that
1126
+ # targeted instances are not rebooted when the policy runs. `false`
1127
+ # indicates that target instances are rebooted when the policy runs.
1128
+ # The default is `true` (instances are not rebooted).
996
1129
  # @return [Boolean]
997
1130
  #
1131
+ # @!attribute [rw] exclude_data_volume_tags
1132
+ # **\[Snapshot policies that target instances only\]** The tags used
1133
+ # to identify data (non-root) volumes to exclude from multi-volume
1134
+ # snapshot sets.
1135
+ #
1136
+ # If you create a snapshot lifecycle policy that targets instances and
1137
+ # you specify tags for this parameter, then data volumes with the
1138
+ # specified tags that are attached to targeted instances will be
1139
+ # excluded from the multi-volume snapshot sets created by the policy.
1140
+ # @return [Array<Types::Tag>]
1141
+ #
998
1142
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/Parameters AWS API Documentation
999
1143
  #
1000
1144
  class Parameters < Struct.new(
1001
1145
  :exclude_boot_volume,
1002
- :no_reboot)
1146
+ :no_reboot,
1147
+ :exclude_data_volume_tags)
1003
1148
  SENSITIVE = []
1004
1149
  include Aws::Structure
1005
1150
  end
1006
1151
 
1007
- # Specifies the configuration of a lifecycle policy.
1152
+ # **\[All policy types\]** Specifies the configuration of a lifecycle
1153
+ # policy.
1008
1154
  #
1009
1155
  # @note When making an API call, you may pass PolicyDetails
1010
1156
  # data as a hash:
@@ -1082,11 +1228,26 @@ module Aws::DLM
1082
1228
  # interval: 1,
1083
1229
  # interval_unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
1084
1230
  # },
1231
+ # archive_rule: {
1232
+ # retain_rule: { # required
1233
+ # retention_archive_tier: { # required
1234
+ # count: 1,
1235
+ # interval: 1,
1236
+ # interval_unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
1237
+ # },
1238
+ # },
1239
+ # },
1085
1240
  # },
1086
1241
  # ],
1087
1242
  # parameters: {
1088
1243
  # exclude_boot_volume: false,
1089
1244
  # no_reboot: false,
1245
+ # exclude_data_volume_tags: [
1246
+ # {
1247
+ # key: "String", # required
1248
+ # value: "String", # required
1249
+ # },
1250
+ # ],
1090
1251
  # },
1091
1252
  # event_source: {
1092
1253
  # type: "MANAGED_CWE", # required, accepts MANAGED_CWE
@@ -1117,11 +1278,11 @@ module Aws::DLM
1117
1278
  # }
1118
1279
  #
1119
1280
  # @!attribute [rw] policy_type
1120
- # The valid target resource types and actions a policy can manage.
1121
- # Specify `EBS_SNAPSHOT_MANAGEMENT` to create a lifecycle policy that
1122
- # manages the lifecycle of Amazon EBS snapshots. Specify
1123
- # `IMAGE_MANAGEMENT` to create a lifecycle policy that manages the
1124
- # lifecycle of EBS-backed AMIs. Specify `EVENT_BASED_POLICY ` to
1281
+ # **\[All policy types\]** The valid target resource types and actions
1282
+ # a policy can manage. Specify `EBS_SNAPSHOT_MANAGEMENT` to create a
1283
+ # lifecycle policy that manages the lifecycle of Amazon EBS snapshots.
1284
+ # Specify `IMAGE_MANAGEMENT` to create a lifecycle policy that manages
1285
+ # the lifecycle of EBS-backed AMIs. Specify `EVENT_BASED_POLICY ` to
1125
1286
  # create an event-based policy that performs specific actions when a
1126
1287
  # defined event occurs in your Amazon Web Services account.
1127
1288
  #
@@ -1129,20 +1290,17 @@ module Aws::DLM
1129
1290
  # @return [String]
1130
1291
  #
1131
1292
  # @!attribute [rw] resource_types
1132
- # The target resource type for snapshot and AMI lifecycle policies.
1133
- # Use `VOLUME `to create snapshots of individual volumes or use
1134
- # `INSTANCE` to create multi-volume snapshots from the volumes for an
1135
- # instance.
1136
- #
1137
- # This parameter is required for snapshot and AMI policies only. If
1138
- # you are creating an event-based policy, omit this parameter.
1293
+ # **\[Snapshot policies only\]** The target resource type for snapshot
1294
+ # and AMI lifecycle policies. Use `VOLUME `to create snapshots of
1295
+ # individual volumes or use `INSTANCE` to create multi-volume
1296
+ # snapshots from the volumes for an instance.
1139
1297
  # @return [Array<String>]
1140
1298
  #
1141
1299
  # @!attribute [rw] resource_locations
1142
- # The location of the resources to backup. If the source resources are
1143
- # located in an Amazon Web Services Region, specify `CLOUD`. If the
1144
- # source resources are located on an Outpost in your account, specify
1145
- # `OUTPOST`.
1300
+ # **\[Snapshot and AMI policies only\]** The location of the resources
1301
+ # to backup. If the source resources are located in an Amazon Web
1302
+ # Services Region, specify `CLOUD`. If the source resources are
1303
+ # located on an Outpost in your account, specify `OUTPOST`.
1146
1304
  #
1147
1305
  # If you specify `OUTPOST`, Amazon Data Lifecycle Manager backs up all
1148
1306
  # resources of the specified type with matching target tags across all
@@ -1150,42 +1308,39 @@ module Aws::DLM
1150
1308
  # @return [Array<String>]
1151
1309
  #
1152
1310
  # @!attribute [rw] target_tags
1153
- # The single tag that identifies targeted resources for this policy.
1154
- #
1155
- # This parameter is required for snapshot and AMI policies only. If
1156
- # you are creating an event-based policy, omit this parameter.
1311
+ # **\[Snapshot and AMI policies only\]** The single tag that
1312
+ # identifies targeted resources for this policy.
1157
1313
  # @return [Array<Types::Tag>]
1158
1314
  #
1159
1315
  # @!attribute [rw] schedules
1160
- # The schedules of policy-defined actions for snapshot and AMI
1161
- # lifecycle policies. A policy can have up to four schedules—one
1162
- # mandatory schedule and up to three optional schedules.
1163
- #
1164
- # This parameter is required for snapshot and AMI policies only. If
1165
- # you are creating an event-based policy, omit this parameter.
1316
+ # **\[Snapshot and AMI policies only\]** The schedules of
1317
+ # policy-defined actions for snapshot and AMI lifecycle policies. A
1318
+ # policy can have up to four schedules—one mandatory schedule and up
1319
+ # to three optional schedules.
1166
1320
  # @return [Array<Types::Schedule>]
1167
1321
  #
1168
1322
  # @!attribute [rw] parameters
1169
- # A set of optional parameters for snapshot and AMI lifecycle
1170
- # policies.
1323
+ # **\[Snapshot and AMI policies only\]** A set of optional parameters
1324
+ # for snapshot and AMI lifecycle policies.
1171
1325
  #
1172
- # This parameter is required for snapshot and AMI policies only. If
1173
- # you are creating an event-based policy, omit this parameter.
1326
+ # <note markdown="1"> If you are modifying a policy that was created or previously
1327
+ # modified using the Amazon Data Lifecycle Manager console, then you
1328
+ # must include this parameter and specify either the default values or
1329
+ # the new values that you require. You can't omit this parameter or
1330
+ # set its values to null.
1331
+ #
1332
+ # </note>
1174
1333
  # @return [Types::Parameters]
1175
1334
  #
1176
1335
  # @!attribute [rw] event_source
1177
- # The event that triggers the event-based policy.
1178
- #
1179
- # This parameter is required for event-based policies only. If you are
1180
- # creating a snapshot or AMI policy, omit this parameter.
1336
+ # **\[Event-based policies only\]** The event that activates the
1337
+ # event-based policy.
1181
1338
  # @return [Types::EventSource]
1182
1339
  #
1183
1340
  # @!attribute [rw] actions
1184
- # The actions to be performed when the event-based policy is
1185
- # triggered. You can specify only one action per policy.
1186
- #
1187
- # This parameter is required for event-based policies only. If you are
1188
- # creating a snapshot or AMI policy, omit this parameter.
1341
+ # **\[Event-based policies only\]** The actions to be performed when
1342
+ # the event-based policy is activated. You can specify only one action
1343
+ # per policy.
1189
1344
  # @return [Array<Types::Action>]
1190
1345
  #
1191
1346
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/PolicyDetails AWS API Documentation
@@ -1230,8 +1385,37 @@ module Aws::DLM
1230
1385
  include Aws::Structure
1231
1386
  end
1232
1387
 
1233
- # Specifies the retention rule for a lifecycle policy. You can retain
1234
- # snapshots based on either a count or a time interval.
1388
+ # **\[Snapshot and AMI policies only\]** Specifies a retention rule for
1389
+ # snapshots created by snapshot policies, or for AMIs created by AMI
1390
+ # policies.
1391
+ #
1392
+ # <note markdown="1"> For snapshot policies that have an ArchiveRule, this retention rule
1393
+ # applies to standard tier retention. When the retention threshold is
1394
+ # met, snapshots are moved from the standard to the archive tier.
1395
+ #
1396
+ # For snapshot policies that do not have an **ArchiveRule**, snapshots
1397
+ # are permanently deleted when this retention threshold is met.
1398
+ #
1399
+ # </note>
1400
+ #
1401
+ # You can retain snapshots based on either a count or a time interval.
1402
+ #
1403
+ # * **Count-based retention**
1404
+ #
1405
+ # You must specify **Count**. If you specify an ArchiveRule for the
1406
+ # schedule, then you can specify a retention count of `0` to archive
1407
+ # snapshots immediately after creation. If you specify a
1408
+ # FastRestoreRule, ShareRule, or a CrossRegionCopyRule, then you must
1409
+ # specify a retention count of `1` or more.
1410
+ #
1411
+ # * **Age-based retention**
1412
+ #
1413
+ # You must specify **Interval** and **IntervalUnit**. If you specify
1414
+ # an ArchiveRule for the schedule, then you can specify a retention
1415
+ # interval of `0` days to archive snapshots immediately after
1416
+ # creation. If you specify a FastRestoreRule, ShareRule, or a
1417
+ # CrossRegionCopyRule, then you must specify a retention interval of
1418
+ # `1` day or more.
1235
1419
  #
1236
1420
  # @note When making an API call, you may pass RetainRule
1237
1421
  # data as a hash:
@@ -1244,7 +1428,10 @@ module Aws::DLM
1244
1428
  #
1245
1429
  # @!attribute [rw] count
1246
1430
  # The number of snapshots to retain for each volume, up to a maximum
1247
- # of 1000.
1431
+ # of 1000. For example if you want to retain a maximum of three
1432
+ # snapshots, specify `3`. When the fourth snapshot is created, the
1433
+ # oldest retained snapshot is deleted, or it is moved to the archive
1434
+ # tier if you have specified an ArchiveRule.
1248
1435
  # @return [Integer]
1249
1436
  #
1250
1437
  # @!attribute [rw] interval
@@ -1253,7 +1440,11 @@ module Aws::DLM
1253
1440
  # @return [Integer]
1254
1441
  #
1255
1442
  # @!attribute [rw] interval_unit
1256
- # The unit of time for time-based retention.
1443
+ # The unit of time for time-based retention. For example, to retain
1444
+ # snapshots for 3 months, specify `Interval=3` and
1445
+ # `IntervalUnit=MONTHS`. Once the snapshot has been retained for 3
1446
+ # months, it is deleted, or it is moved to the archive tier if you
1447
+ # have specified an ArchiveRule.
1257
1448
  # @return [String]
1258
1449
  #
1259
1450
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/RetainRule AWS API Documentation
@@ -1266,7 +1457,68 @@ module Aws::DLM
1266
1457
  include Aws::Structure
1267
1458
  end
1268
1459
 
1269
- # Specifies a backup schedule for a snapshot or AMI lifecycle policy.
1460
+ # **\[Snapshot policies only\]** Describes the retention rule for
1461
+ # archived snapshots. Once the archive retention threshold is met, the
1462
+ # snapshots are permanently deleted from the archive tier.
1463
+ #
1464
+ # <note markdown="1"> The archive retention rule must retain snapshots in the archive tier
1465
+ # for a minimum of 90 days.
1466
+ #
1467
+ # </note>
1468
+ #
1469
+ # For **count-based schedules**, you must specify **Count**. For
1470
+ # **age-based schedules**, you must specify **Interval** and <b>
1471
+ # IntervalUnit</b>.
1472
+ #
1473
+ # For more information about using snapshot archiving, see
1474
+ # [Considerations for snapshot lifecycle policies][1].
1475
+ #
1476
+ #
1477
+ #
1478
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshot-ami-policy.html#dlm-archive
1479
+ #
1480
+ # @note When making an API call, you may pass RetentionArchiveTier
1481
+ # data as a hash:
1482
+ #
1483
+ # {
1484
+ # count: 1,
1485
+ # interval: 1,
1486
+ # interval_unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
1487
+ # }
1488
+ #
1489
+ # @!attribute [rw] count
1490
+ # The maximum number of snapshots to retain in the archive storage
1491
+ # tier for each volume. The count must ensure that each snapshot
1492
+ # remains in the archive tier for at least 90 days. For example, if
1493
+ # the schedule creates snapshots every 30 days, you must specify a
1494
+ # count of 3 or more to ensure that each snapshot is archived for at
1495
+ # least 90 days.
1496
+ # @return [Integer]
1497
+ #
1498
+ # @!attribute [rw] interval
1499
+ # Specifies the period of time to retain snapshots in the archive
1500
+ # tier. After this period expires, the snapshot is permanently
1501
+ # deleted.
1502
+ # @return [Integer]
1503
+ #
1504
+ # @!attribute [rw] interval_unit
1505
+ # The unit of time in which to measure the **Interval**. For example,
1506
+ # to retain a snapshots in the archive tier for 6 months, specify
1507
+ # `Interval=6` and `IntervalUnit=MONTHS`.
1508
+ # @return [String]
1509
+ #
1510
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/RetentionArchiveTier AWS API Documentation
1511
+ #
1512
+ class RetentionArchiveTier < Struct.new(
1513
+ :count,
1514
+ :interval,
1515
+ :interval_unit)
1516
+ SENSITIVE = []
1517
+ include Aws::Structure
1518
+ end
1519
+
1520
+ # **\[Snapshot and AMI policies only\]** Specifies a schedule for a
1521
+ # snapshot or AMI lifecycle policy.
1270
1522
  #
1271
1523
  # @note When making an API call, you may pass Schedule
1272
1524
  # data as a hash:
@@ -1333,6 +1585,15 @@ module Aws::DLM
1333
1585
  # interval: 1,
1334
1586
  # interval_unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
1335
1587
  # },
1588
+ # archive_rule: {
1589
+ # retain_rule: { # required
1590
+ # retention_archive_tier: { # required
1591
+ # count: 1,
1592
+ # interval: 1,
1593
+ # interval_unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
1594
+ # },
1595
+ # },
1596
+ # },
1336
1597
  # }
1337
1598
  #
1338
1599
  # @!attribute [rw] name
@@ -1351,11 +1612,12 @@ module Aws::DLM
1351
1612
  # @return [Array<Types::Tag>]
1352
1613
  #
1353
1614
  # @!attribute [rw] variable_tags
1354
- # A collection of key/value pairs with values determined dynamically
1355
- # when the policy is executed. Keys may be any valid Amazon EC2 tag
1356
- # key. Values must be in one of the two following formats:
1357
- # `$(instance-id)` or `$(timestamp)`. Variable tags are only valid for
1358
- # EBS Snapshot Management Instance policies.
1615
+ # **\[AMI policies and snapshot policies that target instances
1616
+ # only\]** A collection of key/value pairs with values determined
1617
+ # dynamically when the policy is executed. Keys may be any valid
1618
+ # Amazon EC2 tag key. Values must be in one of the two following
1619
+ # formats: `$(instance-id)` or `$(timestamp)`. Variable tags are only
1620
+ # valid for EBS Snapshot Management – Instance policies.
1359
1621
  # @return [Array<Types::Tag>]
1360
1622
  #
1361
1623
  # @!attribute [rw] create_rule
@@ -1363,32 +1625,50 @@ module Aws::DLM
1363
1625
  # @return [Types::CreateRule]
1364
1626
  #
1365
1627
  # @!attribute [rw] retain_rule
1366
- # The retention rule.
1628
+ # The retention rule for snapshots or AMIs created by the policy.
1367
1629
  # @return [Types::RetainRule]
1368
1630
  #
1369
1631
  # @!attribute [rw] fast_restore_rule
1370
- # The rule for enabling fast snapshot restore.
1632
+ # **\[Snapshot policies only\]** The rule for enabling fast snapshot
1633
+ # restore.
1371
1634
  # @return [Types::FastRestoreRule]
1372
1635
  #
1373
1636
  # @!attribute [rw] cross_region_copy_rules
1374
- # The rule for cross-Region snapshot copies.
1637
+ # Specifies a rule for copying snapshots or AMIs across regions.
1638
+ #
1639
+ # <note markdown="1"> You can't specify cross-Region copy rules for policies that create
1640
+ # snapshots on an Outpost. If the policy creates snapshots in a
1641
+ # Region, then snapshots can be copied to up to three Regions or
1642
+ # Outposts.
1375
1643
  #
1376
- # You can only specify cross-Region copy rules for policies that
1377
- # create snapshots in a Region. If the policy creates snapshots on an
1378
- # Outpost, then you cannot copy the snapshots to a Region or to an
1379
- # Outpost. If the policy creates snapshots in a Region, then snapshots
1380
- # can be copied to up to three Regions or Outposts.
1644
+ # </note>
1381
1645
  # @return [Array<Types::CrossRegionCopyRule>]
1382
1646
  #
1383
1647
  # @!attribute [rw] share_rules
1384
- # The rule for sharing snapshots with other Amazon Web Services
1385
- # accounts.
1648
+ # **\[Snapshot policies only\]** The rule for sharing snapshots with
1649
+ # other Amazon Web Services accounts.
1386
1650
  # @return [Array<Types::ShareRule>]
1387
1651
  #
1388
1652
  # @!attribute [rw] deprecate_rule
1389
- # The AMI deprecation rule for the schedule.
1653
+ # **\[AMI policies only\]** The AMI deprecation rule for the schedule.
1390
1654
  # @return [Types::DeprecateRule]
1391
1655
  #
1656
+ # @!attribute [rw] archive_rule
1657
+ # **\[Snapshot policies that target volumes only\]** The snapshot
1658
+ # archiving rule for the schedule. When you specify an archiving rule,
1659
+ # snapshots are automatically moved from the standard tier to the
1660
+ # archive tier once the schedule's retention threshold is met.
1661
+ # Snapshots are then retained in the archive tier for the archive
1662
+ # retention period that you specify.
1663
+ #
1664
+ # For more information about using snapshot archiving, see
1665
+ # [Considerations for snapshot lifecycle policies][1].
1666
+ #
1667
+ #
1668
+ #
1669
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshot-ami-policy.html#dlm-archive
1670
+ # @return [Types::ArchiveRule]
1671
+ #
1392
1672
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/Schedule AWS API Documentation
1393
1673
  #
1394
1674
  class Schedule < Struct.new(
@@ -1401,13 +1681,14 @@ module Aws::DLM
1401
1681
  :fast_restore_rule,
1402
1682
  :cross_region_copy_rules,
1403
1683
  :share_rules,
1404
- :deprecate_rule)
1684
+ :deprecate_rule,
1685
+ :archive_rule)
1405
1686
  SENSITIVE = []
1406
1687
  include Aws::Structure
1407
1688
  end
1408
1689
 
1409
- # Specifies a rule for sharing snapshots across Amazon Web Services
1410
- # accounts.
1690
+ # **\[Snapshot policies only\]** Specifies a rule for sharing snapshots
1691
+ # across Amazon Web Services accounts.
1411
1692
  #
1412
1693
  # @note When making an API call, you may pass ShareRule
1413
1694
  # data as a hash:
@@ -1610,11 +1891,26 @@ module Aws::DLM
1610
1891
  # interval: 1,
1611
1892
  # interval_unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
1612
1893
  # },
1894
+ # archive_rule: {
1895
+ # retain_rule: { # required
1896
+ # retention_archive_tier: { # required
1897
+ # count: 1,
1898
+ # interval: 1,
1899
+ # interval_unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
1900
+ # },
1901
+ # },
1902
+ # },
1613
1903
  # },
1614
1904
  # ],
1615
1905
  # parameters: {
1616
1906
  # exclude_boot_volume: false,
1617
1907
  # no_reboot: false,
1908
+ # exclude_data_volume_tags: [
1909
+ # {
1910
+ # key: "String", # required
1911
+ # value: "String", # required
1912
+ # },
1913
+ # ],
1618
1914
  # },
1619
1915
  # event_source: {
1620
1916
  # type: "MANAGED_CWE", # required, accepts MANAGED_CWE
data/lib/aws-sdk-dlm.rb CHANGED
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-dlm/customizations'
48
48
  # @!group service
49
49
  module Aws::DLM
50
50
 
51
- GEM_VERSION = '1.50.0'
51
+ GEM_VERSION = '1.52.0'
52
52
 
53
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-dlm
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.50.0
4
+ version: 1.52.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-24 00:00:00.000000000 Z
11
+ date: 2022-09-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core