aws-sdk-dlm 1.62.0 → 1.64.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a20d968619807a56f009a4819773b58c8ab34911df7e7ba3aa57b72fa9c3627e
4
- data.tar.gz: 8f2d83ac21d199572eb15b67934205dacc6f017e622922b47fa53d9b5bacd739
3
+ metadata.gz: 25ac2510faf77d17d487e0583483a337fc3fec4111d990024623581812422f28
4
+ data.tar.gz: 39dfafb59701859bf295785b54feb282b64e496baa2613ea8b4cf11e193ed156
5
5
  SHA512:
6
- metadata.gz: 83c52ad589a57751a15ceb7742b3e89799013290d0f65ef207b53b395c431642553da48db08739c4f24323ea8de039237eb81e6e1aaee48bb7cf4f6f89b75150
7
- data.tar.gz: 9b789a373d6610043018cb0c85e54b3a27c7fabaad393169fc85c5400ed0ac1c0694d2a10367e3074bebc469b26710c0b4eed297939dfba9d43ec775f82354fc
6
+ metadata.gz: 1a809a28b342912e604c56739abcec2d25909640bc99f5c4ea77019902df81c6310bf35a40e17768606380df673b158f77336e60ca6dbf9da5aebcebf0226a62
7
+ data.tar.gz: ea97e39c28485bb6e7fb94eceb6a0c6ac1500b1ef66aafc0ff6ccc26687c02ca080c6e20dac12e4858f41f46eca985a56a80c30769e33264c3cc8180f1947791
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.64.0 (2023-11-16)
5
+ ------------------
6
+
7
+ * Feature - This release adds support for Amazon Data Lifecycle Manager default policies for EBS snapshots and EBS-backed AMIs.
8
+
9
+ 1.63.0 (2023-11-07)
10
+ ------------------
11
+
12
+ * Feature - Added support for pre and post scripts in Amazon Data Lifecycle Manager EBS snapshot lifecycle policies.
13
+
4
14
  1.62.0 (2023-09-27)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.62.0
1
+ 1.64.0
@@ -388,8 +388,28 @@ module Aws::DLM
388
388
 
389
389
  # @!group API Operations
390
390
 
391
- # Creates a policy to manage the lifecycle of the specified Amazon Web
392
- # Services resources. You can create up to 100 lifecycle policies.
391
+ # Creates an Amazon Data Lifecycle Manager lifecycle policy. Amazon Data
392
+ # Lifecycle Manager supports the following policy types:
393
+ #
394
+ # * Custom EBS snapshot policy
395
+ #
396
+ # * Custom EBS-backed AMI policy
397
+ #
398
+ # * Cross-account copy event policy
399
+ #
400
+ # * Default policy for EBS snapshots
401
+ #
402
+ # * Default policy for EBS-backed AMIs
403
+ #
404
+ # For more information, see [ Default policies vs custom policies][1].
405
+ #
406
+ # If you create a default policy, you can specify the request parameters
407
+ # either in the request body, or in the PolicyDetails request structure,
408
+ # but not both.
409
+ #
410
+ #
411
+ #
412
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/policy-differences.html
393
413
  #
394
414
  # @option params [required, String] :execution_role_arn
395
415
  # The Amazon Resource Name (ARN) of the IAM role used to run the
@@ -400,14 +420,90 @@ module Aws::DLM
400
420
  # \_-\]+$ are supported.
401
421
  #
402
422
  # @option params [required, String] :state
403
- # The desired activation state of the lifecycle policy after creation.
423
+ # The activation state of the lifecycle policy after creation.
404
424
  #
405
- # @option params [required, Types::PolicyDetails] :policy_details
425
+ # @option params [Types::PolicyDetails] :policy_details
406
426
  # The configuration details of the lifecycle policy.
407
427
  #
428
+ # If you create a default policy, you can specify the request parameters
429
+ # either in the request body, or in the PolicyDetails request structure,
430
+ # but not both.
431
+ #
408
432
  # @option params [Hash<String,String>] :tags
