aws-sdk-docdb 1.70.0 → 1.71.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: e138c0412ac528fb2afe3ba2603016ab7563a959a86361699c0d3f647f14f459
4
- data.tar.gz: e3e8ed7a6c3335afd5f5aca3cb945c5a5769b1893b1fb43d828fbc71019686ee
3
+ metadata.gz: ea1ec49066ad7269a775084f8dce6d2b62251b388b4c9ff7953af1ed5a57889e
4
+ data.tar.gz: 6e37dd53e5d273dd499bf17ae2acc8ea9006a67cc9fb3c4873188cdde63d0222
5
5
  SHA512:
6
- metadata.gz: f7dce05cd6fe7963bceed51c413d3ca1a6ea09b8fdb3c24fbf8837a255d56b77dd54eb4316c82c9ea3da6cb64d09d3258e875d754a5273d0c4a76b75605d3534
7
- data.tar.gz: e2cf06247cc74e94b6b4dab99d25aad9d41a38934373f4845b40d8323696cbee6ffdbcfa6ec779ccc0b248c7ce46a0a07ae987b74b045681e3dafbb21dfa620f
6
+ metadata.gz: 1a5e76001c5ac82d8f7f39c1a3a1e2cfafd331852dc391fa63c3fe8217187153860186dac9fe8b1f13f08c43c818026f249de634b9a588e7526497922a29ea33
7
+ data.tar.gz: b44b6779f015cdf6b76ece8d03762dd956f6fc406b4803f6dc18094c2eeabc3ef8d6499476d39d4de9dc1e133d7a8490f4595d05fa25e79eed10a3e4be97bf27
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.71.0 (2024-08-15)
5
+ ------------------
6
+
7
+ * Feature - This release adds Global Cluster Failover capability which enables you to change your global cluster's primary AWS region, the region that serves writes, during a regional outage. Performing a failover action preserves your Global Cluster setup.
8
+
4
9
  1.70.0 (2024-07-02)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.70.0
1
+ 1.71.0
@@ -3664,6 +3664,107 @@ module Aws::DocDB
3664
3664
  req.send_request(options)
3665
3665
  end
3666
3666
 
