aws-sdk-route53recoverycluster 1.8.0 → 1.11.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: bbe03d56412f2885ba66bc86d38cc85896f7d4551d6a4ff461c3412df76349b8
4
- data.tar.gz: 712ba2bb7f051b350d0bda28eb19598bfebdd34918be9a5d84e44b8f1366ce24
3
+ metadata.gz: 2d918ee8cd6ea97c4f0f4b3c6423255a861bc7290a3e231f029b059ecd8ddfe3
4
+ data.tar.gz: dc9c7c02a85eb19394672d0c50b03b83c08ccc7788e418673c76e36a9bbb6f92
5
5
  SHA512:
6
- metadata.gz: d883b995fe1b1d20d509dccfbcd7f12ddc68f445634e93c39e6300d561fa5f90d1d29164380694d8ad1a46749b2924b9775952f20258b1bab2e9cb3fba671aa9
7
- data.tar.gz: 76327a730bec80cdac0b78e4f027378ba25f7e6563db53abdc52ef02c8a1e9720c6b1f44e08b2b5a28d12f0589871df9b9bbd430c852ed8faf878699dbca7819
6
+ metadata.gz: 003d48272edfe2e2c93d2c28c987a1469e7a6e18feedd679d816174062cd8984521491964b3435cb7f473801aa5ec63e62d175541128ccb0103aab8709f06945
7
+ data.tar.gz: 896ceed3341f260bd72fa483637ef2f54a4a21c971b9a7268d5514c03a20120652f289e9aec46e7de9375ab7e06bb984da1df445abc7b2801eda8e4f47141698
data/CHANGELOG.md CHANGED
@@ -1,6 +1,21 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.11.0 (2022-03-31)
5
+ ------------------
6
+
7
+ * Feature - This release adds a new API "ListRoutingControls" to list routing control states using the highly reliable Route 53 ARC data plane endpoints.
8
+
9
+ 1.10.0 (2022-02-28)
10
+ ------------------
11
+
12
+ * Feature - This release adds a new API option to enable overriding safety rules to allow routing control state updates.
13
+
14
+ 1.9.0 (2022-02-24)
15
+ ------------------
16
+
17
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
18
+
4
19
  1.8.0 (2022-02-03)
5
20
  ------------------
6
21
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.8.0
1
+ 1.11.0
@@ -27,6 +27,7 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
30
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
31
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
32
33
  require 'aws-sdk-core/plugins/signature_v4.rb'
@@ -75,6 +76,7 @@ module Aws::Route53RecoveryCluster
75
76
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
76
77
  add_plugin(Aws::Plugins::TransferEncoding)
77
78
  add_plugin(Aws::Plugins::HttpChecksum)
79
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
78
80
  add_plugin(Aws::Plugins::DefaultsMode)
79
81
  add_plugin(Aws::Plugins::RecursionDetection)
80
82
  add_plugin(Aws::Plugins::SignatureV4)
@@ -360,32 +362,49 @@ module Aws::Route53RecoveryCluster
360
362
  # @!group API Operations
361
363
 
362
364
  # Get the state for a routing control. A routing control is a simple
363
- # on/off switch that you can use to route traffic to cells. When the
364
- # state is On, traffic flows to a cell. When it's off, traffic does not
365
- # flow.
365
+ # on/off switch that you can use to route traffic to cells. When a
366
+ # routing control state is On, traffic flows to a cell. When the state
367
+ # is Off, traffic does not flow.
366
368
  #
367
- # Before you can create a routing control, you first must create a
368
- # cluster to host the control. For more information, see
369
- # [CreateCluster][1]. Access one of the endpoints for the cluster to get
370
- # or update the routing control state to redirect traffic.
369
+ # Before you can create a routing control, you must first create a
370
+ # cluster, and then host the control in a control panel on the cluster.
371
+ # For more information, see [ Create routing control structures][1] in
372
+ # the Amazon Route 53 Application Recovery Controller Developer Guide.
373
+ # You access one of the endpoints for the cluster to get or update the
374
+ # routing control state to redirect traffic for your application.
371
375
  #
372
- # For more information about working with routing controls, see [Routing
373
- # control][2] in the Route 53 Application Recovery Controller Developer
374
- # Guide.
376
+ # *You must specify Regional endpoints when you work with API cluster
377
+ # operations to get or update routing control states in Route 53 ARC.*
375
378
  #
379
+ # To see a code example for getting a routing control state, including
380
+ # accessing Regional cluster endpoints in sequence, see [API
381
+ # examples][2] in the Amazon Route 53 Application Recovery Controller
382
+ # Developer Guide.
376
383
  #
384
+ # Learn more about working with routing controls in the following topics
385
+ # in the Amazon Route 53 Application Recovery Controller Developer
386
+ # Guide:
377
387
  #