409
433
  # The tags to apply to the lifecycle policy during creation.
410
434
  #
435
+ # @option params [String] :default_policy
436
+ # **\[Default policies only\]** Specify the type of default policy to
437
+ # create.
438
+ #
439
+ # * To create a default policy for EBS snapshots, that creates snapshots
440
+ # of all volumes in the Region that do not have recent backups,
441
+ # specify `VOLUME`.
442
+ #
443
+ # * To create a default policy for EBS-backed AMIs, that creates
444
+ # EBS-backed AMIs from all instances in the Region that do not have
445
+ # recent backups, specify `INSTANCE`.
446
+ #
447
+ # @option params [Integer] :create_interval
448
+ # **\[Default policies only\]** Specifies how often the policy should
449
+ # run and create snapshots or AMIs. The creation frequency can range
450
+ # from 1 to 7 days. If you do not specify a value, the default is 1.
451
+ #
452
+ # Default: 1
453
+ #
454
+ # @option params [Integer] :retain_interval
455
+ # **\[Default policies only\]** Specifies how long the policy should
456
+ # retain snapshots or AMIs before deleting them. The retention period
457
+ # can range from 2 to 14 days, but it must be greater than the creation
458
+ # frequency to ensure that the policy retains at least 1 snapshot or AMI
459
+ # at any given time. If you do not specify a value, the default is 7.
460
+ #
461
+ # Default: 7
462
+ #
463
+ # @option params [Boolean] :copy_tags
464
+ # **\[Default policies only\]** Indicates whether the policy should copy
465
+ # tags from the source resource to the snapshot or AMI. If you do not
466
+ # specify a value, the default is `false`.
467
+ #
468
+ # Default: false
469
+ #
470
+ # @option params [Boolean] :extend_deletion
471
+ # **\[Default policies only\]** Defines the snapshot or AMI retention
472
+ # behavior for the policy if the source volume or instance is deleted,
473
+ # or if the policy enters the error, disabled, or deleted state.
474
+ #
475
+ # By default (**ExtendDeletion=false**):
476
+ #
477
+ # * If a source resource is deleted, Amazon Data Lifecycle Manager will
478
+ # continue to delete previously created snapshots or AMIs, up to but
479
+ # not including the last one, based on the specified retention period.
480
+ # If you want Amazon Data Lifecycle Manager to delete all snapshots or
481
+ # AMIs, including the last one, specify `true`.
482
+ #
483
+ # * If a policy enters the error, disabled, or deleted state, Amazon
484
+ # Data Lifecycle Manager stops deleting snapshots and AMIs. If you
485
+ # want Amazon Data Lifecycle Manager to continue deleting snapshots or
486
+ # AMIs, including the last one, if the policy enters one of these
487
+ # states, specify `true`.
488
+ #
489
+ # If you enable extended deletion (**ExtendDeletion=true**), you
490
+ # override both default behaviors simultaneously.
491
+ #
492
+ # If you do not specify a value, the default is `false`.
493
+ #
494
+ # Default: false
495
+ #
496
+ # @option params [Array<Types::CrossRegionCopyTarget>] :cross_region_copy_targets
497
+ # **\[Default policies only\]** Specifies destination Regions for
498
+ # snapshot or AMI copies. You can specify up to 3 destination Regions.
499
+ # If you do not want to create cross-Region copies, omit this parameter.
500
+ #
501
+ # @option params [Types::Exclusions] :exclusions
502
+ # **\[Default policies only\]** Specifies exclusion parameters for
503
+ # volumes or instances for which you do not want to create snapshots or
504
+ # AMIs. The policy will not create snapshots or AMIs for target
505
+ # resources that match any of the specified exclusion parameters.
506
+ #
411
507
  # @return [Types::CreateLifecyclePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
412
508
  #
413
509
  # * {Types::CreateLifecyclePolicyResponse#policy_id #policy_id} => String