3667
+ # Promotes the specified secondary DB cluster to be the primary DB
3668
+ # cluster in the global cluster when failing over a global cluster
3669
+ # occurs.
3670
+ #
3671
+ # Use this operation to respond to an unplanned event, such as a
3672
+ # regional disaster in the primary region. Failing over can result in a
3673
+ # loss of write transaction data that wasn't replicated to the chosen
3674
+ # secondary before the failover event occurred. However, the recovery
3675
+ # process that promotes a DB instance on the chosen seconday DB cluster
3676
+ # to be the primary writer DB instance guarantees that the data is in a
3677
+ # transactionally consistent state.
3678
+ #
3679
+ # @option params [required, String] :global_cluster_identifier
3680
+ # The identifier of the Amazon DocumentDB global cluster to apply this
3681
+ # operation. The identifier is the unique key assigned by the user when
3682
+ # the cluster is created. In other words, it's the name of the global
3683
+ # cluster.
3684
+ #
3685
+ # Constraints:
3686
+ #
3687
+ # * Must match the identifier of an existing global cluster.
3688
+ #
3689
+ # * Minimum length of 1. Maximum length of 255.
3690
+ #
3691
+ # Pattern: `[A-Za-z][0-9A-Za-z-:._]*`
3692
+ #
3693
+ # @option params [required, String] :target_db_cluster_identifier
3694
+ # The identifier of the secondary Amazon DocumentDB cluster that you
3695
+ # want to promote to the primary for the global cluster. Use the Amazon
3696
+ # Resource Name (ARN) for the identifier so that Amazon DocumentDB can
3697
+ # locate the cluster in its Amazon Web Services region.
3698
+ #
3699
+ # Constraints:
3700
+ #
3701
+ # * Must match the identifier of an existing secondary cluster.
3702
+ #
3703
+ # * Minimum length of 1. Maximum length of 255.
3704
+ #
3705
+ # Pattern: `[A-Za-z][0-9A-Za-z-:._]*`
3706
+ #
3707
+ # @option params [Boolean] :allow_data_loss
3708
+ # Specifies whether to allow data loss for this global cluster
3709
+ # operation. Allowing data loss triggers a global failover operation.
3710
+ #
3711
+ # If you don't specify `AllowDataLoss`, the global cluster operation
3712
+ # defaults to a switchover.
3713
+ #
3714
+ # Constraints:
3715
+ #
3716
+ # * Can't be specified together with the `Switchover` parameter.
3717
+ #
3718
+ # ^
3719
+ #
3720
+ # @option params [Boolean] :switchover
3721
+ # Specifies whether to switch over this global database cluster.
3722
+ #
3723
+ # Constraints:
3724
+ #
3725
+ # * Can't be specified together with the `AllowDataLoss` parameter.
3726
+ #
3727
+ # ^
3728
+ #
3729
+ # @return [Types::FailoverGlobalClusterResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3730
+ #
3731
+ # * {Types::FailoverGlobalClusterResult#global_cluster #global_cluster} => Types::GlobalCluster
3732
+ #
3733
+ # @example Request syntax with placeholder values
3734
+ #
3735
+ # resp = client.failover_global_cluster({
3736
+ # global_cluster_identifier: "GlobalClusterIdentifier", # required
3737
+ # target_db_cluster_identifier: "DBClusterIdentifier", # required
3738
+ # allow_data_loss: false,
3739
+ # switchover: false,
3740
+ # })
3741
+ #
3742
+ # @example Response structure
3743
+ #
3744
+ # resp.global_cluster.global_cluster_identifier #=> String
3745
+ # resp.global_cluster.global_cluster_resource_id #=> String
3746
+ # resp.global_cluster.global_cluster_arn #=> String
3747
+ # resp.global_cluster.status #=> String
3748
+ # resp.global_cluster.engine #=> String
3749
+ # resp.global_cluster.engine_version #=> String
3750
+ # resp.global_cluster.database_name #=> String
3751
+ # resp.global_cluster.storage_encrypted #=> Boolean
3752
+ # resp.global_cluster.deletion_protection #=> Boolean
3753
+ # resp.global_cluster.global_cluster_members #=> Array
3754
+ # resp.global_cluster.global_cluster_members[0].db_cluster_arn #=> String
3755
+ # resp.global_cluster.global_cluster_members[0].readers #=> Array
3756
+ # resp.global_cluster.global_cluster_members[0].readers[0] #=> String
3757
+ # resp.global_cluster.global_cluster_members[0].is_writer #=> Boolean
3758
+ #
3759
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/FailoverGlobalCluster AWS API Documentation
3760
+ #
3761
+ # @overload failover_global_cluster(params = {})
3762
+ # @param [Hash] params ({})
3763
+ def failover_global_cluster(params = {}, options = {})
3764
+ req = build_request(:failover_global_cluster, params)
3765
+ req.send_request(options)
3766
+ end
3767
+
3667
3768
  # Lists all tags on an Amazon DocumentDB resource.
3668
3769
  #
3669
3770
  # @option params [required, String] :resource_name
@@ -5435,7 +5536,7 @@ module Aws::DocDB
5435
5536
  #
5436
5537
  # resp = client.switchover_global_cluster({
5437
5538
  # global_cluster_identifier: "GlobalClusterIdentifier", # required
5438
- # target_db_cluster_identifier: "String", # required
5539
+ # target_db_cluster_identifier: "DBClusterIdentifier", # required
5439
5540
  # })
5440
5541
  #
5441
5542
  # @example Response structure
@@ -5477,7 +5578,7 @@ module Aws::DocDB
5477
5578
  params: params,
5478
5579
  config: config)
5479
5580
  context[:gem_name] = 'aws-sdk-docdb'
5480
- context[:gem_version] = '1.70.0'
5581
+ context[:gem_version] = '1.71.0'
5481
5582
  Seahorse::Client::Request.new(handlers, context)
5482
5583
  end
5483
5584
 
@@ -53,6 +53,7 @@ module Aws::DocDB
53
53
  CreateGlobalClusterResult = Shapes::StructureShape.new(name: 'CreateGlobalClusterResult')
54
54
  DBCluster = Shapes::StructureShape.new(name: 'DBCluster')
55
55
  DBClusterAlreadyExistsFault = Shapes::StructureShape.new(name: 'DBClusterAlreadyExistsFault', error: {"code"=>"DBClusterAlreadyExistsFault", "httpStatusCode"=>400, "senderFault"=>true})