378
- # [1]: https://docs.aws.amazon.com/recovery-cluster/latest/api/cluster.html
379
- # [2]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html
388
+ # * [ Viewing and updating routing control states][3]
389
+ #
390
+ # * [Working with routing controls in Route 53 ARC][4]
391
+ #
392
+ #
393
+ #
394
+ # [1]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.create.html
395
+ # [2]: https://docs.aws.amazon.com/r53recovery/latest/dg/service_code_examples_actions.html
396
+ # [3]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.update.html
397
+ # [4]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html
380
398
  #
381
399
  # @option params [required, String] :routing_control_arn
382
- # The Amazon Resource Number (ARN) for the routing control that you want
400
+ # The Amazon Resource Name (ARN) for the routing control that you want
383
401
  # to get the state for.
384
402
  #
385
403
  # @return [Types::GetRoutingControlStateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
386
404
  #
387
405
  # * {Types::GetRoutingControlStateResponse#routing_control_arn #routing_control_arn} => String
388
406
  # * {Types::GetRoutingControlStateResponse#routing_control_state #routing_control_state} => String
407
+ # * {Types::GetRoutingControlStateResponse#routing_control_name #routing_control_name} => String
389
408
  #
390
409
  # @example Request syntax with placeholder values
391
410
  #
@@ -397,6 +416,7 @@ module Aws::Route53RecoveryCluster
397
416
  #
398
417
  # resp.routing_control_arn #=> String
399
418
  # resp.routing_control_state #=> String, one of "On", "Off"
419
+ # resp.routing_control_name #=> String
400
420
  #
401
421
  # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/GetRoutingControlState AWS API Documentation
402
422
  #
@@ -407,26 +427,150 @@ module Aws::Route53RecoveryCluster
407
427
  req.send_request(options)
408
428
  end
409
429
 
430
+ # List routing control names and Amazon Resource Names (ARNs), as well
431
+ # as the routing control state for each routing control, along with the
432
+ # control panel name and control panel ARN for the routing controls. If
433
+ # you specify a control panel ARN, this call lists the routing controls
434
+ # in the control panel. Otherwise, it lists all the routing controls in
435
+ # the cluster.
436
+ #
437
+ # A routing control is a simple on/off switch in Route 53 ARC that you
438
+ # can use to route traffic to cells. When a routing control state is On,
439
+ # traffic flows to a cell. When the state is Off, traffic does not flow.
440
+ #
441
+ # Before you can create a routing control, you must first create a
442
+ # cluster, and then host the control in a control panel on the cluster.
443
+ # For more information, see [ Create routing control structures][1] in
444
+ # the Amazon Route 53 Application Recovery Controller Developer Guide.
445
+ # You access one of the endpoints for the cluster to get or update the
446
+ # routing control state to redirect traffic for your application.
447
+ #
448
+ # *You must specify Regional endpoints when you work with API cluster
449
+ # operations to use this API operation to list routing controls in Route
450
+ # 53 ARC.*
451
+ #
452
+ # Learn more about working with routing controls in the following topics
453
+ # in the Amazon Route 53 Application Recovery Controller Developer
454
+ # Guide:
455
+ #
456
+ # * [ Viewing and updating routing control states][2]
457
+ #
458
+ # * [Working with routing controls in Route 53 ARC][3]
459
+ #
460
+ #
461
+ #
462
+ # [1]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.create.html
463
+ # [2]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.update.html
464
+ # [3]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html
465
+ #
466
+ # @option params [String] :control_panel_arn
467
+ # The Amazon Resource Name (ARN) of the control panel of the routing
468
+ # controls to list.
469
+ #
470
+ # @option params [String] :next_token
471
+ # The token for the next set of results. You receive this token from a
472
+ # previous call.
473
+ #
474
+ # @option params [Integer] :max_results
475
+ # The number of routing controls objects that you want to return with
476
+ # this call. The default value is 500.
477
+ #
478
+ # @return [Types::ListRoutingControlsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
479
+ #
480
+ # * {Types::ListRoutingControlsResponse#routing_controls #routing_controls} => Array<Types::RoutingControl>
481
+ # * {Types::ListRoutingControlsResponse#next_token #next_token} => String
482
+ #
483
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
484
+ #
485
+ # @example Request syntax with placeholder values
486
+ #
487
+ # resp = client.list_routing_controls({
488
+ # control_panel_arn: "Arn",
489
+ # next_token: "PageToken",
490
+ # max_results: 1,
491
+ # })
492
+ #
493
+ # @example Response structure
494
+ #
495
+ # resp.routing_controls #=> Array
496
+ # resp.routing_controls[0].control_panel_arn #=> String
497
+ # resp.routing_controls[0].control_panel_name #=> String
498
+ # resp.routing_controls[0].routing_control_arn #=> String
499
+ # resp.routing_controls[0].routing_control_name #=> String
500
+ # resp.routing_controls[0].routing_control_state #=> String, one of "On", "Off"
501
+ # resp.next_token #=> String
502
+ #
503
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/ListRoutingControls AWS API Documentation
504
+ #
505
+ # @overload list_routing_controls(params = {})
506
+ # @param [Hash] params ({})
507
+ def list_routing_controls(params = {}, options = {})
508
+ req = build_request(:list_routing_controls, params)
509
+ req.send_request(options)
510
+ end
511
+
410
512
  # Set the state of the routing control to reroute traffic. You can set