@@ -418,7 +514,7 @@ module Aws::DLM
418
514
  # execution_role_arn: "ExecutionRoleArn", # required
419
515
  # description: "PolicyDescription", # required
420
516
  # state: "ENABLED", # required, accepts ENABLED, DISABLED
421
- # policy_details: { # required
517
+ # policy_details: {
422
518
  # policy_type: "EBS_SNAPSHOT_MANAGEMENT", # accepts EBS_SNAPSHOT_MANAGEMENT, IMAGE_MANAGEMENT, EVENT_BASED_POLICY
423
519
  # resource_types: ["VOLUME"], # accepts VOLUME, INSTANCE
424
520
  # resource_locations: ["CLOUD"], # accepts CLOUD, OUTPOST
@@ -450,6 +546,16 @@ module Aws::DLM
450
546
  # interval_unit: "HOURS", # accepts HOURS
451
547
  # times: ["Time"],
452
548
  # cron_expression: "CronExpression",
549
+ # scripts: [
550
+ # {
551
+ # stages: ["PRE"], # accepts PRE, POST
552
+ # execution_handler_service: "AWS_SYSTEMS_MANAGER", # accepts AWS_SYSTEMS_MANAGER
553
+ # execution_handler: "ExecutionHandler", # required
554
+ # execute_operation_on_script_failure: false,
555
+ # execution_timeout: 1,
556
+ # maximum_retry_count: 1,
557
+ # },
558
+ # ],
453
559
  # },
454
560
  # retain_rule: {
455
561
  # count: 1,
@@ -538,10 +644,51 @@ module Aws::DLM
538
644
  # ],
539
645
  # },
540
646
  # ],
647
+ # policy_language: "SIMPLIFIED", # accepts SIMPLIFIED, STANDARD
648
+ # resource_type: "VOLUME", # accepts VOLUME, INSTANCE
649
+ # create_interval: 1,
650
+ # retain_interval: 1,
651
+ # copy_tags: false,
652
+ # cross_region_copy_targets: [
653
+ # {
654
+ # target_region: "TargetRegion",
655
+ # },
656
+ # ],
657
+ # extend_deletion: false,
658
+ # exclusions: {
659
+ # exclude_boot_volumes: false,
660
+ # exclude_volume_types: ["VolumeTypeValues"],
661
+ # exclude_tags: [
662
+ # {
663
+ # key: "String", # required
664
+ # value: "String", # required
665
+ # },
666
+ # ],
667
+ # },
541
668
  # },
542
669
  # tags: {
543
670
  # "TagKey" => "TagValue",
544
671
  # },
672
+ # default_policy: "VOLUME", # accepts VOLUME, INSTANCE
673
+ # create_interval: 1,
674
+ # retain_interval: 1,
675
+ # copy_tags: false,
676
+ # extend_deletion: false,
677
+ # cross_region_copy_targets: [
678
+ # {
679
+ # target_region: "TargetRegion",
680
+ # },
681
+ # ],
682
+ # exclusions: {
683
+ # exclude_boot_volumes: false,
684
+ # exclude_volume_types: ["VolumeTypeValues"],
685
+ # exclude_tags: [
686
+ # {
687
+ # key: "String", # required
688
+ # value: "String", # required
689
+ # },
690
+ # ],
691
+ # },
545
692
  # })
546
693
  #
547
694
  # @example Response structure
@@ -590,7 +737,12 @@ module Aws::DLM
590
737
  # Gets summary information about all or the specified data lifecycle
591
738
  # policies.
592
739
  #
593
- # To get complete information about a policy, use GetLifecyclePolicy.
740
+ # To get complete information about a policy, use
741
+ # [GetLifecyclePolicy][1].
742
+ #
743
+ #
744
+ #
745
+ # [1]: https://docs.aws.amazon.com/dlm/latest/APIReference/API_GetLifecyclePolicy.html
594
746
  #
595
747
  # @option params [Array<String>] :policy_ids
