aws-sdk-docdb 1.70.0 → 1.71.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: 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