56
+ DBClusterIdentifier = Shapes::StringShape.new(name: 'DBClusterIdentifier')
56
57
  DBClusterList = Shapes::ListShape.new(name: 'DBClusterList')
57
58
  DBClusterMember = Shapes::StructureShape.new(name: 'DBClusterMember')
58
59
  DBClusterMemberList = Shapes::ListShape.new(name: 'DBClusterMemberList')
@@ -145,6 +146,8 @@ module Aws::DocDB
145
146
  EventsMessage = Shapes::StructureShape.new(name: 'EventsMessage')
146
147
  FailoverDBClusterMessage = Shapes::StructureShape.new(name: 'FailoverDBClusterMessage')
147
148
  FailoverDBClusterResult = Shapes::StructureShape.new(name: 'FailoverDBClusterResult')
149
+ FailoverGlobalClusterMessage = Shapes::StructureShape.new(name: 'FailoverGlobalClusterMessage')
150
+ FailoverGlobalClusterResult = Shapes::StructureShape.new(name: 'FailoverGlobalClusterResult')
148
151
  Filter = Shapes::StructureShape.new(name: 'Filter')
149
152
  FilterList = Shapes::ListShape.new(name: 'FilterList')
150
153
  FilterValueList = Shapes::ListShape.new(name: 'FilterValueList')
@@ -870,6 +873,15 @@ module Aws::DocDB
870
873
  FailoverDBClusterResult.add_member(:db_cluster, Shapes::ShapeRef.new(shape: DBCluster, location_name: "DBCluster"))
871
874
  FailoverDBClusterResult.struct_class = Types::FailoverDBClusterResult
872
875
 
876
+ FailoverGlobalClusterMessage.add_member(:global_cluster_identifier, Shapes::ShapeRef.new(shape: GlobalClusterIdentifier, required: true, location_name: "GlobalClusterIdentifier"))
877
+ FailoverGlobalClusterMessage.add_member(:target_db_cluster_identifier, Shapes::ShapeRef.new(shape: DBClusterIdentifier, required: true, location_name: "TargetDbClusterIdentifier"))
878
+ FailoverGlobalClusterMessage.add_member(:allow_data_loss, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "AllowDataLoss"))
879
+ FailoverGlobalClusterMessage.add_member(:switchover, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "Switchover"))
880
+ FailoverGlobalClusterMessage.struct_class = Types::FailoverGlobalClusterMessage
881
+
882
+ FailoverGlobalClusterResult.add_member(:global_cluster, Shapes::ShapeRef.new(shape: GlobalCluster, location_name: "GlobalCluster"))
883
+ FailoverGlobalClusterResult.struct_class = Types::FailoverGlobalClusterResult
884
+
873
885
  Filter.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
874
886
  Filter.add_member(:values, Shapes::ShapeRef.new(shape: FilterValueList, required: true, location_name: "Values"))
875
887
  Filter.struct_class = Types::Filter
@@ -1219,7 +1231,7 @@ module Aws::DocDB
1219
1231
  SubscriptionNotFoundFault.struct_class = Types::SubscriptionNotFoundFault
1220
1232
 
1221
1233
  SwitchoverGlobalClusterMessage.add_member(:global_cluster_identifier, Shapes::ShapeRef.new(shape: GlobalClusterIdentifier, required: true, location_name: "GlobalClusterIdentifier"))
1222
- SwitchoverGlobalClusterMessage.add_member(:target_db_cluster_identifier, Shapes::ShapeRef.new(shape: String, required: true, location_name: "TargetDbClusterIdentifier"))
1234
+ SwitchoverGlobalClusterMessage.add_member(:target_db_cluster_identifier, Shapes::ShapeRef.new(shape: DBClusterIdentifier, required: true, location_name: "TargetDbClusterIdentifier"))
1223
1235
  SwitchoverGlobalClusterMessage.struct_class = Types::SwitchoverGlobalClusterMessage
1224
1236
 
1225
1237
  SwitchoverGlobalClusterResult.add_member(:global_cluster, Shapes::ShapeRef.new(shape: GlobalCluster, location_name: "GlobalCluster"))