411
513
  # the value to be On or Off. When the state is On, traffic flows to a
412
- # cell. When it's off, traffic does not flow.
514
+ # cell. When the state is Off, traffic does not flow.
515
+ #
516
+ # With Route 53 ARC, you can add safety rules for routing controls,
517
+ # which are safeguards for routing control state updates that help
518
+ # prevent unexpected outcomes, like fail open traffic routing. However,
519
+ # there are scenarios when you might want to bypass the routing control
520
+ # safeguards that are enforced with safety rules that you've
521
+ # configured. For example, you might want to fail over quickly for
522
+ # disaster recovery, and one or more safety rules might be unexpectedly
523
+ # preventing you from updating a routing control state to reroute
524
+ # traffic. In a "break glass" scenario like this, you can override one
525
+ # or more safety rules to change a routing control state and fail over
526
+ # your application.
413
527
  #
414
- # For more information about working with routing controls, see [Routing
415
- # control][1] in the Route 53 Application Recovery Controller Developer
416
- # Guide.
528
+ # The `SafetyRulesToOverride` property enables you override one or more
529
+ # safety rules and update routing control states. For more information,
530
+ # see [ Override safety rules to reroute traffic][1] in the Amazon Route
531
+ # 53 Application Recovery Controller Developer Guide.
417
532
  #
533
+ # *You must specify Regional endpoints when you work with API cluster
534
+ # operations to get or update routing control states in Route 53 ARC.*
418
535
  #
536
+ # To see a code example for getting a routing control state, including
537
+ # accessing Regional cluster endpoints in sequence, see [API
538
+ # examples][2] in the Amazon Route 53 Application Recovery Controller
539
+ # Developer Guide.
419
540
  #
420
- # [1]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html
541
+ # * [ Viewing and updating routing control states][3]
542
+ #
543
+ # * [Working with routing controls overall][4]
544
+ #
545
+ #
546
+ #
547
+ # [1]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.override-safety-rule.html
548
+ # [2]: https://docs.aws.amazon.com/r53recovery/latest/dg/service_code_examples_actions.html
549
+ # [3]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.update.html
550
+ # [4]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html
421
551
  #
422
552
  # @option params [required, String] :routing_control_arn
423
- # The Amazon Resource Number (ARN) for the routing control that you want
553
+ # The Amazon Resource Name (ARN) for the routing control that you want
424
554
  # to update the state for.
425
555
  #
426
556
  # @option params [required, String] :routing_control_state
427
557
  # The state of the routing control. You can set the value to be On or
428
558
  # Off.
429
559
  #
560
+ # @option params [Array<String>] :safety_rules_to_override
561
+ # The Amazon Resource Names (ARNs) for the safety rules that you want to
562
+ # override when you're updating the state of a routing control. You can
563
+ # override one safety rule or multiple safety rules by including one or
564
+ # more ARNs, separated by commas.
565
+ #
566
+ # For more information, see [ Override safety rules to reroute
567
+ # traffic][1] in the Amazon Route 53 Application Recovery Controller
568
+ # Developer Guide.
569
+ #
570
+ #
571
+ #
572
+ # [1]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.override-safety-rule.html
573
+ #
430
574
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
431
575
  #
432
576
  # @example Request syntax with placeholder values
@@ -434,6 +578,7 @@ module Aws::Route53RecoveryCluster
434
578
  # resp = client.update_routing_control_state({
435
579
  # routing_control_arn: "Arn", # required
436
580
  # routing_control_state: "On", # required, accepts On, Off
581
+ # safety_rules_to_override: ["Arn"],
437
582
  # })
438
583
  #
439
584
  # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/UpdateRoutingControlState AWS API Documentation
@@ -447,19 +592,61 @@ module Aws::Route53RecoveryCluster
447
592
 
448
593
  # Set multiple routing control states. You can set the value for each
449
594
  # state to be On or Off. When the state is On, traffic flows to a cell.
450
- # When it's off, traffic does not flow.
595
+ # When it's Off, traffic does not flow.
596
+ #
597
+ # With Route 53 ARC, you can add safety rules for routing controls,
598
+ # which are safeguards for routing control state updates that help
599
+ # prevent unexpected outcomes, like fail open traffic routing. However,
600
+ # there are scenarios when you might want to bypass the routing control
601
+ # safeguards that are enforced with safety rules that you've
602
+ # configured. For example, you might want to fail over quickly for
603
+ # disaster recovery, and one or more safety rules might be unexpectedly
604
+ # preventing you from updating a routing control state to reroute
605
+ # traffic. In a "break glass" scenario like this, you can override one
606
+ # or more safety rules to change a routing control state and fail over
607
+ # your application.
608
+ #
609
+ # The `SafetyRulesToOverride` property enables you override one or more
610
+ # safety rules and update routing control states. For more information,
611
+ # see [ Override safety rules to reroute traffic][1] in the Amazon Route
612
+ # 53 Application Recovery Controller Developer Guide.
613
+ #
614
+ # *You must specify Regional endpoints when you work with API cluster
615
+ # operations to get or update routing control states in Route 53 ARC.*
616
+ #
617
+ # To see a code example for getting a routing control state, including
618
+ # accessing Regional cluster endpoints in sequence, see [API
619
+ # examples][2] in the Amazon Route 53 Application Recovery Controller
620
+ # Developer Guide.
451
621
  #