596
748
  # The identifiers of the data lifecycle policies.
@@ -614,6 +766,16 @@ module Aws::DLM
614
766
  # These user-defined tags are added in addition to the Amazon Web
615
767
  # Services-added lifecycle tags.
616
768
  #
769
+ # @option params [String] :default_policy_type
770
+ # **\[Default policies only\]** Specifies the type of default policy to
771
+ # get. Specify one of the following:
772
+ #
773
+ # * `VOLUME` - To get only the default policy for EBS snapshots
774
+ #
775
+ # * `INSTANCE` - To get only the default policy for EBS-backed AMIs
776
+ #
777
+ # * `ALL` - To get all default policies
778
+ #
617
779
  # @return [Types::GetLifecyclePoliciesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
618
780
  #
619
781
  # * {Types::GetLifecyclePoliciesResponse#policies #policies} => Array&lt;Types::LifecyclePolicySummary&gt;
@@ -626,6 +788,7 @@ module Aws::DLM
626
788
  # resource_types: ["VOLUME"], # accepts VOLUME, INSTANCE
627
789
  # target_tags: ["TagFilter"],
628
790
  # tags_to_add: ["TagFilter"],
791
+ # default_policy_type: "VOLUME", # accepts VOLUME, INSTANCE, ALL
629
792
  # })
630
793
  #
631
794
  # @example Response structure
@@ -637,6 +800,7 @@ module Aws::DLM
637
800
  # resp.policies[0].tags #=> Hash
638
801
  # resp.policies[0].tags["TagKey"] #=> String
639
802
  # resp.policies[0].policy_type #=> String, one of "EBS_SNAPSHOT_MANAGEMENT", "IMAGE_MANAGEMENT", "EVENT_BASED_POLICY"
803
+ # resp.policies[0].default_policy #=> Boolean
640
804
  #
641
805
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/GetLifecyclePolicies AWS API Documentation
642
806
  #
@@ -694,6 +858,14 @@ module Aws::DLM
694
858
  # resp.policy.policy_details.schedules[0].create_rule.times #=> Array
695
859
  # resp.policy.policy_details.schedules[0].create_rule.times[0] #=> String
696
860
  # resp.policy.policy_details.schedules[0].create_rule.cron_expression #=> String
861
+ # resp.policy.policy_details.schedules[0].create_rule.scripts #=> Array
862
+ # resp.policy.policy_details.schedules[0].create_rule.scripts[0].stages #=> Array
863
+ # resp.policy.policy_details.schedules[0].create_rule.scripts[0].stages[0] #=> String, one of "PRE", "POST"
864
+ # resp.policy.policy_details.schedules[0].create_rule.scripts[0].execution_handler_service #=> String, one of "AWS_SYSTEMS_MANAGER"
865
+ # resp.policy.policy_details.schedules[0].create_rule.scripts[0].execution_handler #=> String
866
+ # resp.policy.policy_details.schedules[0].create_rule.scripts[0].execute_operation_on_script_failure #=> Boolean
867
+ # resp.policy.policy_details.schedules[0].create_rule.scripts[0].execution_timeout #=> Integer
868
+ # resp.policy.policy_details.schedules[0].create_rule.scripts[0].maximum_retry_count #=> Integer
697
869
  # resp.policy.policy_details.schedules[0].retain_rule.count #=> Integer
698
870
  # resp.policy.policy_details.schedules[0].retain_rule.interval #=> Integer
699
871
  # resp.policy.policy_details.schedules[0].retain_rule.interval_unit #=> String, one of "DAYS", "WEEKS", "MONTHS", "YEARS"
@@ -741,9 +913,24 @@ module Aws::DLM
741
913
  # resp.policy.policy_details.actions[0].cross_region_copy[0].encryption_configuration.cmk_arn #=> String
742
914
  # resp.policy.policy_details.actions[0].cross_region_copy[0].retain_rule.interval #=> Integer