@@ -1745,6 +1757,18 @@ module Aws::DocDB
1745
1757
  o.errors << Shapes::ShapeRef.new(shape: InvalidDBInstanceStateFault)
1746
1758
  end)
1747
1759
 
1760
+ api.add_operation(:failover_global_cluster, Seahorse::Model::Operation.new.tap do |o|
1761
+ o.name = "FailoverGlobalCluster"
1762
+ o.http_method = "POST"
1763
+ o.http_request_uri = "/"
1764
+ o.input = Shapes::ShapeRef.new(shape: FailoverGlobalClusterMessage)
1765
+ o.output = Shapes::ShapeRef.new(shape: FailoverGlobalClusterResult)
1766
+ o.errors << Shapes::ShapeRef.new(shape: GlobalClusterNotFoundFault)
1767
+ o.errors << Shapes::ShapeRef.new(shape: InvalidGlobalClusterStateFault)
1768
+ o.errors << Shapes::ShapeRef.new(shape: InvalidDBClusterStateFault)
1769
+ o.errors << Shapes::ShapeRef.new(shape: DBClusterNotFoundFault)
1770
+ end)
1771
+
1748
1772
  api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
1749
1773
  o.name = "ListTagsForResource"
1750
1774
  o.http_method = "POST"
@@ -516,6 +516,20 @@ module Aws::DocDB
516
516
  end
517
517
  end
518
518
 
519
+ class FailoverGlobalCluster
520
+ def self.build(context)
521
+ unless context.config.regional_endpoint
522
+ endpoint = context.config.endpoint.to_s
523
+ end
524
+ Aws::DocDB::EndpointParameters.new(
525
+ region: context.config.region,
526
+ use_dual_stack: context.config.use_dualstack_endpoint,
527
+ use_fips: context.config.use_fips_endpoint,
528
+ endpoint: endpoint,
529
+ )
530
+ end
531
+ end
532
+
519
533
  class ListTagsForResource
520
534
  def self.build(context)
521
535
  unless context.config.regional_endpoint
@@ -130,6 +130,8 @@ module Aws::DocDB
130
130
  Aws::DocDB::Endpoints::DescribePendingMaintenanceActions.build(context)
131
131
  when :failover_db_cluster
132
132
  Aws::DocDB::Endpoints::FailoverDBCluster.build(context)
133
+ when :failover_global_cluster
134
+ Aws::DocDB::Endpoints::FailoverGlobalCluster.build(context)
133
135
  when :list_tags_for_resource
134
136
  Aws::DocDB::Endpoints::ListTagsForResource.build(context)
135
137
  when :modify_db_cluster
@@ -3696,6 +3696,83 @@ module Aws::DocDB
3696
3696
  include Aws::Structure
3697
3697
  end
3698
3698
 