452
- # For more information about working with routing controls, see [Routing
453
- # control][1] in the Route 53 Application Recovery Controller Developer
454
- # Guide.
622
+ # * [ Viewing and updating routing control states][3]
455
623
  #
624
+ # * [Working with routing controls overall][4]
456
625
  #
457
626
  #
458
- # [1]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html
627
+ #
628
+ # [1]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.override-safety-rule.html
629
+ # [2]: https://docs.aws.amazon.com/r53recovery/latest/dg/service_code_examples_actions.html
630
+ # [3]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.update.html
631
+ # [4]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html
459
632
  #
460
633
  # @option params [required, Array<Types::UpdateRoutingControlStateEntry>] :update_routing_control_state_entries
461
634
  # A set of routing control entries that you want to update.
462
635
  #
636
+ # @option params [Array<String>] :safety_rules_to_override
637
+ # The Amazon Resource Names (ARNs) for the safety rules that you want to
638
+ # override when you're updating routing control states. You can
639
+ # override one safety rule or multiple safety rules by including one or
640
+ # more ARNs, separated by commas.
641
+ #
642
+ # For more information, see [ Override safety rules to reroute
643
+ # traffic][1] in the Amazon Route 53 Application Recovery Controller
644
+ # Developer Guide.
645
+ #
646
+ #
647
+ #
648
+ # [1]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.override-safety-rule.html
649
+ #
463
650
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
464
651
  #
465
652
  # @example Request syntax with placeholder values
@@ -471,6 +658,7 @@ module Aws::Route53RecoveryCluster
471
658
  # routing_control_state: "On", # required, accepts On, Off
472
659
  # },
473
660
  # ],
661
+ # safety_rules_to_override: ["Arn"],
474
662
  # })
475
663
  #
476
664
  # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/UpdateRoutingControlStates AWS API Documentation
@@ -495,7 +683,7 @@ module Aws::Route53RecoveryCluster
495
683
  params: params,
496
684
  config: config)
497
685
  context[:gem_name] = 'aws-sdk-route53recoverycluster'
498
- context[:gem_version] = '1.8.0'
686
+ context[:gem_version] = '1.11.0'
499
687
  Seahorse::Client::Request.new(handlers, context)
500
688
  end
501
689
 
@@ -15,14 +15,24 @@ module Aws::Route53RecoveryCluster
15
15
 
16
16
  AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
17
17
  Arn = Shapes::StringShape.new(name: 'Arn')
18
+ Arns = Shapes::ListShape.new(name: 'Arns')
18
19
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
20
+ ControlPanelName = Shapes::StringShape.new(name: 'ControlPanelName')
19
21
  EndpointTemporarilyUnavailableException = Shapes::StructureShape.new(name: 'EndpointTemporarilyUnavailableException')
20
22
  GetRoutingControlStateRequest = Shapes::StructureShape.new(name: 'GetRoutingControlStateRequest')
21
23
  GetRoutingControlStateResponse = Shapes::StructureShape.new(name: 'GetRoutingControlStateResponse')
22
24
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
25
+ ListRoutingControlsRequest = Shapes::StructureShape.new(name: 'ListRoutingControlsRequest')
26
+ ListRoutingControlsResponse = Shapes::StructureShape.new(name: 'ListRoutingControlsResponse')
27
+ MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
28
+ PageToken = Shapes::StringShape.new(name: 'PageToken')
23
29
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
24
30
  RetryAfterSeconds = Shapes::IntegerShape.new(name: 'RetryAfterSeconds')
31
+ RoutingControl = Shapes::StructureShape.new(name: 'RoutingControl')
32
+ RoutingControlName = Shapes::StringShape.new(name: 'RoutingControlName')
25
33
  RoutingControlState = Shapes::StringShape.new(name: 'RoutingControlState')
34
+ RoutingControls = Shapes::ListShape.new(name: 'RoutingControls')
35
+ ServiceLimitExceededException = Shapes::StructureShape.new(name: 'ServiceLimitExceededException')
26
36
  String = Shapes::StringShape.new(name: 'String')
27
37
  ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
28
38
  UpdateRoutingControlStateEntries = Shapes::ListShape.new(name: 'UpdateRoutingControlStateEntries')
@@ -39,6 +49,8 @@ module Aws::Route53RecoveryCluster
39
49
  AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
40
50
  AccessDeniedException.struct_class = Types::AccessDeniedException
41
51
 
52
+ Arns.member = Shapes::ShapeRef.new(shape: Arn)
53
+
42
54
  ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
43
55
  ConflictException.add_member(:resource_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "resourceId"))