743
915
  # resp.policy.policy_details.actions[0].cross_region_copy[0].retain_rule.interval_unit #=> String, one of "DAYS", "WEEKS", "MONTHS", "YEARS"
916
+ # resp.policy.policy_details.policy_language #=> String, one of "SIMPLIFIED", "STANDARD"
917
+ # resp.policy.policy_details.resource_type #=> String, one of "VOLUME", "INSTANCE"
918
+ # resp.policy.policy_details.create_interval #=> Integer
919
+ # resp.policy.policy_details.retain_interval #=> Integer
920
+ # resp.policy.policy_details.copy_tags #=> Boolean
921
+ # resp.policy.policy_details.cross_region_copy_targets #=> Array
922
+ # resp.policy.policy_details.cross_region_copy_targets[0].target_region #=> String
923
+ # resp.policy.policy_details.extend_deletion #=> Boolean
924
+ # resp.policy.policy_details.exclusions.exclude_boot_volumes #=> Boolean
925
+ # resp.policy.policy_details.exclusions.exclude_volume_types #=> Array
926
+ # resp.policy.policy_details.exclusions.exclude_volume_types[0] #=> String
927
+ # resp.policy.policy_details.exclusions.exclude_tags #=> Array
928
+ # resp.policy.policy_details.exclusions.exclude_tags[0].key #=> String
929
+ # resp.policy.policy_details.exclusions.exclude_tags[0].value #=> String
744
930
  # resp.policy.tags #=> Hash
745
931
  # resp.policy.tags["TagKey"] #=> String
746
932
  # resp.policy.policy_arn #=> String
933
+ # resp.policy.default_policy #=> Boolean
747
934
  #
748
935
  # @see http://docs.aws.amazon.com/goto/WebAPI/dlm-2018-01-12/GetLifecyclePolicy AWS API Documentation
749
936
  #
@@ -863,6 +1050,57 @@ module Aws::DLM
863
1050
  # The configuration of the lifecycle policy. You cannot update the
864
1051
  # policy type or the resource type.
865
1052
  #
1053
+ # @option params [Integer] :create_interval
1054
+ # **\[Default policies only\]** Specifies how often the policy should
1055
+ # run and create snapshots or AMIs. The creation frequency can range
1056
+ # from 1 to 7 days.
1057
+ #
1058
+ # @option params [Integer] :retain_interval
1059
+ # **\[Default policies only\]** Specifies how long the policy should
1060
+ # retain snapshots or AMIs before deleting them. The retention period
1061
+ # can range from 2 to 14 days, but it must be greater than the creation
1062
+ # frequency to ensure that the policy retains at least 1 snapshot or AMI
1063
+ # at any given time.
1064
+ #
1065
+ # @option params [Boolean] :copy_tags
1066
+ # **\[Default policies only\]** Indicates whether the policy should copy
1067
+ # tags from the source resource to the snapshot or AMI.
1068
+ #
1069
+ # @option params [Boolean] :extend_deletion
1070
+ # **\[Default policies only\]** Defines the snapshot or AMI retention
1071
+ # behavior for the policy if the source volume or instance is deleted,
1072
+ # or if the policy enters the error, disabled, or deleted state.
1073
+ #
1074
+ # By default (**ExtendDeletion=false**):
1075
+ #
1076
+ # * If a source resource is deleted, Amazon Data Lifecycle Manager will
1077
+ # continue to delete previously created snapshots or AMIs, up to but
1078
+ # not including the last one, based on the specified retention period.
1079
+ # If you want Amazon Data Lifecycle Manager to delete all snapshots or
1080
+ # AMIs, including the last one, specify `true`.
1081
+ #
1082
+ # * If a policy enters the error, disabled, or deleted state, Amazon
1083
+ # Data Lifecycle Manager stops deleting snapshots and AMIs. If you
1084
+ # want Amazon Data Lifecycle Manager to continue deleting snapshots or
1085
+ # AMIs, including the last one, if the policy enters one of these
1086
+ # states, specify `true`.
1087
+ #
1088
+ # If you enable extended deletion (**ExtendDeletion=true**), you
1089
+ # override both default behaviors simultaneously.
1090
+ #
1091
+ # Default: false
1092
+ #
1093
+ # @option params [Array<Types::CrossRegionCopyTarget>] :cross_region_copy_targets
1094
+ # **\[Default policies only\]** Specifies destination Regions for
1095
+ # snapshot or AMI copies. You can specify up to 3 destination Regions.
1096
+ # If you do not want to create cross-Region copies, omit this parameter.
1097
+ #
1098
+ # @option params [Types::Exclusions] :exclusions
1099
+ # **\[Default policies only\]** Specifies exclusion parameters for
1100
+ # volumes or instances for which you do not want to create snapshots or
1101
+ # AMIs. The policy will not create snapshots or AMIs for target
1102
+ # resources that match any of the specified exclusion parameters.
1103
+ #
866
1104
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
867
1105
  #