3699
+ # @!attribute [rw] global_cluster_identifier
3700
+ # The identifier of the Amazon DocumentDB global cluster to apply this
3701
+ # operation. The identifier is the unique key assigned by the user
3702
+ # when the cluster is created. In other words, it's the name of the
3703
+ # global cluster.
3704
+ #
3705
+ # Constraints:
3706
+ #
3707
+ # * Must match the identifier of an existing global cluster.
3708
+ #
3709
+ # * Minimum length of 1. Maximum length of 255.
3710
+ #
3711
+ # Pattern: `[A-Za-z][0-9A-Za-z-:._]*`
3712
+ # @return [String]
3713
+ #
3714
+ # @!attribute [rw] target_db_cluster_identifier
3715
+ # The identifier of the secondary Amazon DocumentDB cluster that you
3716
+ # want to promote to the primary for the global cluster. Use the
3717
+ # Amazon Resource Name (ARN) for the identifier so that Amazon
3718
+ # DocumentDB can locate the cluster in its Amazon Web Services region.
3719
+ #
3720
+ # Constraints:
3721
+ #
3722
+ # * Must match the identifier of an existing secondary cluster.
3723
+ #
3724
+ # * Minimum length of 1. Maximum length of 255.
3725
+ #
3726
+ # Pattern: `[A-Za-z][0-9A-Za-z-:._]*`
3727
+ # @return [String]
3728
+ #
3729
+ # @!attribute [rw] allow_data_loss
3730
+ # Specifies whether to allow data loss for this global cluster
3731
+ # operation. Allowing data loss triggers a global failover operation.
3732
+ #
3733
+ # If you don't specify `AllowDataLoss`, the global cluster operation
3734
+ # defaults to a switchover.
3735
+ #
3736
+ # Constraints:
3737
+ #
3738
+ # * Can't be specified together with the `Switchover` parameter.
3739
+ #
3740
+ # ^
3741
+ # @return [Boolean]
3742
+ #
3743
+ # @!attribute [rw] switchover
3744
+ # Specifies whether to switch over this global database cluster.
3745
+ #
3746
+ # Constraints:
3747
+ #
3748
+ # * Can't be specified together with the `AllowDataLoss` parameter.
3749
+ #
3750
+ # ^
3751
+ # @return [Boolean]
3752
+ #
3753
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/FailoverGlobalClusterMessage AWS API Documentation
3754
+ #
3755
+ class FailoverGlobalClusterMessage < Struct.new(
3756
+ :global_cluster_identifier,
3757
+ :target_db_cluster_identifier,
3758
+ :allow_data_loss,
3759
+ :switchover)
3760
+ SENSITIVE = []
3761
+ include Aws::Structure
3762
+ end
3763
+
3764
+ # @!attribute [rw] global_cluster
3765
+ # A data type representing an Amazon DocumentDB global cluster.
3766
+ # @return [Types::GlobalCluster]
3767
+ #
3768
+ # @see http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/FailoverGlobalClusterResult AWS API Documentation
3769
+ #
3770
+ class FailoverGlobalClusterResult < Struct.new(
3771
+ :global_cluster)
3772
+ SENSITIVE = []
3773
+ include Aws::Structure
3774
+ end
3775
+
3699
3776
  # A named set of filter values, used to return a more specific list of
3700
3777
  # results. You can use a filter to match a set of resources by specific
3701
3778
  # criteria, such as IDs.
data/lib/aws-sdk-docdb.rb CHANGED
@@ -53,6 +53,6 @@ require_relative 'aws-sdk-docdb/customizations'
53
53
  # @!group service
54
54
  module Aws::DocDB
55
55
 
56
- GEM_VERSION = '1.70.0'
56
+ GEM_VERSION = '1.71.0'
57
57
 
58
58
  end
data/sig/client.rbs CHANGED
@@ -685,6 +685,19 @@ module Aws
685
685
  ) -> _FailoverDBClusterResponseSuccess
686
686
  | (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _FailoverDBClusterResponseSuccess
687
687
 
688
+ interface _FailoverGlobalClusterResponseSuccess
689
+ include ::Seahorse::Client::_ResponseSuccess[Types::FailoverGlobalClusterResult]
690
+ def global_cluster: () -> Types::GlobalCluster
691
+ end
692
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DocDB/Client.html#failover_global_cluster-instance_method
693
+ def failover_global_cluster: (
694
+ global_cluster_identifier: ::String,
695
+ target_db_cluster_identifier: ::String,
696
+ ?allow_data_loss: bool,
697
+ ?switchover: bool
698
+ ) -> _FailoverGlobalClusterResponseSuccess
699
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _FailoverGlobalClusterResponseSuccess
700
+
688
701
  interface _ListTagsForResourceResponseSuccess
689
702
  include ::Seahorse::Client::_ResponseSuccess[Types::TagListMessage]
690
703
  def tag_list: () -> ::Array[Types::Tag]
data/sig/types.rbs CHANGED
@@ -783,6 +783,19 @@ module Aws::DocDB
783
783
  SENSITIVE: []
784
784
  end
785
785
 
786
+ class FailoverGlobalClusterMessage
787
+ attr_accessor global_cluster_identifier: ::String
788
+ attr_accessor target_db_cluster_identifier: ::String
789
+ attr_accessor allow_data_loss: bool
790
+ attr_accessor switchover: bool
791
+ SENSITIVE: []
792
+ end
793
+
794
+ class FailoverGlobalClusterResult
795
+ attr_accessor global_cluster: Types::GlobalCluster
796
+ SENSITIVE: []
797
+ end
798
+
786
799
  class Filter
787
800
  attr_accessor name: ::String
788
801
  attr_accessor values: ::Array[::String]
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-docdb
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.70.0
4
+ version: 1.71.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: 2024-07-02 00:00:00.000000000 Z
11
+ date: 2024-08-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core