44
56
  ConflictException.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, required: true, location_name: "resourceType"))
@@ -52,17 +64,43 @@ module Aws::Route53RecoveryCluster
52
64
 
53
65
  GetRoutingControlStateResponse.add_member(:routing_control_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "RoutingControlArn"))
54
66
  GetRoutingControlStateResponse.add_member(:routing_control_state, Shapes::ShapeRef.new(shape: RoutingControlState, required: true, location_name: "RoutingControlState"))
67
+ GetRoutingControlStateResponse.add_member(:routing_control_name, Shapes::ShapeRef.new(shape: RoutingControlName, location_name: "RoutingControlName"))
55
68
  GetRoutingControlStateResponse.struct_class = Types::GetRoutingControlStateResponse
56
69
 
57
70
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
58
71
  InternalServerException.add_member(:retry_after_seconds, Shapes::ShapeRef.new(shape: RetryAfterSeconds, location_name: "retryAfterSeconds"))
59
72
  InternalServerException.struct_class = Types::InternalServerException
60
73
 
74
+ ListRoutingControlsRequest.add_member(:control_panel_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "ControlPanelArn"))
75
+ ListRoutingControlsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PageToken, location_name: "NextToken"))
76
+ ListRoutingControlsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults", metadata: {"box"=>true}))
77
+ ListRoutingControlsRequest.struct_class = Types::ListRoutingControlsRequest
78
+
79
+ ListRoutingControlsResponse.add_member(:routing_controls, Shapes::ShapeRef.new(shape: RoutingControls, required: true, location_name: "RoutingControls"))
80
+ ListRoutingControlsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PageToken, location_name: "NextToken"))
81
+ ListRoutingControlsResponse.struct_class = Types::ListRoutingControlsResponse
82
+
61
83
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
62
84
  ResourceNotFoundException.add_member(:resource_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "resourceId"))
63
85
  ResourceNotFoundException.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, required: true, location_name: "resourceType"))
64
86
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
65
87
 
88
+ RoutingControl.add_member(:control_panel_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "ControlPanelArn"))
89
+ RoutingControl.add_member(:control_panel_name, Shapes::ShapeRef.new(shape: ControlPanelName, location_name: "ControlPanelName"))
90
+ RoutingControl.add_member(:routing_control_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "RoutingControlArn"))
91
+ RoutingControl.add_member(:routing_control_name, Shapes::ShapeRef.new(shape: RoutingControlName, location_name: "RoutingControlName"))
92
+ RoutingControl.add_member(:routing_control_state, Shapes::ShapeRef.new(shape: RoutingControlState, location_name: "RoutingControlState"))
93
+ RoutingControl.struct_class = Types::RoutingControl
94
+
95
+ RoutingControls.member = Shapes::ShapeRef.new(shape: RoutingControl)
96
+
97
+ ServiceLimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
98
+ ServiceLimitExceededException.add_member(:resource_id, Shapes::ShapeRef.new(shape: String, location_name: "resourceId"))
99
+ ServiceLimitExceededException.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, location_name: "resourceType"))
100
+ ServiceLimitExceededException.add_member(:limit_code, Shapes::ShapeRef.new(shape: String, required: true, location_name: "limitCode"))
101
+ ServiceLimitExceededException.add_member(:service_code, Shapes::ShapeRef.new(shape: String, required: true, location_name: "serviceCode"))
102
+ ServiceLimitExceededException.struct_class = Types::ServiceLimitExceededException
103
+
66
104
  ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
67
105
  ThrottlingException.add_member(:retry_after_seconds, Shapes::ShapeRef.new(shape: RetryAfterSeconds, location_name: "retryAfterSeconds"))
68
106
  ThrottlingException.struct_class = Types::ThrottlingException
@@ -75,11 +113,13 @@ module Aws::Route53RecoveryCluster
75
113
 
76
114
  UpdateRoutingControlStateRequest.add_member(:routing_control_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "RoutingControlArn"))
77
115
  UpdateRoutingControlStateRequest.add_member(:routing_control_state, Shapes::ShapeRef.new(shape: RoutingControlState, required: true, location_name: "RoutingControlState"))
116
+ UpdateRoutingControlStateRequest.add_member(:safety_rules_to_override, Shapes::ShapeRef.new(shape: Arns, location_name: "SafetyRulesToOverride"))
78
117
  UpdateRoutingControlStateRequest.struct_class = Types::UpdateRoutingControlStateRequest
79
118
 
80
119
  UpdateRoutingControlStateResponse.struct_class = Types::UpdateRoutingControlStateResponse
81
120
 
82
121
  UpdateRoutingControlStatesRequest.add_member(:update_routing_control_state_entries, Shapes::ShapeRef.new(shape: UpdateRoutingControlStateEntries, required: true, location_name: "UpdateRoutingControlStateEntries"))
122
+ UpdateRoutingControlStatesRequest.add_member(:safety_rules_to_override, Shapes::ShapeRef.new(shape: Arns, location_name: "SafetyRulesToOverride"))
83
123
  UpdateRoutingControlStatesRequest.struct_class = Types::UpdateRoutingControlStatesRequest