868
1106
  # @example Request syntax with placeholder values
@@ -904,6 +1142,16 @@ module Aws::DLM
904
1142
  # interval_unit: "HOURS", # accepts HOURS
905
1143
  # times: ["Time"],
906
1144
  # cron_expression: "CronExpression",
1145
+ # scripts: [
1146
+ # {
1147
+ # stages: ["PRE"], # accepts PRE, POST
1148
+ # execution_handler_service: "AWS_SYSTEMS_MANAGER", # accepts AWS_SYSTEMS_MANAGER
1149
+ # execution_handler: "ExecutionHandler", # required
1150
+ # execute_operation_on_script_failure: false,
1151
+ # execution_timeout: 1,
1152
+ # maximum_retry_count: 1,
1153
+ # },
1154
+ # ],
907
1155
  # },
908
1156
  # retain_rule: {
909
1157
  # count: 1,
@@ -992,6 +1240,46 @@ module Aws::DLM
992
1240
  # ],
993
1241
  # },
994
1242
  # ],
1243
+ # policy_language: "SIMPLIFIED", # accepts SIMPLIFIED, STANDARD
1244
+ # resource_type: "VOLUME", # accepts VOLUME, INSTANCE
1245
+ # create_interval: 1,
1246
+ # retain_interval: 1,
1247
+ # copy_tags: false,
1248
+ # cross_region_copy_targets: [
1249
+ # {
1250
+ # target_region: "TargetRegion",
1251
+ # },
1252
+ # ],
1253
+ # extend_deletion: false,
1254
+ # exclusions: {
1255
+ # exclude_boot_volumes: false,
1256
+ # exclude_volume_types: ["VolumeTypeValues"],
1257
+ # exclude_tags: [
1258
+ # {
1259
+ # key: "String", # required
1260
+ # value: "String", # required
1261
+ # },
1262
+ # ],
1263
+ # },
1264
+ # },
1265
+ # create_interval: 1,
1266
+ # retain_interval: 1,
1267
+ # copy_tags: false,
1268
+ # extend_deletion: false,
1269
+ # cross_region_copy_targets: [
1270
+ # {
1271
+ # target_region: "TargetRegion",
1272
+ # },
1273
+ # ],
1274
+ # exclusions: {
1275
+ # exclude_boot_volumes: false,
1276
+ # exclude_volume_types: ["VolumeTypeValues"],
1277
+ # exclude_tags: [
1278
+ # {
1279
+ # key: "String", # required
1280
+ # value: "String", # required
1281
+ # },
1282
+ # ],
995
1283
  # },
996
1284
  # })
997
1285
  #
@@ -1017,7 +1305,7 @@ module Aws::DLM
1017
1305
  params: params,
1018
1306
  config: config)
1019
1307
  context[:gem_name] = 'aws-sdk-dlm'
1020
- context[:gem_version] = '1.62.0'
1308
+ context[:gem_version] = '1.64.0'
1021
1309
  Seahorse::Client::Request.new(handlers, context)
1022
1310
  end
1023
1311