aws-sdk-arcregionswitch 1.0.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.
@@ -0,0 +1,2253 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::ARCRegionswitch
11
+ module Types
12
+
13
+ # A summarized representation of a plan execution. This structure
14
+ # contains key information about an execution without all the detailed
15
+ # step data.
16
+ #
17
+ # @!attribute [rw] plan_arn
18
+ # The Amazon Resource Name (ARN) of the plan.
19
+ # @return [String]
20
+ #
21
+ # @!attribute [rw] execution_id
22
+ # The execution identifier of a plan execution.
23
+ # @return [String]
24
+ #
25
+ # @!attribute [rw] version
26
+ # The version for the plan.
27
+ # @return [String]
28
+ #
29
+ # @!attribute [rw] updated_at
30
+ # The timestamp when the plan execution was last updated.
31
+ # @return [Time]
32
+ #
33
+ # @!attribute [rw] comment
34
+ # An optional comment about the plan execution.
35
+ # @return [String]
36
+ #
37
+ # @!attribute [rw] start_time
38
+ # The timestamp when the plan execution was started.
39
+ # @return [Time]
40
+ #
41
+ # @!attribute [rw] end_time
42
+ # The timestamp when the plan execution was ended.
43
+ # @return [Time]
44
+ #
45
+ # @!attribute [rw] mode
46
+ # The plan execution mode. Valid values are `Practice`, for testing
47
+ # without making actual changes, or `Recovery`, for actual traffic
48
+ # shifting and application recovery.
49
+ # @return [String]
50
+ #
51
+ # @!attribute [rw] execution_state
52
+ # The plan execution state. Provides the state of a plan execution,
53
+ # for example, In Progress or Paused by Operator.
54
+ # @return [String]
55
+ #
56
+ # @!attribute [rw] execution_action
57
+ # The plan execution action. Valid values are `Activate`, to activate
58
+ # an Amazon Web Services Region, or `Deactivate`, to deactivate a
59
+ # Region.
60
+ # @return [String]
61
+ #
62
+ # @!attribute [rw] execution_region
63
+ # The Amazon Web Services Region for a plan execution.
64
+ # @return [String]
65
+ #
66
+ # @!attribute [rw] actual_recovery_time
67
+ # The actual recovery time that Region switch calculates for a plan
68
+ # execution. Actual recovery time includes the time for the plan to
69
+ # run added to the time elapsed until the application health alarms
70
+ # that you've specified are healthy again.
71
+ # @return [String]
72
+ #
73
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/AbbreviatedExecution AWS API Documentation
74
+ #
75
+ class AbbreviatedExecution < Struct.new(
76
+ :plan_arn,
77
+ :execution_id,
78
+ :version,
79
+ :updated_at,
80
+ :comment,
81
+ :start_time,
82
+ :end_time,
83
+ :mode,
84
+ :execution_state,
85
+ :execution_action,
86
+ :execution_region,
87
+ :actual_recovery_time)
88
+ SENSITIVE = []
89
+ include Aws::Structure
90
+ end
91
+
92
+ # A summarized representation of a Region switch plan. This structure
93
+ # contains key information about a plan without all the detailed
94
+ # workflow and step data.
95
+ #
96
+ # @!attribute [rw] arn
97
+ # The Amazon Resource Name (ARN) of the Region switch plan.
98
+ # @return [String]
99
+ #
100
+ # @!attribute [rw] owner
101
+ # The owner of a Region switch plan.
102
+ # @return [String]
103
+ #
104
+ # @!attribute [rw] name
105
+ # The name of a Region switch plan.
106
+ # @return [String]
107
+ #
108
+ # @!attribute [rw] regions
109
+ # The Amazon Web Services Region specified for a Region switch plan.
110
+ # @return [Array<String>]
111
+ #
112
+ # @!attribute [rw] recovery_approach
113
+ # The recovery approach for a Region switch plan, which can be
114
+ # active/active (activeActive) or active/passive (activePassive).
115
+ # @return [String]
116
+ #
117
+ # @!attribute [rw] primary_region
118
+ # The primary Region for a plan.
119
+ # @return [String]
120
+ #
121
+ # @!attribute [rw] version
122
+ # The version for the plan.
123
+ # @return [String]
124
+ #
125
+ # @!attribute [rw] updated_at
126
+ # The timestamp when the plan execution was last updated.
127
+ # @return [Time]
128
+ #
129
+ # @!attribute [rw] description
130
+ # The description of a Region switch plan.
131
+ # @return [String]
132
+ #
133
+ # @!attribute [rw] execution_role
134
+ # The execution role is a way to categorize a Region switch plan.
135
+ # @return [String]
136
+ #
137
+ # @!attribute [rw] active_plan_execution
138
+ # Specifies if this is the active plan execution at this time.
139
+ # @return [String]
140
+ #
141
+ # @!attribute [rw] recovery_time_objective_minutes
142
+ # The recovery time objective that you've specified.
143
+ # @return [Integer]
144
+ #
145
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/AbbreviatedPlan AWS API Documentation
146
+ #
147
+ class AbbreviatedPlan < Struct.new(
148
+ :arn,
149
+ :owner,
150
+ :name,
151
+ :regions,
152
+ :recovery_approach,
153
+ :primary_region,
154
+ :version,
155
+ :updated_at,
156
+ :description,
157
+ :execution_role,
158
+ :active_plan_execution,
159
+ :recovery_time_objective_minutes)
160
+ SENSITIVE = []
161
+ include Aws::Structure
162
+ end
163
+
164
+ # You do not have sufficient access to perform this action.
165
+ #
166
+ # HTTP Status Code: 403
167
+ #
168
+ # @!attribute [rw] message
169
+ # @return [String]
170
+ #
171
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/AccessDeniedException AWS API Documentation
172
+ #
173
+ class AccessDeniedException < Struct.new(
174
+ :message)
175
+ SENSITIVE = []
176
+ include Aws::Structure
177
+ end
178
+
179
+ # @!attribute [rw] plan_arn
180
+ # The Amazon Resource Name (ARN) of the plan.
181
+ # @return [String]
182
+ #
183
+ # @!attribute [rw] execution_id
184
+ # The execution identifier of a plan execution.
185
+ # @return [String]
186
+ #
187
+ # @!attribute [rw] step_name
188
+ # The name of a step in a plan execution.
189
+ # @return [String]
190
+ #
191
+ # @!attribute [rw] approval
192
+ # The status of approval for a plan execution step.
193
+ # @return [String]
194
+ #
195
+ # @!attribute [rw] comment
196
+ # A comment that you can enter about a plan execution.
197
+ # @return [String]
198
+ #
199
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ApprovePlanExecutionStepRequest AWS API Documentation
200
+ #
201
+ class ApprovePlanExecutionStepRequest < Struct.new(
202
+ :plan_arn,
203
+ :execution_id,
204
+ :step_name,
205
+ :approval,
206
+ :comment)
207
+ SENSITIVE = []
208
+ include Aws::Structure
209
+ end
210
+
211
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ApprovePlanExecutionStepResponse AWS API Documentation
212
+ #
213
+ class ApprovePlanExecutionStepResponse < Aws::EmptyStructure; end
214
+
215
+ # Configuration for ARC routing controls used in a Region switch plan.
216
+ # Routing controls are simple on/off switches that you can use to shift
217
+ # traffic away from an impaired Region.
218
+ #
219
+ # @!attribute [rw] timeout_minutes
220
+ # The timeout value specified for the configuration.
221
+ # @return [Integer]
222
+ #
223
+ # @!attribute [rw] cross_account_role
224
+ # The cross account role for the configuration.
225
+ # @return [String]
226
+ #
227
+ # @!attribute [rw] external_id
228
+ # The external ID (secret key) for the configuration.
229
+ # @return [String]
230
+ #
231
+ # @!attribute [rw] region_and_routing_controls
232
+ # The Region and ARC routing controls for the configuration.
233
+ # @return [Hash<String,Array<Types::ArcRoutingControlState>>]
234
+ #
235
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ArcRoutingControlConfiguration AWS API Documentation
236
+ #
237
+ class ArcRoutingControlConfiguration < Struct.new(
238
+ :timeout_minutes,
239
+ :cross_account_role,
240
+ :external_id,
241
+ :region_and_routing_controls)
242
+ SENSITIVE = []
243
+ include Aws::Structure
244
+ end
245
+
246
+ # Represents the state of an ARC routing control.
247
+ #
248
+ # @!attribute [rw] routing_control_arn
249
+ # The Amazon Resource Name (ARN) of a routing control.
250
+ # @return [String]
251
+ #
252
+ # @!attribute [rw] state
253
+ # The state of an ARC routing control, On or Off.
254
+ # @return [String]
255
+ #
256
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ArcRoutingControlState AWS API Documentation
257
+ #
258
+ class ArcRoutingControlState < Struct.new(
259
+ :routing_control_arn,
260
+ :state)
261
+ SENSITIVE = []
262
+ include Aws::Structure
263
+ end
264
+
265
+ # Configuration for an Amazon EC2 Auto Scaling group used in a Region
266
+ # switch plan.
267
+ #
268
+ # @!attribute [rw] cross_account_role
269
+ # The cross account role for the configuration.
270
+ # @return [String]
271
+ #
272
+ # @!attribute [rw] external_id
273
+ # The external ID (secret key) for the configuration.
274
+ # @return [String]
275
+ #
276
+ # @!attribute [rw] arn
277
+ # The Amazon Resource Name (ARN) of the EC2 Auto Scaling group.
278
+ # @return [String]
279
+ #
280
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/Asg AWS API Documentation
281
+ #
282
+ class Asg < Struct.new(
283
+ :cross_account_role,
284
+ :external_id,
285
+ :arn)
286
+ SENSITIVE = []
287
+ include Aws::Structure
288
+ end
289
+
290
+ # An Amazon CloudWatch alarm associated with a Region switch plan. These
291
+ # alarms can be used to trigger automatic execution of the plan.
292
+ #
293
+ # @!attribute [rw] cross_account_role
294
+ # The cross account role for the configuration.
295
+ # @return [String]
296
+ #
297
+ # @!attribute [rw] external_id
298
+ # The external ID (secret key) for the configuration.
299
+ # @return [String]
300
+ #
301
+ # @!attribute [rw] resource_identifier
302
+ # The resource identifier for alarms that you associate with a plan.
303
+ # @return [String]
304
+ #
305
+ # @!attribute [rw] alarm_type
306
+ # The alarm type for an associated alarm. An associated CloudWatch
307
+ # alarm can be an application health alarm or a trigger alarm.
308
+ # @return [String]
309
+ #
310
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/AssociatedAlarm AWS API Documentation
311
+ #
312
+ class AssociatedAlarm < Struct.new(
313
+ :cross_account_role,
314
+ :external_id,
315
+ :resource_identifier,
316
+ :alarm_type)
317
+ SENSITIVE = []
318
+ include Aws::Structure
319
+ end
320
+
321
+ # @!attribute [rw] plan_arn
322
+ # The Amazon Resource Name (ARN) of the plan.
323
+ # @return [String]
324
+ #
325
+ # @!attribute [rw] execution_id
326
+ # The execution identifier of a plan execution.
327
+ # @return [String]
328
+ #
329
+ # @!attribute [rw] comment
330
+ # A comment that you can enter about canceling a plan execution step.
331
+ # @return [String]
332
+ #
333
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/CancelPlanExecutionRequest AWS API Documentation
334
+ #
335
+ class CancelPlanExecutionRequest < Struct.new(
336
+ :plan_arn,
337
+ :execution_id,
338
+ :comment)
339
+ SENSITIVE = []
340
+ include Aws::Structure
341
+ end
342
+
343
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/CancelPlanExecutionResponse AWS API Documentation
344
+ #
345
+ class CancelPlanExecutionResponse < Aws::EmptyStructure; end
346
+
347
+ # @!attribute [rw] description
348
+ # The description of a Region switch plan.
349
+ # @return [String]
350
+ #
351
+ # @!attribute [rw] workflows
352
+ # An array of workflows included in a Region switch plan.
353
+ # @return [Array<Types::Workflow>]
354
+ #
355
+ # @!attribute [rw] execution_role
356
+ # An execution role is a way to categorize a Region switch plan.
357
+ # @return [String]
358
+ #
359
+ # @!attribute [rw] recovery_time_objective_minutes
360
+ # Optionally, you can specify an recovery time objective for a Region
361
+ # switch plan, in minutes.
362
+ # @return [Integer]
363
+ #
364
+ # @!attribute [rw] associated_alarms
365
+ # The alarms associated with a Region switch plan.
366
+ # @return [Hash<String,Types::AssociatedAlarm>]
367
+ #
368
+ # @!attribute [rw] triggers
369
+ # The triggers associated with a Region switch plan.
370
+ # @return [Array<Types::Trigger>]
371
+ #
372
+ # @!attribute [rw] name
373
+ # The name of a Region switch plan.
374
+ # @return [String]
375
+ #
376
+ # @!attribute [rw] regions
377
+ # An array that specifies the Amazon Web Services Regions for a Region
378
+ # switch plan. Specify two Regions.
379
+ # @return [Array<String>]
380
+ #
381
+ # @!attribute [rw] recovery_approach
382
+ # The recovery approach for a Region switch plan, which can be
383
+ # active/active (activeActive) or active/passive (activePassive).
384
+ # @return [String]
385
+ #
386
+ # @!attribute [rw] primary_region
387
+ # The primary Amazon Web Services Region for the application. This is
388
+ # the Region where the application normally runs before any Region
389
+ # switch occurs.
390
+ # @return [String]
391
+ #
392
+ # @!attribute [rw] tags
393
+ # The tags to apply to the Region switch plan.
394
+ # @return [Hash<String,String>]
395
+ #
396
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/CreatePlanRequest AWS API Documentation
397
+ #
398
+ class CreatePlanRequest < Struct.new(
399
+ :description,
400
+ :workflows,
401
+ :execution_role,
402
+ :recovery_time_objective_minutes,
403
+ :associated_alarms,
404
+ :triggers,
405
+ :name,
406
+ :regions,
407
+ :recovery_approach,
408
+ :primary_region,
409
+ :tags)
410
+ SENSITIVE = []
411
+ include Aws::Structure
412
+ end
413
+
414
+ # @!attribute [rw] plan
415
+ # The details of the created Region switch plan.
416
+ # @return [Types::Plan]
417
+ #
418
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/CreatePlanResponse AWS API Documentation
419
+ #
420
+ class CreatePlanResponse < Struct.new(
421
+ :plan)
422
+ SENSITIVE = []
423
+ include Aws::Structure
424
+ end
425
+
426
+ # Configuration for Amazon Web Services Lambda functions that perform
427
+ # custom actions during a Region switch.
428
+ #
429
+ # @!attribute [rw] timeout_minutes
430
+ # The timeout value specified for the configuration.
431
+ # @return [Integer]
432
+ #
433
+ # @!attribute [rw] lambdas
434
+ # The Amazon Web Services Lambda functions for the execution block.
435
+ # @return [Array<Types::Lambdas>]
436
+ #
437
+ # @!attribute [rw] retry_interval_minutes
438
+ # The retry interval specified.
439
+ # @return [Float]
440
+ #
441
+ # @!attribute [rw] region_to_run
442
+ # The Amazon Web Services Region for the function to run in.
443
+ # @return [String]
444
+ #
445
+ # @!attribute [rw] ungraceful
446
+ # The settings for ungraceful execution.
447
+ # @return [Types::LambdaUngraceful]
448
+ #
449
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/CustomActionLambdaConfiguration AWS API Documentation
450
+ #
451
+ class CustomActionLambdaConfiguration < Struct.new(
452
+ :timeout_minutes,
453
+ :lambdas,
454
+ :retry_interval_minutes,
455
+ :region_to_run,
456
+ :ungraceful)
457
+ SENSITIVE = []
458
+ include Aws::Structure
459
+ end
460
+
461
+ # @!attribute [rw] arn
462
+ # The Amazon Resource Name (ARN) of the plan.
463
+ # @return [String]
464
+ #
465
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/DeletePlanRequest AWS API Documentation
466
+ #
467
+ class DeletePlanRequest < Struct.new(
468
+ :arn)
469
+ SENSITIVE = []
470
+ include Aws::Structure
471
+ end
472
+
473
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/DeletePlanResponse AWS API Documentation
474
+ #
475
+ class DeletePlanResponse < Aws::EmptyStructure; end
476
+
477
+ # Configuration for increasing the capacity of Amazon EC2 Auto Scaling
478
+ # groups during a Region switch.
479
+ #
480
+ # @!attribute [rw] timeout_minutes
481
+ # The timeout value specified for the configuration.
482
+ # @return [Integer]
483
+ #
484
+ # @!attribute [rw] asgs
485
+ # The EC2 Auto Scaling groups for the configuration.
486
+ # @return [Array<Types::Asg>]
487
+ #
488
+ # @!attribute [rw] ungraceful
489
+ # The settings for ungraceful execution.
490
+ # @return [Types::Ec2Ungraceful]
491
+ #
492
+ # @!attribute [rw] target_percent
493
+ # The target percentage that you specify for EC2 Auto Scaling groups.
494
+ # @return [Integer]
495
+ #
496
+ # @!attribute [rw] capacity_monitoring_approach
497
+ # The monitoring approach that you specify EC2 Auto Scaling groups for
498
+ # the configuration.
499
+ # @return [String]
500
+ #
501
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/Ec2AsgCapacityIncreaseConfiguration AWS API Documentation
502
+ #
503
+ class Ec2AsgCapacityIncreaseConfiguration < Struct.new(
504
+ :timeout_minutes,
505
+ :asgs,
506
+ :ungraceful,
507
+ :target_percent,
508
+ :capacity_monitoring_approach)
509
+ SENSITIVE = []
510
+ include Aws::Structure
511
+ end
512
+
513
+ # Configuration for handling failures when performing operations on EC2
514
+ # resources.
515
+ #
516
+ # @!attribute [rw] minimum_success_percentage
517
+ # The minimum success percentage that you specify for EC2 Auto Scaling
518
+ # groups.
519
+ # @return [Integer]
520
+ #
521
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/Ec2Ungraceful AWS API Documentation
522
+ #
523
+ class Ec2Ungraceful < Struct.new(
524
+ :minimum_success_percentage)
525
+ SENSITIVE = []
526
+ include Aws::Structure
527
+ end
528
+
529
+ # The configuration for an Amazon Web Services ECS capacity increase.
530
+ #
531
+ # @!attribute [rw] timeout_minutes
532
+ # The timeout value specified for the configuration.
533
+ # @return [Integer]
534
+ #
535
+ # @!attribute [rw] services
536
+ # The services specified for the configuration.
537
+ # @return [Array<Types::Service>]
538
+ #
539
+ # @!attribute [rw] ungraceful
540
+ # The settings for ungraceful execution.
541
+ # @return [Types::EcsUngraceful]
542
+ #
543
+ # @!attribute [rw] target_percent
544
+ # The target percentage specified for the configuration.
545
+ # @return [Integer]
546
+ #
547
+ # @!attribute [rw] capacity_monitoring_approach
548
+ # The monitoring approach specified for the configuration, for
549
+ # example, `Most_Recent`.
550
+ # @return [String]
551
+ #
552
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/EcsCapacityIncreaseConfiguration AWS API Documentation
553
+ #
554
+ class EcsCapacityIncreaseConfiguration < Struct.new(
555
+ :timeout_minutes,
556
+ :services,
557
+ :ungraceful,
558
+ :target_percent,
559
+ :capacity_monitoring_approach)
560
+ SENSITIVE = []
561
+ include Aws::Structure
562
+ end
563
+
564
+ # The settings for ungraceful execution.
565
+ #
566
+ # @!attribute [rw] minimum_success_percentage
567
+ # The minimum success percentage specified for the configuration.
568
+ # @return [Integer]
569
+ #
570
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/EcsUngraceful AWS API Documentation
571
+ #
572
+ class EcsUngraceful < Struct.new(
573
+ :minimum_success_percentage)
574
+ SENSITIVE = []
575
+ include Aws::Structure
576
+ end
577
+
578
+ # The Amazon Web Services EKS cluster execution block configuration.
579
+ #
580
+ # @!attribute [rw] cross_account_role
581
+ # The cross account role for the configuration.
582
+ # @return [String]
583
+ #
584
+ # @!attribute [rw] external_id
585
+ # The external ID (secret key) for the configuration.
586
+ # @return [String]
587
+ #
588
+ # @!attribute [rw] cluster_arn
589
+ # The Amazon Resource Name (ARN) of an Amazon Web Services EKS
590
+ # cluster.
591
+ # @return [String]
592
+ #
593
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/EksCluster AWS API Documentation
594
+ #
595
+ class EksCluster < Struct.new(
596
+ :cross_account_role,
597
+ :external_id,
598
+ :cluster_arn)
599
+ SENSITIVE = []
600
+ include Aws::Structure
601
+ end
602
+
603
+ # The Amazon Web Services EKS resource scaling configuration.
604
+ #
605
+ # @!attribute [rw] timeout_minutes
606
+ # The timeout value specified for the configuration.
607
+ # @return [Integer]
608
+ #
609
+ # @!attribute [rw] kubernetes_resource_type
610
+ # The Kubernetes resource type for the configuration.
611
+ # @return [Types::KubernetesResourceType]
612
+ #
613
+ # @!attribute [rw] scaling_resources
614
+ # The scaling resources for the configuration.
615
+ # @return [Array<Hash<String,Hash<String,Types::KubernetesScalingResource>>>]
616
+ #
617
+ # @!attribute [rw] eks_clusters
618
+ # The clusters for the configuration.
619
+ # @return [Array<Types::EksCluster>]
620
+ #
621
+ # @!attribute [rw] ungraceful
622
+ # The settings for ungraceful execution.
623
+ # @return [Types::EksResourceScalingUngraceful]
624
+ #
625
+ # @!attribute [rw] target_percent
626
+ # The target percentage for the configuration.
627
+ # @return [Integer]
628
+ #
629
+ # @!attribute [rw] capacity_monitoring_approach
630
+ # The monitoring approach for the configuration, that is, whether it
631
+ # was sampled in the last 24 hours or autoscaled in the last 24 hours.
632
+ # @return [String]
633
+ #
634
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/EksResourceScalingConfiguration AWS API Documentation
635
+ #
636
+ class EksResourceScalingConfiguration < Struct.new(
637
+ :timeout_minutes,
638
+ :kubernetes_resource_type,
639
+ :scaling_resources,
640
+ :eks_clusters,
641
+ :ungraceful,
642
+ :target_percent,
643
+ :capacity_monitoring_approach)
644
+ SENSITIVE = []
645
+ include Aws::Structure
646
+ end
647
+
648
+ # The ungraceful settings for Amazon Web Services EKS resource scaling.
649
+ #
650
+ # @!attribute [rw] minimum_success_percentage
651
+ # The minimum success percentage for the configuration.
652
+ # @return [Integer]
653
+ #
654
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/EksResourceScalingUngraceful AWS API Documentation
655
+ #
656
+ class EksResourceScalingUngraceful < Struct.new(
657
+ :minimum_success_percentage)
658
+ SENSITIVE = []
659
+ include Aws::Structure
660
+ end
661
+
662
+ # Configuration for approval steps in a Region switch plan execution.
663
+ # Approval steps require manual intervention before the execution can
664
+ # proceed.
665
+ #
666
+ # @!attribute [rw] timeout_minutes
667
+ # The timeout value specified for the configuration.
668
+ # @return [Integer]
669
+ #
670
+ # @!attribute [rw] approval_role
671
+ # The IAM approval role for the configuration.
672
+ # @return [String]
673
+ #
674
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ExecutionApprovalConfiguration AWS API Documentation
675
+ #
676
+ class ExecutionApprovalConfiguration < Struct.new(
677
+ :timeout_minutes,
678
+ :approval_role)
679
+ SENSITIVE = []
680
+ include Aws::Structure
681
+ end
682
+
683
+ # Execution block configurations for a workflow in a Region switch plan.
684
+ # An execution block represents a specific type of action to perform
685
+ # during a Region switch.
686
+ #
687
+ # @note ExecutionBlockConfiguration is a union - when making an API calls you must set exactly one of the members.
688
+ #
689
+ # @note ExecutionBlockConfiguration is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of ExecutionBlockConfiguration corresponding to the set member.
690
+ #
691
+ # @!attribute [rw] custom_action_lambda_config
692
+ # An Amazon Web Services Lambda execution block.
693
+ # @return [Types::CustomActionLambdaConfiguration]
694
+ #
695
+ # @!attribute [rw] ec2_asg_capacity_increase_config
696
+ # An EC2 Auto Scaling group execution block.
697
+ # @return [Types::Ec2AsgCapacityIncreaseConfiguration]
698
+ #
699
+ # @!attribute [rw] execution_approval_config
700
+ # A manual approval execution block.
701
+ # @return [Types::ExecutionApprovalConfiguration]
702
+ #
703
+ # @!attribute [rw] arc_routing_control_config
704
+ # An ARC routing control execution block.
705
+ # @return [Types::ArcRoutingControlConfiguration]
706
+ #
707
+ # @!attribute [rw] global_aurora_config
708
+ # An Aurora Global Database execution block.
709
+ # @return [Types::GlobalAuroraConfiguration]
710
+ #
711
+ # @!attribute [rw] parallel_config
712
+ # A parallel configuration execution block.
713
+ # @return [Types::ParallelExecutionBlockConfiguration]
714
+ #
715
+ # @!attribute [rw] region_switch_plan_config
716
+ # A Region switch plan execution block.
717
+ # @return [Types::RegionSwitchPlanConfiguration]
718
+ #
719
+ # @!attribute [rw] ecs_capacity_increase_config
720
+ # The capacity increase specified for the configuration.
721
+ # @return [Types::EcsCapacityIncreaseConfiguration]
722
+ #
723
+ # @!attribute [rw] eks_resource_scaling_config
724
+ # An Amazon Web Services EKS resource scaling execution block.
725
+ # @return [Types::EksResourceScalingConfiguration]
726
+ #
727
+ # @!attribute [rw] route53_health_check_config
728
+ # The Amazon Route 53 health check configuration.
729
+ # @return [Types::Route53HealthCheckConfiguration]
730
+ #
731
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ExecutionBlockConfiguration AWS API Documentation
732
+ #
733
+ class ExecutionBlockConfiguration < Struct.new(
734
+ :custom_action_lambda_config,
735
+ :ec2_asg_capacity_increase_config,
736
+ :execution_approval_config,
737
+ :arc_routing_control_config,
738
+ :global_aurora_config,
739
+ :parallel_config,
740
+ :region_switch_plan_config,
741
+ :ecs_capacity_increase_config,
742
+ :eks_resource_scaling_config,
743
+ :route53_health_check_config,
744
+ :unknown)
745
+ SENSITIVE = []
746
+ include Aws::Structure
747
+ include Aws::Structure::Union
748
+
749
+ class CustomActionLambdaConfig < ExecutionBlockConfiguration; end
750
+ class Ec2AsgCapacityIncreaseConfig < ExecutionBlockConfiguration; end
751
+ class ExecutionApprovalConfig < ExecutionBlockConfiguration; end
752
+ class ArcRoutingControlConfig < ExecutionBlockConfiguration; end
753
+ class GlobalAuroraConfig < ExecutionBlockConfiguration; end
754
+ class ParallelConfig < ExecutionBlockConfiguration; end
755
+ class RegionSwitchPlanConfig < ExecutionBlockConfiguration; end
756
+ class EcsCapacityIncreaseConfig < ExecutionBlockConfiguration; end
757
+ class EksResourceScalingConfig < ExecutionBlockConfiguration; end
758
+ class Route53HealthCheckConfig < ExecutionBlockConfiguration; end
759
+ class Unknown < ExecutionBlockConfiguration; end
760
+ end
761
+
762
+ # Represents an event that occurred during a plan execution. These
763
+ # events provide a detailed timeline of the execution process.
764
+ #
765
+ # @!attribute [rw] timestamp
766
+ # The timestamp for an execution event.
767
+ # @return [Time]
768
+ #
769
+ # @!attribute [rw] type
770
+ # The type of an execution event.
771
+ # @return [String]
772
+ #
773
+ # @!attribute [rw] step_name
774
+ # The step name for an execution event.
775
+ # @return [String]
776
+ #
777
+ # @!attribute [rw] execution_block_type
778
+ # The execution block type for an execution event.
779
+ # @return [String]
780
+ #
781
+ # @!attribute [rw] resources
782
+ # The resources for an execution event.
783
+ # @return [Array<String>]
784
+ #
785
+ # @!attribute [rw] error
786
+ # Errors for an execution event.
787
+ # @return [String]
788
+ #
789
+ # @!attribute [rw] description
790
+ # The description for an execution event.
791
+ # @return [String]
792
+ #
793
+ # @!attribute [rw] event_id
794
+ # The event ID for an execution event.
795
+ # @return [String]
796
+ #
797
+ # @!attribute [rw] previous_event_id
798
+ # The event ID of the previous execution event.
799
+ # @return [String]
800
+ #
801
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ExecutionEvent AWS API Documentation
802
+ #
803
+ class ExecutionEvent < Struct.new(
804
+ :timestamp,
805
+ :type,
806
+ :step_name,
807
+ :execution_block_type,
808
+ :resources,
809
+ :error,
810
+ :description,
811
+ :event_id,
812
+ :previous_event_id)
813
+ SENSITIVE = []
814
+ include Aws::Structure
815
+ end
816
+
817
+ # @!attribute [rw] plan_arn
818
+ # The Amazon Resource Name (ARN) of the Region switch plan to retrieve
819
+ # evaluation status for.
820
+ # @return [String]
821
+ #
822
+ # @!attribute [rw] max_results
823
+ # The number of objects that you want to return with this call.
824
+ # @return [Integer]
825
+ #
826
+ # @!attribute [rw] next_token
827
+ # Specifies that you want to receive the next page of results. Valid
828
+ # only if you received a `nextToken` response in the previous request.
829
+ # If you did, it indicates that more output is available. Set this
830
+ # parameter to the value provided by the previous call's `nextToken`
831
+ # response to request the next page of results.
832
+ # @return [String]
833
+ #
834
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/GetPlanEvaluationStatusRequest AWS API Documentation
835
+ #
836
+ class GetPlanEvaluationStatusRequest < Struct.new(
837
+ :plan_arn,
838
+ :max_results,
839
+ :next_token)
840
+ SENSITIVE = []
841
+ include Aws::Structure
842
+ end
843
+
844
+ # @!attribute [rw] plan_arn
845
+ # The Amazon Resource Name (ARN) of the plan.
846
+ # @return [String]
847
+ #
848
+ # @!attribute [rw] last_evaluation_time
849
+ # The time of the last time that Region switch ran an evaluation of
850
+ # the plan.
851
+ # @return [Time]
852
+ #
853
+ # @!attribute [rw] last_evaluated_version
854
+ # The version of the last evaluation of the plan.
855
+ # @return [String]
856
+ #
857
+ # @!attribute [rw] region
858
+ # The Amazon Web Services Region for the plan.
859
+ # @return [String]
860
+ #
861
+ # @!attribute [rw] evaluation_state
862
+ # The evaluation state for the plan.
863
+ # @return [String]
864
+ #
865
+ # @!attribute [rw] warnings
866
+ # The current evaluation warnings for the plan.
867
+ # @return [Array<Types::ResourceWarning>]
868
+ #
869
+ # @!attribute [rw] next_token
870
+ # Specifies that you want to receive the next page of results. Valid
871
+ # only if you received a `nextToken` response in the previous request.
872
+ # If you did, it indicates that more output is available. Set this
873
+ # parameter to the value provided by the previous call's `nextToken`
874
+ # response to request the next page of results.
875
+ # @return [String]
876
+ #
877
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/GetPlanEvaluationStatusResponse AWS API Documentation
878
+ #
879
+ class GetPlanEvaluationStatusResponse < Struct.new(
880
+ :plan_arn,
881
+ :last_evaluation_time,
882
+ :last_evaluated_version,
883
+ :region,
884
+ :evaluation_state,
885
+ :warnings,
886
+ :next_token)
887
+ SENSITIVE = []
888
+ include Aws::Structure
889
+ end
890
+
891
+ # @!attribute [rw] plan_arn
892
+ # The Amazon Resource Name (ARN) of the plan with the execution to
893
+ # retrieve.
894
+ # @return [String]
895
+ #
896
+ # @!attribute [rw] execution_id
897
+ # The execution identifier of a plan execution.
898
+ # @return [String]
899
+ #
900
+ # @!attribute [rw] max_results
901
+ # The number of objects that you want to return with this call.
902
+ # @return [Integer]
903
+ #
904
+ # @!attribute [rw] next_token
905
+ # Specifies that you want to receive the next page of results. Valid
906
+ # only if you received a `nextToken` response in the previous request.
907
+ # If you did, it indicates that more output is available. Set this
908
+ # parameter to the value provided by the previous call's `nextToken`
909
+ # response to request the next page of results.
910
+ # @return [String]
911
+ #
912
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/GetPlanExecutionRequest AWS API Documentation
913
+ #
914
+ class GetPlanExecutionRequest < Struct.new(
915
+ :plan_arn,
916
+ :execution_id,
917
+ :max_results,
918
+ :next_token)
919
+ SENSITIVE = []
920
+ include Aws::Structure
921
+ end
922
+
923
+ # @!attribute [rw] plan_arn
924
+ # The Amazon Resource Name (ARN) of the plan.
925
+ # @return [String]
926
+ #
927
+ # @!attribute [rw] execution_id
928
+ # The execution identifier of a plan execution.
929
+ # @return [String]
930
+ #
931
+ # @!attribute [rw] version
932
+ # The version for the plan.
933
+ # @return [String]
934
+ #
935
+ # @!attribute [rw] updated_at
936
+ # The timestamp when the plan execution was last updated.
937
+ # @return [Time]
938
+ #
939
+ # @!attribute [rw] comment
940
+ # A comment included on the plan execution.
941
+ # @return [String]
942
+ #
943
+ # @!attribute [rw] start_time
944
+ # The time (UTC) when the plan execution started.
945
+ # @return [Time]
946
+ #
947
+ # @!attribute [rw] end_time
948
+ # The time (UTC) when the plan execution ended.
949
+ # @return [Time]
950
+ #
951
+ # @!attribute [rw] mode
952
+ # The plan execution mode. Valid values are `Practice`, for testing
953
+ # without making actual changes, or `Recovery`, for actual traffic
954
+ # shifting and application recovery.
955
+ # @return [String]
956
+ #
957
+ # @!attribute [rw] execution_state
958
+ # The plan execution state. Provides the state of a plan execution,
959
+ # for example, In Progress or Paused by Operator.
960
+ # @return [String]
961
+ #
962
+ # @!attribute [rw] execution_action
963
+ # The plan execution action. Valid values are `Activate`, to activate
964
+ # an Amazon Web Services Region, or `Deactivate`, to deactivate a
965
+ # Region.
966
+ # @return [String]
967
+ #
968
+ # @!attribute [rw] execution_region
969
+ # The Amazon Web Services Region for a plan execution.
970
+ # @return [String]
971
+ #
972
+ # @!attribute [rw] step_states
973
+ # The states of the steps in the plan execution.
974
+ # @return [Array<Types::StepState>]
975
+ #
976
+ # @!attribute [rw] plan
977
+ # The details of the Region switch plan.
978
+ # @return [Types::Plan]
979
+ #
980
+ # @!attribute [rw] actual_recovery_time
981
+ # The actual recovery time that Region switch calculates for a plan
982
+ # execution. Actual recovery time includes the time for the plan to
983
+ # run added to the time elapsed until the application health alarms
984
+ # that you've specified are healthy again.
985
+ # @return [String]
986
+ #
987
+ # @!attribute [rw] next_token
988
+ # Specifies that you want to receive the next page of results. Valid
989
+ # only if you received a `nextToken` response in the previous request.
990
+ # If you did, it indicates that more output is available. Set this
991
+ # parameter to the value provided by the previous call's `nextToken`
992
+ # response to request the next page of results.
993
+ # @return [String]
994
+ #
995
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/GetPlanExecutionResponse AWS API Documentation
996
+ #
997
+ class GetPlanExecutionResponse < Struct.new(
998
+ :plan_arn,
999
+ :execution_id,
1000
+ :version,
1001
+ :updated_at,
1002
+ :comment,
1003
+ :start_time,
1004
+ :end_time,
1005
+ :mode,
1006
+ :execution_state,
1007
+ :execution_action,
1008
+ :execution_region,
1009
+ :step_states,
1010
+ :plan,
1011
+ :actual_recovery_time,
1012
+ :next_token)
1013
+ SENSITIVE = []
1014
+ include Aws::Structure
1015
+ end
1016
+
1017
+ # @!attribute [rw] arn
1018
+ # The Amazon Resource Name (ARN) of the plan in Region.
1019
+ # @return [String]
1020
+ #
1021
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/GetPlanInRegionRequest AWS API Documentation
1022
+ #
1023
+ class GetPlanInRegionRequest < Struct.new(
1024
+ :arn)
1025
+ SENSITIVE = []
1026
+ include Aws::Structure
1027
+ end
1028
+
1029
+ # @!attribute [rw] plan
1030
+ # The details of the Region switch plan.
1031
+ # @return [Types::Plan]
1032
+ #
1033
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/GetPlanInRegionResponse AWS API Documentation
1034
+ #
1035
+ class GetPlanInRegionResponse < Struct.new(
1036
+ :plan)
1037
+ SENSITIVE = []
1038
+ include Aws::Structure
1039
+ end
1040
+
1041
+ # @!attribute [rw] arn
1042
+ # The Amazon Resource Name (ARN) of the plan.
1043
+ # @return [String]
1044
+ #
1045
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/GetPlanRequest AWS API Documentation
1046
+ #
1047
+ class GetPlanRequest < Struct.new(
1048
+ :arn)
1049
+ SENSITIVE = []
1050
+ include Aws::Structure
1051
+ end
1052
+
1053
+ # @!attribute [rw] plan
1054
+ # The detailed information about the requested Region switch plan.
1055
+ # @return [Types::Plan]
1056
+ #
1057
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/GetPlanResponse AWS API Documentation
1058
+ #
1059
+ class GetPlanResponse < Struct.new(
1060
+ :plan)
1061
+ SENSITIVE = []
1062
+ include Aws::Structure
1063
+ end
1064
+
1065
+ # Configuration for Amazon Aurora global databases used in a Region
1066
+ # switch plan.
1067
+ #
1068
+ # @!attribute [rw] timeout_minutes
1069
+ # The timeout value specified for the configuration.
1070
+ # @return [Integer]
1071
+ #
1072
+ # @!attribute [rw] cross_account_role
1073
+ # The cross account role for the configuration.
1074
+ # @return [String]
1075
+ #
1076
+ # @!attribute [rw] external_id
1077
+ # The external ID (secret key) for the configuration.
1078
+ # @return [String]
1079
+ #
1080
+ # @!attribute [rw] behavior
1081
+ # The behavior for a global database, that is, only allow switchover
1082
+ # or also allow failover.
1083
+ # @return [String]
1084
+ #
1085
+ # @!attribute [rw] ungraceful
1086
+ # The settings for ungraceful execution.
1087
+ # @return [Types::GlobalAuroraUngraceful]
1088
+ #
1089
+ # @!attribute [rw] global_cluster_identifier
1090
+ # The global cluster identifier for a global database.
1091
+ # @return [String]
1092
+ #
1093
+ # @!attribute [rw] database_cluster_arns
1094
+ # The database cluster Amazon Resource Names (ARNs) for a global
1095
+ # database.
1096
+ # @return [Array<String>]
1097
+ #
1098
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/GlobalAuroraConfiguration AWS API Documentation
1099
+ #
1100
+ class GlobalAuroraConfiguration < Struct.new(
1101
+ :timeout_minutes,
1102
+ :cross_account_role,
1103
+ :external_id,
1104
+ :behavior,
1105
+ :ungraceful,
1106
+ :global_cluster_identifier,
1107
+ :database_cluster_arns)
1108
+ SENSITIVE = []
1109
+ include Aws::Structure
1110
+ end
1111
+
1112
+ # Configuration for handling failures when performing operations on
1113
+ # Aurora global databases.
1114
+ #
1115
+ # @!attribute [rw] ungraceful
1116
+ # The settings for ungraceful execution.
1117
+ # @return [String]
1118
+ #
1119
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/GlobalAuroraUngraceful AWS API Documentation
1120
+ #
1121
+ class GlobalAuroraUngraceful < Struct.new(
1122
+ :ungraceful)
1123
+ SENSITIVE = []
1124
+ include Aws::Structure
1125
+ end
1126
+
1127
+ # The request processing has an invalid argument.
1128
+ #
1129
+ # @!attribute [rw] message
1130
+ # @return [String]
1131
+ #
1132
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/IllegalArgumentException AWS API Documentation
1133
+ #
1134
+ class IllegalArgumentException < Struct.new(
1135
+ :message)
1136
+ SENSITIVE = []
1137
+ include Aws::Structure
1138
+ end
1139
+
1140
+ # The operation failed because the current state of the resource
1141
+ # doesn't allow the operation to proceed.
1142
+ #
1143
+ # HTTP Status Code: 400
1144
+ #
1145
+ # @!attribute [rw] message
1146
+ # @return [String]
1147
+ #
1148
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/IllegalStateException AWS API Documentation
1149
+ #
1150
+ class IllegalStateException < Struct.new(
1151
+ :message)
1152
+ SENSITIVE = []
1153
+ include Aws::Structure
1154
+ end
1155
+
1156
+ # The request processing has failed because of an unknown error,
1157
+ # exception, or failure.
1158
+ #
1159
+ # HTTP Status Code: 500
1160
+ #
1161
+ # @!attribute [rw] message
1162
+ # @return [String]
1163
+ #
1164
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/InternalServerException AWS API Documentation
1165
+ #
1166
+ class InternalServerException < Struct.new(
1167
+ :message)
1168
+ SENSITIVE = []
1169
+ include Aws::Structure
1170
+ end
1171
+
1172
+ # Defines the type of Kubernetes resource to scale in an Amazon EKS
1173
+ # cluster.
1174
+ #
1175
+ # @!attribute [rw] api_version
1176
+ # The API version type for the Kubernetes resource.
1177
+ # @return [String]
1178
+ #
1179
+ # @!attribute [rw] kind
1180
+ # The kind for the Kubernetes resource.
1181
+ # @return [String]
1182
+ #
1183
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/KubernetesResourceType AWS API Documentation
1184
+ #
1185
+ class KubernetesResourceType < Struct.new(
1186
+ :api_version,
1187
+ :kind)
1188
+ SENSITIVE = []
1189
+ include Aws::Structure
1190
+ end
1191
+
1192
+ # Defines a Kubernetes resource to scale in an Amazon EKS cluster.
1193
+ #
1194
+ # @!attribute [rw] namespace
1195
+ # The namespace for the Kubernetes resource.
1196
+ # @return [String]
1197
+ #
1198
+ # @!attribute [rw] name
1199
+ # The name for the Kubernetes resource.
1200
+ # @return [String]
1201
+ #
1202
+ # @!attribute [rw] hpa_name
1203
+ # The hpaname for the Kubernetes resource.
1204
+ # @return [String]
1205
+ #
1206
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/KubernetesScalingResource AWS API Documentation
1207
+ #
1208
+ class KubernetesScalingResource < Struct.new(
1209
+ :namespace,
1210
+ :name,
1211
+ :hpa_name)
1212
+ SENSITIVE = []
1213
+ include Aws::Structure
1214
+ end
1215
+
1216
+ # Configuration for handling failures when invoking Lambda functions.
1217
+ #
1218
+ # @!attribute [rw] behavior
1219
+ # The ungraceful behavior for a Lambda function, which must be set to
1220
+ # `skip`.
1221
+ # @return [String]
1222
+ #
1223
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/LambdaUngraceful AWS API Documentation
1224
+ #
1225
+ class LambdaUngraceful < Struct.new(
1226
+ :behavior)
1227
+ SENSITIVE = []
1228
+ include Aws::Structure
1229
+ end
1230
+
1231
+ # Configuration for Amazon Web Services Lambda functions used in a
1232
+ # Region switch plan.
1233
+ #
1234
+ # @!attribute [rw] cross_account_role
1235
+ # The cross account role for the configuration.
1236
+ # @return [String]
1237
+ #
1238
+ # @!attribute [rw] external_id
1239
+ # The external ID (secret key) for the configuration.
1240
+ # @return [String]
1241
+ #
1242
+ # @!attribute [rw] arn
1243
+ # The Amazon Resource Name (ARN) of the Lambda function.
1244
+ # @return [String]
1245
+ #
1246
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/Lambdas AWS API Documentation
1247
+ #
1248
+ class Lambdas < Struct.new(
1249
+ :cross_account_role,
1250
+ :external_id,
1251
+ :arn)
1252
+ SENSITIVE = []
1253
+ include Aws::Structure
1254
+ end
1255
+
1256
+ # @!attribute [rw] plan_arn
1257
+ # The Amazon Resource Name (ARN) of the plan.
1258
+ # @return [String]
1259
+ #
1260
+ # @!attribute [rw] execution_id
1261
+ # The execution identifier of a plan execution.
1262
+ # @return [String]
1263
+ #
1264
+ # @!attribute [rw] max_results
1265
+ # The number of objects that you want to return with this call.
1266
+ # @return [Integer]
1267
+ #
1268
+ # @!attribute [rw] next_token
1269
+ # Specifies that you want to receive the next page of results. Valid
1270
+ # only if you received a `nextToken` response in the previous request.
1271
+ # If you did, it indicates that more output is available. Set this
1272
+ # parameter to the value provided by the previous call's `nextToken`
1273
+ # response to request the next page of results.
1274
+ # @return [String]
1275
+ #
1276
+ # @!attribute [rw] name
1277
+ # The name of the plan execution event.
1278
+ # @return [String]
1279
+ #
1280
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ListPlanExecutionEventsRequest AWS API Documentation
1281
+ #
1282
+ class ListPlanExecutionEventsRequest < Struct.new(
1283
+ :plan_arn,
1284
+ :execution_id,
1285
+ :max_results,
1286
+ :next_token,
1287
+ :name)
1288
+ SENSITIVE = []
1289
+ include Aws::Structure
1290
+ end
1291
+
1292
+ # @!attribute [rw] items
1293
+ # The items in the plan execution event.
1294
+ # @return [Array<Types::ExecutionEvent>]
1295
+ #
1296
+ # @!attribute [rw] next_token
1297
+ # Specifies that you want to receive the next page of results. Valid
1298
+ # only if you received a `nextToken` response in the previous request.
1299
+ # If you did, it indicates that more output is available. Set this
1300
+ # parameter to the value provided by the previous call's `nextToken`
1301
+ # response to request the next page of results.
1302
+ # @return [String]
1303
+ #
1304
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ListPlanExecutionEventsResponse AWS API Documentation
1305
+ #
1306
+ class ListPlanExecutionEventsResponse < Struct.new(
1307
+ :items,
1308
+ :next_token)
1309
+ SENSITIVE = []
1310
+ include Aws::Structure
1311
+ end
1312
+
1313
+ # @!attribute [rw] plan_arn
1314
+ # The ARN for the plan.
1315
+ # @return [String]
1316
+ #
1317
+ # @!attribute [rw] max_results
1318
+ # The number of objects that you want to return with this call.
1319
+ # @return [Integer]
1320
+ #
1321
+ # @!attribute [rw] next_token
1322
+ # Specifies that you want to receive the next page of results. Valid
1323
+ # only if you received a `nextToken` response in the previous request.
1324
+ # If you did, it indicates that more output is available. Set this
1325
+ # parameter to the value provided by the previous call's `nextToken`
1326
+ # response to request the next page of results.
1327
+ # @return [String]
1328
+ #
1329
+ # @!attribute [rw] state
1330
+ # The state of the plan execution. For example, the plan execution
1331
+ # might be In Progress.
1332
+ # @return [String]
1333
+ #
1334
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ListPlanExecutionsRequest AWS API Documentation
1335
+ #
1336
+ class ListPlanExecutionsRequest < Struct.new(
1337
+ :plan_arn,
1338
+ :max_results,
1339
+ :next_token,
1340
+ :state)
1341
+ SENSITIVE = []
1342
+ include Aws::Structure
1343
+ end
1344
+
1345
+ # @!attribute [rw] items
1346
+ # The items in the plan execution to return.
1347
+ # @return [Array<Types::AbbreviatedExecution>]
1348
+ #
1349
+ # @!attribute [rw] next_token
1350
+ # Specifies that you want to receive the next page of results. Valid
1351
+ # only if you received a `nextToken` response in the previous request.
1352
+ # If you did, it indicates that more output is available. Set this
1353
+ # parameter to the value provided by the previous call's `nextToken`
1354
+ # response to request the next page of results.
1355
+ # @return [String]
1356
+ #
1357
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ListPlanExecutionsResponse AWS API Documentation
1358
+ #
1359
+ class ListPlanExecutionsResponse < Struct.new(
1360
+ :items,
1361
+ :next_token)
1362
+ SENSITIVE = []
1363
+ include Aws::Structure
1364
+ end
1365
+
1366
+ # @!attribute [rw] max_results
1367
+ # The number of objects that you want to return with this call.
1368
+ # @return [Integer]
1369
+ #
1370
+ # @!attribute [rw] next_token
1371
+ # Specifies that you want to receive the next page of results. Valid
1372
+ # only if you received a `nextToken` response in the previous request.
1373
+ # If you did, it indicates that more output is available. Set this
1374
+ # parameter to the value provided by the previous call's `nextToken`
1375
+ # response to request the next page of results.
1376
+ # @return [String]
1377
+ #
1378
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ListPlansInRegionRequest AWS API Documentation
1379
+ #
1380
+ class ListPlansInRegionRequest < Struct.new(
1381
+ :max_results,
1382
+ :next_token)
1383
+ SENSITIVE = []
1384
+ include Aws::Structure
1385
+ end
1386
+
1387
+ # @!attribute [rw] plans
1388
+ # The plans that were requested.
1389
+ # @return [Array<Types::AbbreviatedPlan>]
1390
+ #
1391
+ # @!attribute [rw] next_token
1392
+ # Specifies that you want to receive the next page of results. Valid
1393
+ # only if you received a `nextToken` response in the previous request.
1394
+ # If you did, it indicates that more output is available. Set this
1395
+ # parameter to the value provided by the previous call's `nextToken`
1396
+ # response to request the next page of results.
1397
+ # @return [String]
1398
+ #
1399
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ListPlansInRegionResponse AWS API Documentation
1400
+ #
1401
+ class ListPlansInRegionResponse < Struct.new(
1402
+ :plans,
1403
+ :next_token)
1404
+ SENSITIVE = []
1405
+ include Aws::Structure
1406
+ end
1407
+
1408
+ # @!attribute [rw] max_results
1409
+ # The number of objects that you want to return with this call.
1410
+ # @return [Integer]
1411
+ #
1412
+ # @!attribute [rw] next_token
1413
+ # Specifies that you want to receive the next page of results. Valid
1414
+ # only if you received a `nextToken` response in the previous request.
1415
+ # If you did, it indicates that more output is available. Set this
1416
+ # parameter to the value provided by the previous call's `nextToken`
1417
+ # response to request the next page of results.
1418
+ # @return [String]
1419
+ #
1420
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ListPlansRequest AWS API Documentation
1421
+ #
1422
+ class ListPlansRequest < Struct.new(
1423
+ :max_results,
1424
+ :next_token)
1425
+ SENSITIVE = []
1426
+ include Aws::Structure
1427
+ end
1428
+
1429
+ # @!attribute [rw] plans
1430
+ # The plans that were requested.
1431
+ # @return [Array<Types::AbbreviatedPlan>]
1432
+ #
1433
+ # @!attribute [rw] next_token
1434
+ # Specifies that you want to receive the next page of results. Valid
1435
+ # only if you received a `nextToken` response in the previous request.
1436
+ # If you did, it indicates that more output is available. Set this
1437
+ # parameter to the value provided by the previous call's `nextToken`
1438
+ # response to request the next page of results.
1439
+ # @return [String]
1440
+ #
1441
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ListPlansResponse AWS API Documentation
1442
+ #
1443
+ class ListPlansResponse < Struct.new(
1444
+ :plans,
1445
+ :next_token)
1446
+ SENSITIVE = []
1447
+ include Aws::Structure
1448
+ end
1449
+
1450
+ # @!attribute [rw] arn
1451
+ # The Amazon Resource Name (ARN) of the Amazon Route 53 health check
1452
+ # request.
1453
+ # @return [String]
1454
+ #
1455
+ # @!attribute [rw] hosted_zone_id
1456
+ # The hosted zone ID for the health checks.
1457
+ # @return [String]
1458
+ #
1459
+ # @!attribute [rw] record_name
1460
+ # The record name for the health checks.
1461
+ # @return [String]
1462
+ #
1463
+ # @!attribute [rw] max_results
1464
+ # The number of objects that you want to return with this call.
1465
+ # @return [Integer]
1466
+ #
1467
+ # @!attribute [rw] next_token
1468
+ # Specifies that you want to receive the next page of results. Valid
1469
+ # only if you received a `nextToken` response in the previous request.
1470
+ # If you did, it indicates that more output is available. Set this
1471
+ # parameter to the value provided by the previous call's `nextToken`
1472
+ # response to request the next page of results.
1473
+ # @return [String]
1474
+ #
1475
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ListRoute53HealthChecksRequest AWS API Documentation
1476
+ #
1477
+ class ListRoute53HealthChecksRequest < Struct.new(
1478
+ :arn,
1479
+ :hosted_zone_id,
1480
+ :record_name,
1481
+ :max_results,
1482
+ :next_token)
1483
+ SENSITIVE = []
1484
+ include Aws::Structure
1485
+ end
1486
+
1487
+ # @!attribute [rw] health_checks
1488
+ # List of the health checks requested.
1489
+ # @return [Array<Types::Route53HealthCheck>]
1490
+ #
1491
+ # @!attribute [rw] next_token
1492
+ # Specifies that you want to receive the next page of results. Valid
1493
+ # only if you received a `nextToken` response in the previous request.
1494
+ # If you did, it indicates that more output is available. Set this
1495
+ # parameter to the value provided by the previous call's `nextToken`
1496
+ # response to request the next page of results.
1497
+ # @return [String]
1498
+ #
1499
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ListRoute53HealthChecksResponse AWS API Documentation
1500
+ #
1501
+ class ListRoute53HealthChecksResponse < Struct.new(
1502
+ :health_checks,
1503
+ :next_token)
1504
+ SENSITIVE = []
1505
+ include Aws::Structure
1506
+ end
1507
+
1508
+ # @!attribute [rw] arn
1509
+ # The Amazon Resource Name (ARN) of the resource.
1510
+ # @return [String]
1511
+ #
1512
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ListTagsForResourceRequest AWS API Documentation
1513
+ #
1514
+ class ListTagsForResourceRequest < Struct.new(
1515
+ :arn)
1516
+ SENSITIVE = []
1517
+ include Aws::Structure
1518
+ end
1519
+
1520
+ # @!attribute [rw] resource_tags
1521
+ # The tags for a resource.
1522
+ # @return [Hash<String,String>]
1523
+ #
1524
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ListTagsForResourceResponse AWS API Documentation
1525
+ #
1526
+ class ListTagsForResourceResponse < Struct.new(
1527
+ :resource_tags)
1528
+ SENSITIVE = []
1529
+ include Aws::Structure
1530
+ end
1531
+
1532
+ # A simplified representation of a workflow in a Region switch plan.
1533
+ #
1534
+ # @!attribute [rw] action
1535
+ # The action for a minimal workflow, which can be Activate or
1536
+ # Deactivate.
1537
+ # @return [String]
1538
+ #
1539
+ # @!attribute [rw] name
1540
+ # The name for a minimal workflow
1541
+ # @return [String]
1542
+ #
1543
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/MinimalWorkflow AWS API Documentation
1544
+ #
1545
+ class MinimalWorkflow < Struct.new(
1546
+ :action,
1547
+ :name)
1548
+ SENSITIVE = []
1549
+ include Aws::Structure
1550
+ end
1551
+
1552
+ # Configuration for steps that should be executed in parallel during a
1553
+ # Region switch.
1554
+ #
1555
+ # @!attribute [rw] steps
1556
+ # The steps for a parallel execution block.
1557
+ # @return [Array<Types::Step>]
1558
+ #
1559
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ParallelExecutionBlockConfiguration AWS API Documentation
1560
+ #
1561
+ class ParallelExecutionBlockConfiguration < Struct.new(
1562
+ :steps)
1563
+ SENSITIVE = []
1564
+ include Aws::Structure
1565
+ end
1566
+
1567
+ # Represents a Region switch plan. A plan defines the steps required to
1568
+ # shift traffic from one Amazon Web Services Region to another.
1569
+ #
1570
+ # @!attribute [rw] arn
1571
+ # The Amazon Resource Name (ARN) of the plan.
1572
+ # @return [String]
1573
+ #
1574
+ # @!attribute [rw] description
1575
+ # The description for a plan.
1576
+ # @return [String]
1577
+ #
1578
+ # @!attribute [rw] workflows
1579
+ # The workflows for a plan.
1580
+ # @return [Array<Types::Workflow>]
1581
+ #
1582
+ # @!attribute [rw] execution_role
1583
+ # The execution role for a plan.
1584
+ # @return [String]
1585
+ #
1586
+ # @!attribute [rw] recovery_time_objective_minutes
1587
+ # The recovery time objective for a plan.
1588
+ # @return [Integer]
1589
+ #
1590
+ # @!attribute [rw] associated_alarms
1591
+ # The associated application health alarms for a plan.
1592
+ # @return [Hash<String,Types::AssociatedAlarm>]
1593
+ #
1594
+ # @!attribute [rw] triggers
1595
+ # The triggers for a plan.
1596
+ # @return [Array<Types::Trigger>]
1597
+ #
1598
+ # @!attribute [rw] name
1599
+ # The name for a plan.
1600
+ # @return [String]
1601
+ #
1602
+ # @!attribute [rw] regions
1603
+ # The Amazon Web Services Regions for a plan.
1604
+ # @return [Array<String>]
1605
+ #
1606
+ # @!attribute [rw] recovery_approach
1607
+ # The recovery approach for a Region switch plan, which can be
1608
+ # active/active (activeActive) or active/passive (activePassive).
1609
+ # @return [String]
1610
+ #
1611
+ # @!attribute [rw] primary_region
1612
+ # The primary Region for a plan.
1613
+ # @return [String]
1614
+ #
1615
+ # @!attribute [rw] owner
1616
+ # The owner of a plan.
1617
+ # @return [String]
1618
+ #
1619
+ # @!attribute [rw] version
1620
+ # The version for the plan.
1621
+ # @return [String]
1622
+ #
1623
+ # @!attribute [rw] updated_at
1624
+ # The timestamp when the plan was last updated.
1625
+ # @return [Time]
1626
+ #
1627
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/Plan AWS API Documentation
1628
+ #
1629
+ class Plan < Struct.new(
1630
+ :arn,
1631
+ :description,
1632
+ :workflows,
1633
+ :execution_role,
1634
+ :recovery_time_objective_minutes,
1635
+ :associated_alarms,
1636
+ :triggers,
1637
+ :name,
1638
+ :regions,
1639
+ :recovery_approach,
1640
+ :primary_region,
1641
+ :owner,
1642
+ :version,
1643
+ :updated_at)
1644
+ SENSITIVE = []
1645
+ include Aws::Structure
1646
+ end
1647
+
1648
+ # Configuration for nested Region switch plans. This allows one Region
1649
+ # switch plan to trigger another plan as part of its execution.
1650
+ #
1651
+ # @!attribute [rw] cross_account_role
1652
+ # The cross account role for the configuration.
1653
+ # @return [String]
1654
+ #
1655
+ # @!attribute [rw] external_id
1656
+ # The external ID (secret key) for the configuration.
1657
+ # @return [String]
1658
+ #
1659
+ # @!attribute [rw] arn
1660
+ # The Amazon Resource Name (ARN) of the plan configuration.
1661
+ # @return [String]
1662
+ #
1663
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/RegionSwitchPlanConfiguration AWS API Documentation
1664
+ #
1665
+ class RegionSwitchPlanConfiguration < Struct.new(
1666
+ :cross_account_role,
1667
+ :external_id,
1668
+ :arn)
1669
+ SENSITIVE = []
1670
+ include Aws::Structure
1671
+ end
1672
+
1673
+ # The specified resource was not found.
1674
+ #
1675
+ # HTTP Status Code: 404
1676
+ #
1677
+ # @!attribute [rw] message
1678
+ # @return [String]
1679
+ #
1680
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ResourceNotFoundException AWS API Documentation
1681
+ #
1682
+ class ResourceNotFoundException < Struct.new(
1683
+ :message)
1684
+ SENSITIVE = []
1685
+ include Aws::Structure
1686
+ end
1687
+
1688
+ # Represents a warning about a resource in a Region switch plan.
1689
+ #
1690
+ # @!attribute [rw] workflow
1691
+ # The workflow for the resource warning.
1692
+ # @return [Types::MinimalWorkflow]
1693
+ #
1694
+ # @!attribute [rw] version
1695
+ # The version for the resource warning.
1696
+ # @return [String]
1697
+ #
1698
+ # @!attribute [rw] step_name
1699
+ # The name of the step for the resource warning.
1700
+ # @return [String]
1701
+ #
1702
+ # @!attribute [rw] resource_arn
1703
+ # The Amazon Resource Name (ARN) of the resource.
1704
+ # @return [String]
1705
+ #
1706
+ # @!attribute [rw] warning_status
1707
+ # The status of the resource warning.
1708
+ # @return [String]
1709
+ #
1710
+ # @!attribute [rw] warning_updated_time
1711
+ # The timestamp when the warning was last updated.
1712
+ # @return [Time]
1713
+ #
1714
+ # @!attribute [rw] warning_message
1715
+ # The warning message about what needs to be corrected.
1716
+ # @return [String]
1717
+ #
1718
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/ResourceWarning AWS API Documentation
1719
+ #
1720
+ class ResourceWarning < Struct.new(
1721
+ :workflow,
1722
+ :version,
1723
+ :step_name,
1724
+ :resource_arn,
1725
+ :warning_status,
1726
+ :warning_updated_time,
1727
+ :warning_message)
1728
+ SENSITIVE = []
1729
+ include Aws::Structure
1730
+ end
1731
+
1732
+ # The Amazon Route 53 health check.
1733
+ #
1734
+ # @!attribute [rw] hosted_zone_id
1735
+ # The Amazon Route 53 health check hosted zone ID.
1736
+ # @return [String]
1737
+ #
1738
+ # @!attribute [rw] record_name
1739
+ # The Amazon Route 53 record name.
1740
+ # @return [String]
1741
+ #
1742
+ # @!attribute [rw] health_check_id
1743
+ # The Amazon Route 53 health check ID.
1744
+ # @return [String]
1745
+ #
1746
+ # @!attribute [rw] region
1747
+ # The Amazon Route 53 Region.
1748
+ # @return [String]
1749
+ #
1750
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/Route53HealthCheck AWS API Documentation
1751
+ #
1752
+ class Route53HealthCheck < Struct.new(
1753
+ :hosted_zone_id,
1754
+ :record_name,
1755
+ :health_check_id,
1756
+ :region)
1757
+ SENSITIVE = []
1758
+ include Aws::Structure
1759
+ end
1760
+
1761
+ # The Amazon Route 53 health check configuration.
1762
+ #
1763
+ # @!attribute [rw] timeout_minutes
1764
+ # The Amazon Route 53 health check configuration time out (in
1765
+ # minutes).
1766
+ # @return [Integer]
1767
+ #
1768
+ # @!attribute [rw] cross_account_role
1769
+ # The cross account role for the configuration.
1770
+ # @return [String]
1771
+ #
1772
+ # @!attribute [rw] external_id
1773
+ # The external ID (secret key) for the configuration.
1774
+ # @return [String]
1775
+ #
1776
+ # @!attribute [rw] hosted_zone_id
1777
+ # The Amazon Route 53 health check configuration hosted zone ID.
1778
+ # @return [String]
1779
+ #
1780
+ # @!attribute [rw] record_name
1781
+ # The Amazon Route 53 health check configuration record name.
1782
+ # @return [String]
1783
+ #
1784
+ # @!attribute [rw] record_sets
1785
+ # The Amazon Route 53 health check configuration record sets.
1786
+ # @return [Array<Types::Route53ResourceRecordSet>]
1787
+ #
1788
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/Route53HealthCheckConfiguration AWS API Documentation
1789
+ #
1790
+ class Route53HealthCheckConfiguration < Struct.new(
1791
+ :timeout_minutes,
1792
+ :cross_account_role,
1793
+ :external_id,
1794
+ :hosted_zone_id,
1795
+ :record_name,
1796
+ :record_sets)
1797
+ SENSITIVE = []
1798
+ include Aws::Structure
1799
+ end
1800
+
1801
+ # The Amazon Route 53 record set.
1802
+ #
1803
+ # @!attribute [rw] record_set_identifier
1804
+ # The Amazon Route 53 record set identifier.
1805
+ # @return [String]
1806
+ #
1807
+ # @!attribute [rw] region
1808
+ # The Amazon Route 53 record set Region.
1809
+ # @return [String]
1810
+ #
1811
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/Route53ResourceRecordSet AWS API Documentation
1812
+ #
1813
+ class Route53ResourceRecordSet < Struct.new(
1814
+ :record_set_identifier,
1815
+ :region)
1816
+ SENSITIVE = []
1817
+ include Aws::Structure
1818
+ end
1819
+
1820
+ # The service for a cross account role.
1821
+ #
1822
+ # @!attribute [rw] cross_account_role
1823
+ # The cross account role for a service.
1824
+ # @return [String]
1825
+ #
1826
+ # @!attribute [rw] external_id
1827
+ # The external ID (secret key) for the service.
1828
+ # @return [String]
1829
+ #
1830
+ # @!attribute [rw] cluster_arn
1831
+ # The cluster Amazon Resource Name (ARN) for a service.
1832
+ # @return [String]
1833
+ #
1834
+ # @!attribute [rw] service_arn
1835
+ # The Amazon Resource Name (ARN) for a service.
1836
+ # @return [String]
1837
+ #
1838
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/Service AWS API Documentation
1839
+ #
1840
+ class Service < Struct.new(
1841
+ :cross_account_role,
1842
+ :external_id,
1843
+ :cluster_arn,
1844
+ :service_arn)
1845
+ SENSITIVE = []
1846
+ include Aws::Structure
1847
+ end
1848
+
1849
+ # @!attribute [rw] plan_arn
1850
+ # The Amazon Resource Name (ARN) of the plan to execute.
1851
+ # @return [String]
1852
+ #
1853
+ # @!attribute [rw] target_region
1854
+ # The Amazon Web Services Region to target with this execution. This
1855
+ # is the Region that traffic will be shifted to or from, depending on
1856
+ # the action.
1857
+ # @return [String]
1858
+ #
1859
+ # @!attribute [rw] action
1860
+ # The action to perform. Valid values are ACTIVATE (to shift traffic
1861
+ # to the target Region) or DEACTIVATE (to shift traffic away from the
1862
+ # target Region).
1863
+ # @return [String]
1864
+ #
1865
+ # @!attribute [rw] mode
1866
+ # The plan execution mode. Valid values are `Practice`, for testing
1867
+ # without making actual changes, or `Recovery`, for actual traffic
1868
+ # shifting and application recovery.
1869
+ # @return [String]
1870
+ #
1871
+ # @!attribute [rw] comment
1872
+ # An optional comment explaining why the plan execution is being
1873
+ # started.
1874
+ # @return [String]
1875
+ #
1876
+ # @!attribute [rw] latest_version
1877
+ # A boolean value indicating whether to use the latest version of the
1878
+ # plan. If set to false, you must specify a specific version.
1879
+ # @return [String]
1880
+ #
1881
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/StartPlanExecutionRequest AWS API Documentation
1882
+ #
1883
+ class StartPlanExecutionRequest < Struct.new(
1884
+ :plan_arn,
1885
+ :target_region,
1886
+ :action,
1887
+ :mode,
1888
+ :comment,
1889
+ :latest_version)
1890
+ SENSITIVE = []
1891
+ include Aws::Structure
1892
+ end
1893
+
1894
+ # @!attribute [rw] execution_id
1895
+ # The execution identifier of a plan execution.
1896
+ # @return [String]
1897
+ #
1898
+ # @!attribute [rw] plan
1899
+ # The details of the Region switch plan.
1900
+ # @return [String]
1901
+ #
1902
+ # @!attribute [rw] plan_version
1903
+ # The version of the plan, a unique number generated by Region switch.
1904
+ # @return [String]
1905
+ #
1906
+ # @!attribute [rw] activate_region
1907
+ # The Amazon Web Services Region to activate.
1908
+ # @return [String]
1909
+ #
1910
+ # @!attribute [rw] deactivate_region
1911
+ # The Amazon Web Services Region to deactivate.
1912
+ # @return [String]
1913
+ #
1914
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/StartPlanExecutionResponse AWS API Documentation
1915
+ #
1916
+ class StartPlanExecutionResponse < Struct.new(
1917
+ :execution_id,
1918
+ :plan,
1919
+ :plan_version,
1920
+ :activate_region,
1921
+ :deactivate_region)
1922
+ SENSITIVE = []
1923
+ include Aws::Structure
1924
+ end
1925
+
1926
+ # Represents a step in a Region switch plan workflow. Each step performs
1927
+ # a specific action during the Region switch process.
1928
+ #
1929
+ # @!attribute [rw] name
1930
+ # The name of a step in a workflow.
1931
+ # @return [String]
1932
+ #
1933
+ # @!attribute [rw] description
1934
+ # The description of a step in a workflow.
1935
+ # @return [String]
1936
+ #
1937
+ # @!attribute [rw] execution_block_configuration
1938
+ # The configuration for an execution block in a workflow.
1939
+ # @return [Types::ExecutionBlockConfiguration]
1940
+ #
1941
+ # @!attribute [rw] execution_block_type
1942
+ # The type of an execution block in a workflow.
1943
+ # @return [String]
1944
+ #
1945
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/Step AWS API Documentation
1946
+ #
1947
+ class Step < Struct.new(
1948
+ :name,
1949
+ :description,
1950
+ :execution_block_configuration,
1951
+ :execution_block_type)
1952
+ SENSITIVE = []
1953
+ include Aws::Structure
1954
+ end
1955
+
1956
+ # Represents the state of a step in a plan execution.
1957
+ #
1958
+ # @!attribute [rw] name
1959
+ # The name of a step in a workflow.
1960
+ # @return [String]
1961
+ #
1962
+ # @!attribute [rw] status
1963
+ # The status of a step in a workflow. For example, a status might be
1964
+ # Completed or Pending Approval.
1965
+ # @return [String]
1966
+ #
1967
+ # @!attribute [rw] start_time
1968
+ # The timestamp when a step started execution.
1969
+ # @return [Time]
1970
+ #
1971
+ # @!attribute [rw] end_time
1972
+ # The timestamp when a step endeded execution.
1973
+ # @return [Time]
1974
+ #
1975
+ # @!attribute [rw] step_mode
1976
+ # The mode for a step execution. The mode can be Graceful or
1977
+ # Ungraceful.
1978
+ # @return [String]
1979
+ #
1980
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/StepState AWS API Documentation
1981
+ #
1982
+ class StepState < Struct.new(
1983
+ :name,
1984
+ :status,
1985
+ :start_time,
1986
+ :end_time,
1987
+ :step_mode)
1988
+ SENSITIVE = []
1989
+ include Aws::Structure
1990
+ end
1991
+
1992
+ # @!attribute [rw] arn
1993
+ # The Amazon Resource Name (ARN) for a tag that you add to a resource.
1994
+ # @return [String]
1995
+ #
1996
+ # @!attribute [rw] tags
1997
+ # Tags that you add to a resource. You can add a maximum of 50 tags in
1998
+ # Region switch.
1999
+ # @return [Hash<String,String>]
2000
+ #
2001
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/TagResourceRequest AWS API Documentation
2002
+ #
2003
+ class TagResourceRequest < Struct.new(
2004
+ :arn,
2005
+ :tags)
2006
+ SENSITIVE = []
2007
+ include Aws::Structure
2008
+ end
2009
+
2010
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/TagResourceResponse AWS API Documentation
2011
+ #
2012
+ class TagResourceResponse < Aws::EmptyStructure; end
2013
+
2014
+ # Defines a condition that can automatically trigger the execution of a
2015
+ # Region switch plan.
2016
+ #
2017
+ # @!attribute [rw] description
2018
+ # The description for a trigger.
2019
+ # @return [String]
2020
+ #
2021
+ # @!attribute [rw] target_region
2022
+ # The Amazon Web Services Region for a trigger.
2023
+ # @return [String]
2024
+ #
2025
+ # @!attribute [rw] action
2026
+ # The action to perform when the trigger fires. Valid values include
2027
+ # ACTIVATE and DEACTIVATE.
2028
+ # @return [String]
2029
+ #
2030
+ # @!attribute [rw] conditions
2031
+ # The conditions that must be met for the trigger to fire.
2032
+ # @return [Array<Types::TriggerCondition>]
2033
+ #
2034
+ # @!attribute [rw] min_delay_minutes_between_executions
2035
+ # The minimum time, in minutes, that must elapse between automatic
2036
+ # executions of the plan.
2037
+ # @return [Integer]
2038
+ #
2039
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/Trigger AWS API Documentation
2040
+ #
2041
+ class Trigger < Struct.new(
2042
+ :description,
2043
+ :target_region,
2044
+ :action,
2045
+ :conditions,
2046
+ :min_delay_minutes_between_executions)
2047
+ SENSITIVE = []
2048
+ include Aws::Structure
2049
+ end
2050
+
2051
+ # Defines a condition that must be met for a trigger to fire.
2052
+ #
2053
+ # @!attribute [rw] associated_alarm_name
2054
+ # The name of the CloudWatch alarm associated with the condition.
2055
+ # @return [String]
2056
+ #
2057
+ # @!attribute [rw] condition
2058
+ # The condition that must be met. Valid values include ALARM and OK.
2059
+ # @return [String]
2060
+ #
2061
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/TriggerCondition AWS API Documentation
2062
+ #
2063
+ class TriggerCondition < Struct.new(
2064
+ :associated_alarm_name,
2065
+ :condition)
2066
+ SENSITIVE = []
2067
+ include Aws::Structure
2068
+ end
2069
+
2070
+ # @!attribute [rw] arn
2071
+ # The Amazon Resource Name (ARN) for a tag you remove a resource from.
2072
+ # @return [String]
2073
+ #
2074
+ # @!attribute [rw] resource_tag_keys
2075
+ # Tag keys that you remove from a resource.
2076
+ # @return [Array<String>]
2077
+ #
2078
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/UntagResourceRequest AWS API Documentation
2079
+ #
2080
+ class UntagResourceRequest < Struct.new(
2081
+ :arn,
2082
+ :resource_tag_keys)
2083
+ SENSITIVE = []
2084
+ include Aws::Structure
2085
+ end
2086
+
2087
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/UntagResourceResponse AWS API Documentation
2088
+ #
2089
+ class UntagResourceResponse < Aws::EmptyStructure; end
2090
+
2091
+ # @!attribute [rw] plan_arn
2092
+ # The Amazon Resource Name (ARN) of the plan with the execution to
2093
+ # update.
2094
+ # @return [String]
2095
+ #
2096
+ # @!attribute [rw] execution_id
2097
+ # The execution identifier of a plan execution.
2098
+ # @return [String]
2099
+ #
2100
+ # @!attribute [rw] action
2101
+ # The action specified for a plan execution, for example, Switch to
2102
+ # Graceful or Pause.
2103
+ # @return [String]
2104
+ #
2105
+ # @!attribute [rw] comment
2106
+ # An optional comment about the plan execution.
2107
+ # @return [String]
2108
+ #
2109
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/UpdatePlanExecutionRequest AWS API Documentation
2110
+ #
2111
+ class UpdatePlanExecutionRequest < Struct.new(
2112
+ :plan_arn,
2113
+ :execution_id,
2114
+ :action,
2115
+ :comment)
2116
+ SENSITIVE = []
2117
+ include Aws::Structure
2118
+ end
2119
+
2120
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/UpdatePlanExecutionResponse AWS API Documentation
2121
+ #
2122
+ class UpdatePlanExecutionResponse < Aws::EmptyStructure; end
2123
+
2124
+ # @!attribute [rw] plan_arn
2125
+ # The Amazon Resource Name (ARN) of the plan containing the execution
2126
+ # step to update.
2127
+ # @return [String]
2128
+ #
2129
+ # @!attribute [rw] execution_id
2130
+ # The unique identifier of the plan execution containing the step to
2131
+ # update.
2132
+ # @return [String]
2133
+ #
2134
+ # @!attribute [rw] comment
2135
+ # An optional comment about the plan execution.
2136
+ # @return [String]
2137
+ #
2138
+ # @!attribute [rw] step_name
2139
+ # The name of the execution step to update.
2140
+ # @return [String]
2141
+ #
2142
+ # @!attribute [rw] action_to_take
2143
+ # The updated action to take for the step. This can be used to skip or
2144
+ # retry a step.
2145
+ # @return [String]
2146
+ #
2147
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/UpdatePlanExecutionStepRequest AWS API Documentation
2148
+ #
2149
+ class UpdatePlanExecutionStepRequest < Struct.new(
2150
+ :plan_arn,
2151
+ :execution_id,
2152
+ :comment,
2153
+ :step_name,
2154
+ :action_to_take)
2155
+ SENSITIVE = []
2156
+ include Aws::Structure
2157
+ end
2158
+
2159
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/UpdatePlanExecutionStepResponse AWS API Documentation
2160
+ #
2161
+ class UpdatePlanExecutionStepResponse < Aws::EmptyStructure; end
2162
+
2163
+ # @!attribute [rw] arn
2164
+ # The Amazon Resource Name (ARN) of the plan.
2165
+ # @return [String]
2166
+ #
2167
+ # @!attribute [rw] description
2168
+ # The updated description for the Region switch plan.
2169
+ # @return [String]
2170
+ #
2171
+ # @!attribute [rw] workflows
2172
+ # The updated workflows for the Region switch plan.
2173
+ # @return [Array<Types::Workflow>]
2174
+ #
2175
+ # @!attribute [rw] execution_role
2176
+ # The updated IAM role ARN that grants Region switch the permissions
2177
+ # needed to execute the plan steps.
2178
+ # @return [String]
2179
+ #
2180
+ # @!attribute [rw] recovery_time_objective_minutes
2181
+ # The updated target recovery time objective (RTO) in minutes for the
2182
+ # plan.
2183
+ # @return [Integer]
2184
+ #
2185
+ # @!attribute [rw] associated_alarms
2186
+ # The updated CloudWatch alarms associated with the plan.
2187
+ # @return [Hash<String,Types::AssociatedAlarm>]
2188
+ #
2189
+ # @!attribute [rw] triggers
2190
+ # The updated conditions that can automatically trigger the execution
2191
+ # of the plan.
2192
+ # @return [Array<Types::Trigger>]
2193
+ #
2194
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/UpdatePlanRequest AWS API Documentation
2195
+ #
2196
+ class UpdatePlanRequest < Struct.new(
2197
+ :arn,
2198
+ :description,
2199
+ :workflows,
2200
+ :execution_role,
2201
+ :recovery_time_objective_minutes,
2202
+ :associated_alarms,
2203
+ :triggers)
2204
+ SENSITIVE = []
2205
+ include Aws::Structure
2206
+ end
2207
+
2208
+ # @!attribute [rw] plan
2209
+ # The details of the updated Region switch plan.
2210
+ # @return [Types::Plan]
2211
+ #
2212
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/UpdatePlanResponse AWS API Documentation
2213
+ #
2214
+ class UpdatePlanResponse < Struct.new(
2215
+ :plan)
2216
+ SENSITIVE = []
2217
+ include Aws::Structure
2218
+ end
2219
+
2220
+ # Represents a workflow in a Region switch plan. A workflow defines a
2221
+ # sequence of steps to execute during a Region switch.
2222
+ #
2223
+ # @!attribute [rw] steps
2224
+ # The steps that make up the workflow.
2225
+ # @return [Array<Types::Step>]
2226
+ #
2227
+ # @!attribute [rw] workflow_target_action
2228
+ # The action that the workflow performs. Valid values include ACTIVATE
2229
+ # and DEACTIVATE.
2230
+ # @return [String]
2231
+ #
2232
+ # @!attribute [rw] workflow_target_region
2233
+ # The Amazon Web Services Region that the workflow targets.
2234
+ # @return [String]
2235
+ #
2236
+ # @!attribute [rw] workflow_description
2237
+ # The description of the workflow.
2238
+ # @return [String]
2239
+ #
2240
+ # @see http://docs.aws.amazon.com/goto/WebAPI/arc-region-switch-2022-07-26/Workflow AWS API Documentation
2241
+ #
2242
+ class Workflow < Struct.new(
2243
+ :steps,
2244
+ :workflow_target_action,
2245
+ :workflow_target_region,
2246
+ :workflow_description)
2247
+ SENSITIVE = []
2248
+ include Aws::Structure
2249
+ end
2250
+
2251
+ end
2252
+ end
2253
+