84
124
 
85
125
  UpdateRoutingControlStatesResponse.struct_class = Types::UpdateRoutingControlStatesResponse
@@ -128,6 +168,26 @@ module Aws::Route53RecoveryCluster
128
168
  o.errors << Shapes::ShapeRef.new(shape: EndpointTemporarilyUnavailableException)
129
169
  end)
130
170
 
171
+ api.add_operation(:list_routing_controls, Seahorse::Model::Operation.new.tap do |o|
172
+ o.name = "ListRoutingControls"
173
+ o.http_method = "POST"
174
+ o.http_request_uri = "/"
175
+ o.input = Shapes::ShapeRef.new(shape: ListRoutingControlsRequest)
176
+ o.output = Shapes::ShapeRef.new(shape: ListRoutingControlsResponse)
177
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
178
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
179
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
180
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
181
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
182
+ o.errors << Shapes::ShapeRef.new(shape: EndpointTemporarilyUnavailableException)
183
+ o[:pager] = Aws::Pager.new(
184
+ limit_key: "max_results",
185
+ tokens: {
186
+ "next_token" => "next_token"
187
+ }
188
+ )
189
+ end)
190
+
131
191
  api.add_operation(:update_routing_control_state, Seahorse::Model::Operation.new.tap do |o|
132
192
  o.name = "UpdateRoutingControlState"
133
193
  o.http_method = "POST"
@@ -156,6 +216,7 @@ module Aws::Route53RecoveryCluster
156
216
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
157
217
  o.errors << Shapes::ShapeRef.new(shape: EndpointTemporarilyUnavailableException)
158
218
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
219
+ o.errors << Shapes::ShapeRef.new(shape: ServiceLimitExceededException)
159
220
  end)
160
221
  end
161
222
 
@@ -32,6 +32,7 @@ module Aws::Route53RecoveryCluster
32
32
  # * {EndpointTemporarilyUnavailableException}
33
33
  # * {InternalServerException}
34
34
  # * {ResourceNotFoundException}
35
+ # * {ServiceLimitExceededException}
35
36
  # * {ThrottlingException}
36
37
  # * {ValidationException}
37
38
  #
@@ -141,6 +142,41 @@ module Aws::Route53RecoveryCluster
141
142
  end
142
143
  end
143
144
 
145
+ class ServiceLimitExceededException < ServiceError
146
+
147
+ # @param [Seahorse::Client::RequestContext] context
148
+ # @param [String] message
149
+ # @param [Aws::Route53RecoveryCluster::Types::ServiceLimitExceededException] data
150
+ def initialize(context, message, data = Aws::EmptyStructure.new)
151
+ super(context, message, data)
152
+ end
153
+
154
+ # @return [String]
155
+ def message
156
+ @message || @data[:message]
157
+ end
158
+
159
+ # @return [String]
160
+ def resource_id
161
+ @data[:resource_id]
162
+ end
163
+
164
+ # @return [String]
165
+ def resource_type
166
+ @data[:resource_type]
167
+ end
168
+
169
+ # @return [String]
170
+ def limit_code
171
+ @data[:limit_code]
172
+ end
173
+
174
+ # @return [String]
175
+ def service_code
176
+ @data[:service_code]
177
+ end
178
+ end
179
+
144
180
  class ThrottlingException < ServiceError
145
181
 
146
182
  # @param [Seahorse::Client::RequestContext] context
@@ -10,8 +10,7 @@
10
10
  module Aws::Route53RecoveryCluster
11
11
  module Types
12
12
 
13
- # You don't have sufficient permissions to query the routing control
14
- # state.
13
+ # You don't have sufficient permissions to perform this action.
15
14
  #
16
15
  # @!attribute [rw] message
17
16
  # @return [String]
@@ -69,8 +68,8 @@ module Aws::Route53RecoveryCluster
69
68
  # }
70
69
  #
71
70
  # @!attribute [rw] routing_control_arn
72
- # The Amazon Resource Number (ARN) for the routing control that you
73
- # want to get the state for.
71
+ # The Amazon Resource Name (ARN) for the routing control that you want
72
+ # to get the state for.
74
73
  # @return [String]
75
74
  #
76
75
  # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/GetRoutingControlStateRequest AWS API Documentation
@@ -82,18 +81,23 @@ module Aws::Route53RecoveryCluster
82
81
  end
83
82
 
84
83
  # @!attribute [rw] routing_control_arn
85
- # The Amazon Resource Number (ARN) of the response.
84
+ # The Amazon Resource Name (ARN) of the response.
86
85
  # @return [String]
87
86
  #
88
87
  # @!attribute [rw] routing_control_state
89
88
  # The state of the routing control.
90
89
  # @return [String]
91
90
  #
91
+ # @!attribute [rw] routing_control_name
92
+ # The routing control name.
93
+ # @return [String]
94
+ #
92
95
  # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/GetRoutingControlStateResponse AWS API Documentation
93
96
  #
94
97
  class GetRoutingControlStateResponse < Struct.new(
95
98
  :routing_control_arn,
96
- :routing_control_state)
99
+ :routing_control_state,
100
+ :routing_control_name)
97
101
  SENSITIVE = []
98
102
  include Aws::Structure
99
103
  end
@@ -116,7 +120,60 @@ module Aws::Route53RecoveryCluster
116
120
  include Aws::Structure
117
121
  end
118
122
 
119
- # The request references a routing control that was not found.
123
+ # @note When making an API call, you may pass ListRoutingControlsRequest
124
+ # data as a hash:
125
+ #
126
+ # {
127
+ # control_panel_arn: "Arn",
128
+ # next_token: "PageToken",
129
+ # max_results: 1,
130
+ # }
131
+ #
132
+ # @!attribute [rw] control_panel_arn
133
+ # The Amazon Resource Name (ARN) of the control panel of the routing
134
+ # controls to list.
135
+ # @return [String]
136
+ #
137
+ # @!attribute [rw] next_token
138
+ # The token for the next set of results. You receive this token from a
139
+ # previous call.
140
+ # @return [String]
141
+ #
142
+ # @!attribute [rw] max_results
143
+ # The number of routing controls objects that you want to return with
144
+ # this call. The default value is 500.
145
+ # @return [Integer]
146
+ #
147
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/ListRoutingControlsRequest AWS API Documentation
148
+ #
149
+ class ListRoutingControlsRequest < Struct.new(
150
+ :control_panel_arn,
151
+ :next_token,
152
+ :max_results)
153
+ SENSITIVE = []
154
+ include Aws::Structure
155
+ end
156
+
157
+ # @!attribute [rw] routing_controls
158
+ # The list of routing controls.
159
+ # @return [Array<Types::RoutingControl>]
160
+ #
161
+ # @!attribute [rw] next_token
162
+ # The token for the next set of results. You receive this token from a
163
+ # previous call.
164
+ # @return [String]
165
+ #
166
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/ListRoutingControlsResponse AWS API Documentation
167
+ #
168
+ class ListRoutingControlsResponse < Struct.new(
169
+ :routing_controls,
170
+ :next_token)
171
+ SENSITIVE = []
172
+ include Aws::Structure
173
+ end
174
+
175
+ # The request references a routing control or control panel that was not
176
+ # found.
120
177
  #
121
178
  # @!attribute [rw] message
122
179
  # @return [String]
@@ -139,6 +196,79 @@ module Aws::Route53RecoveryCluster
139
196
  include Aws::Structure
140
197
  end
141
198
 
199
+ # A routing control, which is a simple on/off switch that you can use to
200
+ # route traffic to cells. When a routing control state is On, traffic
201
+ # flows to a cell. When the state is Off, traffic does not flow.
202
+ #
203
+ # @!attribute [rw] control_panel_arn
204
+ # The Amazon Resource Name (ARN) of the control panel where the
205
+ # routing control is located.
206
+ # @return [String]
207
+ #
208
+ # @!attribute [rw] control_panel_name
209
+ # The name of the control panel where the routing control is located.
210
+ # @return [String]
211
+ #
212
+ # @!attribute [rw] routing_control_arn
213
+ # The Amazon Resource Name (ARN) of the routing control.
214
+ # @return [String]
215
+ #
216
+ # @!attribute [rw] routing_control_name
217
+ # The name of the routing control.
218
+ # @return [String]
219
+ #
220
+ # @!attribute [rw] routing_control_state
221
+ # The current state of the routing control. When a routing control
222
+ # state is On, traffic flows to a cell. When the state is Off, traffic
223
+ # does not flow.
224
+ # @return [String]
225
+ #
226
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/RoutingControl AWS API Documentation
227
+ #
228
+ class RoutingControl < Struct.new(
229
+ :control_panel_arn,
230
+ :control_panel_name,
231
+ :routing_control_arn,
232
+ :routing_control_name,
233
+ :routing_control_state)
234
+ SENSITIVE = []
235
+ include Aws::Structure
236
+ end
237
+
238
+ # The request can't update that many routing control states at the same
239
+ # time. Try again with fewer routing control states.
240
+ #
241
+ # @!attribute [rw] message
242
+ # @return [String]
243
+ #
244
+ # @!attribute [rw] resource_id
245
+ # The resource identifier of the limit that was exceeded.
246
+ # @return [String]
247
+ #
248
+ # @!attribute [rw] resource_type
249
+ # The resource type of the limit that was exceeded.
250
+ # @return [String]
251
+ #
252
+ # @!attribute [rw] limit_code
253
+ # The code of the limit that was exceeded.
254
+ # @return [String]
255
+ #
256
+ # @!attribute [rw] service_code
257
+ # The service code of the limit that was exceeded.
258
+ # @return [String]
259
+ #
260
+ # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/ServiceLimitExceededException AWS API Documentation
261
+ #
262
+ class ServiceLimitExceededException < Struct.new(
263
+ :message,
264
+ :resource_id,
265
+ :resource_type,
266
+ :limit_code,
267
+ :service_code)
268
+ SENSITIVE = []
269
+ include Aws::Structure
270
+ end
271
+
142
272
  # The request was denied because of request throttling.
143
273
  #
144
274
  # @!attribute [rw] message
@@ -157,7 +287,7 @@ module Aws::Route53RecoveryCluster
157
287
  include Aws::Structure
158
288
  end
159
289
 
160
- # A routing control state.
290
+ # A routing control state entry.
161
291
  #
162
292
  # @note When making an API call, you may pass UpdateRoutingControlStateEntry
163
293
  # data as a hash:
@@ -168,8 +298,7 @@ module Aws::Route53RecoveryCluster
168
298
  # }
169
299
  #
170
300
  # @!attribute [rw] routing_control_arn
171
- # The Amazon Resource Number (ARN) for the routing control state
172
- # entry.
301
+ # The Amazon Resource Name (ARN) for a routing control state entry.
173
302
  # @return [String]
174
303
  #
175
304
  # @!attribute [rw] routing_control_state
@@ -191,11 +320,12 @@ module Aws::Route53RecoveryCluster
191
320
  # {
192
321
  # routing_control_arn: "Arn", # required
193
322
  # routing_control_state: "On", # required, accepts On, Off
323
+ # safety_rules_to_override: ["Arn"],
194
324
  # }
195
325
  #
196
326
  # @!attribute [rw] routing_control_arn
197
- # The Amazon Resource Number (ARN) for the routing control that you
198
- # want to update the state for.
327
+ # The Amazon Resource Name (ARN) for the routing control that you want
328
+ # to update the state for.
199
329
  # @return [String]
200
330
  #
201
331
  # @!attribute [rw] routing_control_state
@@ -203,11 +333,27 @@ module Aws::Route53RecoveryCluster
203
333
  # Off.
204
334
  # @return [String]
205
335
  #
336
+ # @!attribute [rw] safety_rules_to_override
337
+ # The Amazon Resource Names (ARNs) for the safety rules that you want
338
+ # to override when you're updating the state of a routing control.
339
+ # You can override one safety rule or multiple safety rules by
340
+ # including one or more ARNs, separated by commas.
341
+ #
342
+ # For more information, see [ Override safety rules to reroute
343
+ # traffic][1] in the Amazon Route 53 Application Recovery Controller
344
+ # Developer Guide.
345
+ #
346
+ #
347
+ #
348
+ # [1]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.override-safety-rule.html
349
+ # @return [Array<String>]
350
+ #
206
351
  # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/UpdateRoutingControlStateRequest AWS API Documentation
207
352
  #
208
353
  class UpdateRoutingControlStateRequest < Struct.new(
209
354
  :routing_control_arn,
210
- :routing_control_state)
355
+ :routing_control_state,
356
+ :safety_rules_to_override)
211
357
  SENSITIVE = []
212
358
  include Aws::Structure
213
359
  end
@@ -226,16 +372,33 @@ module Aws::Route53RecoveryCluster
226
372
  # routing_control_state: "On", # required, accepts On, Off
227
373
  # },
228
374
  # ],
375
+ # safety_rules_to_override: ["Arn"],
229
376
  # }
230
377
  #
231
378
  # @!attribute [rw] update_routing_control_state_entries
232
379
  # A set of routing control entries that you want to update.
233
380
  # @return [Array<Types::UpdateRoutingControlStateEntry>]
234
381
  #
382
+ # @!attribute [rw] safety_rules_to_override
383
+ # The Amazon Resource Names (ARNs) for the safety rules that you want
384
+ # to override when you're updating routing control states. You can
385
+ # override one safety rule or multiple safety rules by including one
386
+ # or more ARNs, separated by commas.
387
+ #
388
+ # For more information, see [ Override safety rules to reroute
389
+ # traffic][1] in the Amazon Route 53 Application Recovery Controller
390
+ # Developer Guide.
391
+ #
392
+ #
393
+ #
394
+ # [1]: https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.override-safety-rule.html
395
+ # @return [Array<String>]
396
+ #
235
397
  # @see http://docs.aws.amazon.com/goto/WebAPI/route53-recovery-cluster-2019-12-02/UpdateRoutingControlStatesRequest AWS API Documentation
236
398
  #
237
399
  class UpdateRoutingControlStatesRequest < Struct.new(
238
- :update_routing_control_state_entries)
400
+ :update_routing_control_state_entries,
401
+ :safety_rules_to_override)
239
402
  SENSITIVE = []
240
403
  include Aws::Structure
241
404
  end
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-route53recoverycluster/customizations'
48
48
  # @!group service
49
49
  module Aws::Route53RecoveryCluster
50
50
 
51
- GEM_VERSION = '1.8.0'
51
+ GEM_VERSION = '1.11.0'
52
52
 
53
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-route53recoverycluster
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.0
4
+ version: 1.11.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-03 00:00:00.000000000 Z
11
+ date: 2022-03-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.126.0
22
+ version: 3.127.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.126.0
32
+ version: 3.127.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement