aws-sdk-fis 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
File without changes
@@ -0,0 +1,102 @@
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::FIS
11
+
12
+ # When FIS returns an error response, the Ruby SDK constructs and raises an error.
13
+ # These errors all extend Aws::FIS::Errors::ServiceError < {Aws::Errors::ServiceError}
14
+ #
15
+ # You can rescue all FIS errors using ServiceError:
16
+ #
17
+ # begin
18
+ # # do stuff
19
+ # rescue Aws::FIS::Errors::ServiceError
20
+ # # rescues all FIS API errors
21
+ # end
22
+ #
23
+ #
24
+ # ## Request Context
25
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
26
+ # information about the request that generated the error.
27
+ # See {Seahorse::Client::RequestContext} for more information.
28
+ #
29
+ # ## Error Classes
30
+ # * {ConflictException}
31
+ # * {ResourceNotFoundException}
32
+ # * {ServiceQuotaExceededException}
33
+ # * {ValidationException}
34
+ #
35
+ # Additionally, error classes are dynamically generated for service errors based on the error code
36
+ # if they are not defined above.
37
+ module Errors
38
+
39
+ extend Aws::Errors::DynamicErrors
40
+
41
+ class ConflictException < ServiceError
42
+
43
+ # @param [Seahorse::Client::RequestContext] context
44
+ # @param [String] message
45
+ # @param [Aws::FIS::Types::ConflictException] data
46
+ def initialize(context, message, data = Aws::EmptyStructure.new)
47
+ super(context, message, data)
48
+ end
49
+
50
+ # @return [String]
51
+ def message
52
+ @message || @data[:message]
53
+ end
54
+ end
55
+
56
+ class ResourceNotFoundException < ServiceError
57
+
58
+ # @param [Seahorse::Client::RequestContext] context
59
+ # @param [String] message
60
+ # @param [Aws::FIS::Types::ResourceNotFoundException] data
61
+ def initialize(context, message, data = Aws::EmptyStructure.new)
62
+ super(context, message, data)
63
+ end
64
+
65
+ # @return [String]
66
+ def message
67
+ @message || @data[:message]
68
+ end
69
+ end
70
+
71
+ class ServiceQuotaExceededException < ServiceError
72
+
73
+ # @param [Seahorse::Client::RequestContext] context
74
+ # @param [String] message
75
+ # @param [Aws::FIS::Types::ServiceQuotaExceededException] data
76
+ def initialize(context, message, data = Aws::EmptyStructure.new)
77
+ super(context, message, data)
78
+ end
79
+
80
+ # @return [String]
81
+ def message
82
+ @message || @data[:message]
83
+ end
84
+ end
85
+
86
+ class ValidationException < ServiceError
87
+
88
+ # @param [Seahorse::Client::RequestContext] context
89
+ # @param [String] message
90
+ # @param [Aws::FIS::Types::ValidationException] data
91
+ def initialize(context, message, data = Aws::EmptyStructure.new)
92
+ super(context, message, data)
93
+ end
94
+
95
+ # @return [String]
96
+ def message
97
+ @message || @data[:message]
98
+ end
99
+ end
100
+
101
+ end
102
+ end
@@ -0,0 +1,26 @@
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::FIS
11
+
12
+ class Resource
13
+
14
+ # @param options ({})
15
+ # @option options [Client] :client
16
+ def initialize(options = {})
17
+ @client = options[:client] || Client.new(options)
18
+ end
19
+
20
+ # @return [Client]
21
+ def client
22
+ @client
23
+ end
24
+
25
+ end
26
+ end
@@ -0,0 +1,1563 @@
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::FIS
11
+ module Types
12
+
13
+ # Describes an action. For more information, see [AWS FIS actions][1] in
14
+ # the *AWS Fault Injection Simulator User Guide*.
15
+ #
16
+ #
17
+ #
18
+ # [1]: https://docs.aws.amazon.com/fis/latest/userguide/fis-actions-reference.html
19
+ #
20
+ # @!attribute [rw] id
21
+ # The ID of the action.
22
+ # @return [String]
23
+ #
24
+ # @!attribute [rw] description
25
+ # The description for the action.
26
+ # @return [String]
27
+ #
28
+ # @!attribute [rw] parameters
29
+ # The action parameters, if applicable.
30
+ # @return [Hash<String,Types::ActionParameter>]
31
+ #
32
+ # @!attribute [rw] targets
33
+ # The supported targets for the action.
34
+ # @return [Hash<String,Types::ActionTarget>]
35
+ #
36
+ # @!attribute [rw] tags
37
+ # The tags for the action.
38
+ # @return [Hash<String,String>]
39
+ #
40
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/Action AWS API Documentation
41
+ #
42
+ class Action < Struct.new(
43
+ :id,
44
+ :description,
45
+ :parameters,
46
+ :targets,
47
+ :tags)
48
+ SENSITIVE = []
49
+ include Aws::Structure
50
+ end
51
+
52
+ # Describes a parameter for an action.
53
+ #
54
+ # @!attribute [rw] description
55
+ # The parameter description.
56
+ # @return [String]
57
+ #
58
+ # @!attribute [rw] required
59
+ # Indicates whether the parameter is required.
60
+ # @return [Boolean]
61
+ #
62
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ActionParameter AWS API Documentation
63
+ #
64
+ class ActionParameter < Struct.new(
65
+ :description,
66
+ :required)
67
+ SENSITIVE = []
68
+ include Aws::Structure
69
+ end
70
+
71
+ # Provides a summary of an action.
72
+ #
73
+ # @!attribute [rw] id
74
+ # The ID of the action.
75
+ # @return [String]
76
+ #
77
+ # @!attribute [rw] description
78
+ # The description for the action.
79
+ # @return [String]
80
+ #
81
+ # @!attribute [rw] targets
82
+ # The targets for the action.
83
+ # @return [Hash<String,Types::ActionTarget>]
84
+ #
85
+ # @!attribute [rw] tags
86
+ # The tags for the action.
87
+ # @return [Hash<String,String>]
88
+ #
89
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ActionSummary AWS API Documentation
90
+ #
91
+ class ActionSummary < Struct.new(
92
+ :id,
93
+ :description,
94
+ :targets,
95
+ :tags)
96
+ SENSITIVE = []
97
+ include Aws::Structure
98
+ end
99
+
100
+ # Describes a target for an action.
101
+ #
102
+ # @!attribute [rw] resource_type
103
+ # The resource type of the target.
104
+ # @return [String]
105
+ #
106
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ActionTarget AWS API Documentation
107
+ #
108
+ class ActionTarget < Struct.new(
109
+ :resource_type)
110
+ SENSITIVE = []
111
+ include Aws::Structure
112
+ end
113
+
114
+ # The request could not be processed because of a conflict.
115
+ #
116
+ # @!attribute [rw] message
117
+ # @return [String]
118
+ #
119
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ConflictException AWS API Documentation
120
+ #
121
+ class ConflictException < Struct.new(
122
+ :message)
123
+ SENSITIVE = []
124
+ include Aws::Structure
125
+ end
126
+
127
+ # Specifies an action for an experiment template.
128
+ #
129
+ # @note When making an API call, you may pass CreateExperimentTemplateActionInput
130
+ # data as a hash:
131
+ #
132
+ # {
133
+ # action_id: "ActionId", # required
134
+ # description: "ExperimentTemplateActionDescription",
135
+ # parameters: {
136
+ # "ExperimentTemplateActionParameterName" => "ExperimentTemplateActionParameter",
137
+ # },
138
+ # targets: {
139
+ # "ExperimentTemplateActionTargetName" => "ExperimentTemplateTargetName",
140
+ # },
141
+ # start_after: ["ExperimentTemplateActionStartAfter"],
142
+ # }
143
+ #
144
+ # @!attribute [rw] action_id
145
+ # The ID of the action.
146
+ # @return [String]
147
+ #
148
+ # @!attribute [rw] description
149
+ # A description for the action.
150
+ # @return [String]
151
+ #
152
+ # @!attribute [rw] parameters
153
+ # The parameters for the action, if applicable.
154
+ # @return [Hash<String,String>]
155
+ #
156
+ # @!attribute [rw] targets
157
+ # The targets for the action.
158
+ # @return [Hash<String,String>]
159
+ #
160
+ # @!attribute [rw] start_after
161
+ # The name of the action that must be completed before the current
162
+ # action starts. Omit this parameter to run the action at the start of
163
+ # the experiment.
164
+ # @return [Array<String>]
165
+ #
166
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/CreateExperimentTemplateActionInput AWS API Documentation
167
+ #
168
+ class CreateExperimentTemplateActionInput < Struct.new(
169
+ :action_id,
170
+ :description,
171
+ :parameters,
172
+ :targets,
173
+ :start_after)
174
+ SENSITIVE = []
175
+ include Aws::Structure
176
+ end
177
+
178
+ # @note When making an API call, you may pass CreateExperimentTemplateRequest
179
+ # data as a hash:
180
+ #
181
+ # {
182
+ # client_token: "ClientToken", # required
183
+ # description: "ExperimentTemplateDescription", # required
184
+ # stop_conditions: [ # required
185
+ # {
186
+ # source: "StopConditionSource", # required
187
+ # value: "StopConditionValue",
188
+ # },
189
+ # ],
190
+ # targets: {
191
+ # "ExperimentTemplateTargetName" => {
192
+ # resource_type: "ResourceType", # required
193
+ # resource_arns: ["ResourceArn"],
194
+ # resource_tags: {
195
+ # "TagKey" => "TagValue",
196
+ # },
197
+ # filters: [
198
+ # {
199
+ # path: "ExperimentTemplateTargetFilterPath", # required
200
+ # values: ["ExperimentTemplateTargetFilterValue"], # required
201
+ # },
202
+ # ],
203
+ # selection_mode: "ExperimentTemplateTargetSelectionMode", # required
204
+ # },
205
+ # },
206
+ # actions: { # required
207
+ # "ExperimentTemplateActionName" => {
208
+ # action_id: "ActionId", # required
209
+ # description: "ExperimentTemplateActionDescription",
210
+ # parameters: {
211
+ # "ExperimentTemplateActionParameterName" => "ExperimentTemplateActionParameter",
212
+ # },
213
+ # targets: {
214
+ # "ExperimentTemplateActionTargetName" => "ExperimentTemplateTargetName",
215
+ # },
216
+ # start_after: ["ExperimentTemplateActionStartAfter"],
217
+ # },
218
+ # },
219
+ # role_arn: "RoleArn", # required
220
+ # tags: {
221
+ # "TagKey" => "TagValue",
222
+ # },
223
+ # }
224
+ #
225
+ # @!attribute [rw] client_token
226
+ # Unique, case-sensitive identifier that you provide to ensure the
227
+ # idempotency of the request.
228
+ #
229
+ # **A suitable default value is auto-generated.** You should normally
230
+ # not need to pass this option.
231
+ # @return [String]
232
+ #
233
+ # @!attribute [rw] description
234
+ # A description for the experiment template. Can contain up to 64
235
+ # letters (A-Z and a-z).
236
+ # @return [String]
237
+ #
238
+ # @!attribute [rw] stop_conditions
239
+ # The stop conditions.
240
+ # @return [Array<Types::CreateExperimentTemplateStopConditionInput>]
241
+ #
242
+ # @!attribute [rw] targets
243
+ # The targets for the experiment.
244
+ # @return [Hash<String,Types::CreateExperimentTemplateTargetInput>]
245
+ #
246
+ # @!attribute [rw] actions
247
+ # The actions for the experiment.
248
+ # @return [Hash<String,Types::CreateExperimentTemplateActionInput>]
249
+ #
250
+ # @!attribute [rw] role_arn
251
+ # The Amazon Resource Name (ARN) of an IAM role that grants the AWS
252
+ # FIS service permission to perform service actions on your behalf.
253
+ # @return [String]
254
+ #
255
+ # @!attribute [rw] tags
256
+ # The tags to apply to the experiment template.
257
+ # @return [Hash<String,String>]
258
+ #
259
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/CreateExperimentTemplateRequest AWS API Documentation
260
+ #
261
+ class CreateExperimentTemplateRequest < Struct.new(
262
+ :client_token,
263
+ :description,
264
+ :stop_conditions,
265
+ :targets,
266
+ :actions,
267
+ :role_arn,
268
+ :tags)
269
+ SENSITIVE = []
270
+ include Aws::Structure
271
+ end
272
+
273
+ # @!attribute [rw] experiment_template
274
+ # Information about the experiment template.
275
+ # @return [Types::ExperimentTemplate]
276
+ #
277
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/CreateExperimentTemplateResponse AWS API Documentation
278
+ #
279
+ class CreateExperimentTemplateResponse < Struct.new(
280
+ :experiment_template)
281
+ SENSITIVE = []
282
+ include Aws::Structure
283
+ end
284
+
285
+ # Specifies a stop condition for an experiment template.
286
+ #
287
+ # @note When making an API call, you may pass CreateExperimentTemplateStopConditionInput
288
+ # data as a hash:
289
+ #
290
+ # {
291
+ # source: "StopConditionSource", # required
292
+ # value: "StopConditionValue",
293
+ # }
294
+ #
295
+ # @!attribute [rw] source
296
+ # The source for the stop condition. Specify `aws:cloudwatch:alarm` if
297
+ # the stop condition is defined by a CloudWatch alarm. Specify `none`
298
+ # if there is no stop condition.
299
+ # @return [String]
300
+ #
301
+ # @!attribute [rw] value
302
+ # The Amazon Resource Name (ARN) of the CloudWatch alarm. This is
303
+ # required if the source is a CloudWatch alarm.
304
+ # @return [String]
305
+ #
306
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/CreateExperimentTemplateStopConditionInput AWS API Documentation
307
+ #
308
+ class CreateExperimentTemplateStopConditionInput < Struct.new(
309
+ :source,
310
+ :value)
311
+ SENSITIVE = []
312
+ include Aws::Structure
313
+ end
314
+
315
+ # Specifies a target for an experiment. You must specify at least one
316
+ # Amazon Resource Name (ARN) or at least one resource tag. You cannot
317
+ # specify both ARNs and tags.
318
+ #
319
+ # @note When making an API call, you may pass CreateExperimentTemplateTargetInput
320
+ # data as a hash:
321
+ #
322
+ # {
323
+ # resource_type: "ResourceType", # required
324
+ # resource_arns: ["ResourceArn"],
325
+ # resource_tags: {
326
+ # "TagKey" => "TagValue",
327
+ # },
328
+ # filters: [
329
+ # {
330
+ # path: "ExperimentTemplateTargetFilterPath", # required
331
+ # values: ["ExperimentTemplateTargetFilterValue"], # required
332
+ # },
333
+ # ],
334
+ # selection_mode: "ExperimentTemplateTargetSelectionMode", # required
335
+ # }
336
+ #
337
+ # @!attribute [rw] resource_type
338
+ # The AWS resource type. The resource type must be supported for the
339
+ # specified action.
340
+ # @return [String]
341
+ #
342
+ # @!attribute [rw] resource_arns
343
+ # The Amazon Resource Names (ARNs) of the resources.
344
+ # @return [Array<String>]
345
+ #
346
+ # @!attribute [rw] resource_tags
347
+ # The tags for the target resources.
348
+ # @return [Hash<String,String>]
349
+ #
350
+ # @!attribute [rw] filters
351
+ # The filters to apply to identify target resources using specific
352
+ # attributes.
353
+ # @return [Array<Types::ExperimentTemplateTargetInputFilter>]
354
+ #
355
+ # @!attribute [rw] selection_mode
356
+ # Scopes the identified resources to a specific count of the resources
357
+ # at random, or a percentage of the resources. All identified
358
+ # resources are included in the target.
359
+ #
360
+ # * ALL - Run the action on all identified targets. This is the
361
+ # default.
362
+ #
363
+ # * COUNT(n) - Run the action on the specified number of targets,
364
+ # chosen from the identified targets at random. For example,
365
+ # COUNT(1) selects one of the targets.
366
+ #
367
+ # * PERCENT(n) - Run the action on the specified percentage of
368
+ # targets, chosen from the identified targets at random. For
369
+ # example, PERCENT(25) selects 25% of the targets.
370
+ # @return [String]
371
+ #
372
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/CreateExperimentTemplateTargetInput AWS API Documentation
373
+ #
374
+ class CreateExperimentTemplateTargetInput < Struct.new(
375
+ :resource_type,
376
+ :resource_arns,
377
+ :resource_tags,
378
+ :filters,
379
+ :selection_mode)
380
+ SENSITIVE = []
381
+ include Aws::Structure
382
+ end
383
+
384
+ # @note When making an API call, you may pass DeleteExperimentTemplateRequest
385
+ # data as a hash:
386
+ #
387
+ # {
388
+ # id: "ExperimentTemplateId", # required
389
+ # }
390
+ #
391
+ # @!attribute [rw] id
392
+ # The ID of the experiment template.
393
+ # @return [String]
394
+ #
395
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/DeleteExperimentTemplateRequest AWS API Documentation
396
+ #
397
+ class DeleteExperimentTemplateRequest < Struct.new(
398
+ :id)
399
+ SENSITIVE = []
400
+ include Aws::Structure
401
+ end
402
+
403
+ # @!attribute [rw] experiment_template
404
+ # Information about the experiment template.
405
+ # @return [Types::ExperimentTemplate]
406
+ #
407
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/DeleteExperimentTemplateResponse AWS API Documentation
408
+ #
409
+ class DeleteExperimentTemplateResponse < Struct.new(
410
+ :experiment_template)
411
+ SENSITIVE = []
412
+ include Aws::Structure
413
+ end
414
+
415
+ # Describes an experiment.
416
+ #
417
+ # @!attribute [rw] id
418
+ # The ID of the experiment.
419
+ # @return [String]
420
+ #
421
+ # @!attribute [rw] experiment_template_id
422
+ # The ID of the experiment template.
423
+ # @return [String]
424
+ #
425
+ # @!attribute [rw] role_arn
426
+ # The Amazon Resource Name (ARN) of an IAM role that grants the AWS
427
+ # FIS service permission to perform service actions on your behalf.
428
+ # @return [String]
429
+ #
430
+ # @!attribute [rw] state
431
+ # The state of the experiment.
432
+ # @return [Types::ExperimentState]
433
+ #
434
+ # @!attribute [rw] targets
435
+ # The targets for the experiment.
436
+ # @return [Hash<String,Types::ExperimentTarget>]
437
+ #
438
+ # @!attribute [rw] actions
439
+ # The actions for the experiment.
440
+ # @return [Hash<String,Types::ExperimentAction>]
441
+ #
442
+ # @!attribute [rw] stop_conditions
443
+ # The stop conditions for the experiment.
444
+ # @return [Array<Types::ExperimentStopCondition>]
445
+ #
446
+ # @!attribute [rw] creation_time
447
+ # The time the experiment was created.
448
+ # @return [Time]
449
+ #
450
+ # @!attribute [rw] start_time
451
+ # The time that the experiment was started.
452
+ # @return [Time]
453
+ #
454
+ # @!attribute [rw] end_time
455
+ # The time that the experiment ended.
456
+ # @return [Time]
457
+ #
458
+ # @!attribute [rw] tags
459
+ # The tags for the experiment.
460
+ # @return [Hash<String,String>]
461
+ #
462
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/Experiment AWS API Documentation
463
+ #
464
+ class Experiment < Struct.new(
465
+ :id,
466
+ :experiment_template_id,
467
+ :role_arn,
468
+ :state,
469
+ :targets,
470
+ :actions,
471
+ :stop_conditions,
472
+ :creation_time,
473
+ :start_time,
474
+ :end_time,
475
+ :tags)
476
+ SENSITIVE = []
477
+ include Aws::Structure
478
+ end
479
+
480
+ # Describes the action for an experiment.
481
+ #
482
+ # @!attribute [rw] action_id
483
+ # The ID of the action.
484
+ # @return [String]
485
+ #
486
+ # @!attribute [rw] description
487
+ # The description for the action.
488
+ # @return [String]
489
+ #
490
+ # @!attribute [rw] parameters
491
+ # The parameters for the action.
492
+ # @return [Hash<String,String>]
493
+ #
494
+ # @!attribute [rw] targets
495
+ # The targets for the action.
496
+ # @return [Hash<String,String>]
497
+ #
498
+ # @!attribute [rw] start_after
499
+ # The name of the action that must be completed before this action
500
+ # starts.
501
+ # @return [Array<String>]
502
+ #
503
+ # @!attribute [rw] state
504
+ # The state of the action.
505
+ # @return [Types::ExperimentActionState]
506
+ #
507
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ExperimentAction AWS API Documentation
508
+ #
509
+ class ExperimentAction < Struct.new(
510
+ :action_id,
511
+ :description,
512
+ :parameters,
513
+ :targets,
514
+ :start_after,
515
+ :state)
516
+ SENSITIVE = []
517
+ include Aws::Structure
518
+ end
519
+
520
+ # Describes the state of an action.
521
+ #
522
+ # @!attribute [rw] status
523
+ # The state of the action.
524
+ # @return [String]
525
+ #
526
+ # @!attribute [rw] reason
527
+ # The reason for the state.
528
+ # @return [String]
529
+ #
530
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ExperimentActionState AWS API Documentation
531
+ #
532
+ class ExperimentActionState < Struct.new(
533
+ :status,
534
+ :reason)
535
+ SENSITIVE = []
536
+ include Aws::Structure
537
+ end
538
+
539
+ # Describes the state of an experiment.
540
+ #
541
+ # @!attribute [rw] status
542
+ # The state of the experiment.
543
+ # @return [String]
544
+ #
545
+ # @!attribute [rw] reason
546
+ # The reason for the state.
547
+ # @return [String]
548
+ #
549
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ExperimentState AWS API Documentation
550
+ #
551
+ class ExperimentState < Struct.new(
552
+ :status,
553
+ :reason)
554
+ SENSITIVE = []
555
+ include Aws::Structure
556
+ end
557
+
558
+ # Describes the stop condition for an experiment.
559
+ #
560
+ # @!attribute [rw] source
561
+ # The source for the stop condition.
562
+ # @return [String]
563
+ #
564
+ # @!attribute [rw] value
565
+ # The Amazon Resource Name (ARN) of the CloudWatch alarm, if
566
+ # applicable.
567
+ # @return [String]
568
+ #
569
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ExperimentStopCondition AWS API Documentation
570
+ #
571
+ class ExperimentStopCondition < Struct.new(
572
+ :source,
573
+ :value)
574
+ SENSITIVE = []
575
+ include Aws::Structure
576
+ end
577
+
578
+ # Provides a summary of an experiment.
579
+ #
580
+ # @!attribute [rw] id
581
+ # The ID of the experiment.
582
+ # @return [String]
583
+ #
584
+ # @!attribute [rw] experiment_template_id
585
+ # The ID of the experiment template.
586
+ # @return [String]
587
+ #
588
+ # @!attribute [rw] state
589
+ # The state of the experiment.
590
+ # @return [Types::ExperimentState]
591
+ #
592
+ # @!attribute [rw] creation_time
593
+ # The time that the experiment was created.
594
+ # @return [Time]
595
+ #
596
+ # @!attribute [rw] tags
597
+ # The tags for the experiment.
598
+ # @return [Hash<String,String>]
599
+ #
600
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ExperimentSummary AWS API Documentation
601
+ #
602
+ class ExperimentSummary < Struct.new(
603
+ :id,
604
+ :experiment_template_id,
605
+ :state,
606
+ :creation_time,
607
+ :tags)
608
+ SENSITIVE = []
609
+ include Aws::Structure
610
+ end
611
+
612
+ # Describes a target for an experiment.
613
+ #
614
+ # @!attribute [rw] resource_type
615
+ # The resource type.
616
+ # @return [String]
617
+ #
618
+ # @!attribute [rw] resource_arns
619
+ # The Amazon Resource Names (ARNs) of the resources.
620
+ # @return [Array<String>]
621
+ #
622
+ # @!attribute [rw] resource_tags
623
+ # The tags for the target resources.
624
+ # @return [Hash<String,String>]
625
+ #
626
+ # @!attribute [rw] filters
627
+ # The filters to apply to identify target resources using specific
628
+ # attributes.
629
+ # @return [Array<Types::ExperimentTargetFilter>]
630
+ #
631
+ # @!attribute [rw] selection_mode
632
+ # Scopes the identified resources to a specific count or percentage.
633
+ # @return [String]
634
+ #
635
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ExperimentTarget AWS API Documentation
636
+ #
637
+ class ExperimentTarget < Struct.new(
638
+ :resource_type,
639
+ :resource_arns,
640
+ :resource_tags,
641
+ :filters,
642
+ :selection_mode)
643
+ SENSITIVE = []
644
+ include Aws::Structure
645
+ end
646
+
647
+ # Describes a filter used for the target resources in an experiment.
648
+ #
649
+ # @!attribute [rw] path
650
+ # The attribute path for the filter.
651
+ # @return [String]
652
+ #
653
+ # @!attribute [rw] values
654
+ # The attribute values for the filter.
655
+ # @return [Array<String>]
656
+ #
657
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ExperimentTargetFilter AWS API Documentation
658
+ #
659
+ class ExperimentTargetFilter < Struct.new(
660
+ :path,
661
+ :values)
662
+ SENSITIVE = []
663
+ include Aws::Structure
664
+ end
665
+
666
+ # Describes an experiment template.
667
+ #
668
+ # @!attribute [rw] id
669
+ # The ID of the experiment template.
670
+ # @return [String]
671
+ #
672
+ # @!attribute [rw] description
673
+ # The description for the experiment template.
674
+ # @return [String]
675
+ #
676
+ # @!attribute [rw] targets
677
+ # The targets for the experiment.
678
+ # @return [Hash<String,Types::ExperimentTemplateTarget>]
679
+ #
680
+ # @!attribute [rw] actions
681
+ # The actions for the experiment.
682
+ # @return [Hash<String,Types::ExperimentTemplateAction>]
683
+ #
684
+ # @!attribute [rw] stop_conditions
685
+ # The stop conditions for the experiment.
686
+ # @return [Array<Types::ExperimentTemplateStopCondition>]
687
+ #
688
+ # @!attribute [rw] creation_time
689
+ # The time the experiment template was created.
690
+ # @return [Time]
691
+ #
692
+ # @!attribute [rw] last_update_time
693
+ # The time the experiment template was last updated.
694
+ # @return [Time]
695
+ #
696
+ # @!attribute [rw] role_arn
697
+ # The Amazon Resource Name (ARN) of an IAM role.
698
+ # @return [String]
699
+ #
700
+ # @!attribute [rw] tags
701
+ # The tags for the experiment template.
702
+ # @return [Hash<String,String>]
703
+ #
704
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ExperimentTemplate AWS API Documentation
705
+ #
706
+ class ExperimentTemplate < Struct.new(
707
+ :id,
708
+ :description,
709
+ :targets,
710
+ :actions,
711
+ :stop_conditions,
712
+ :creation_time,
713
+ :last_update_time,
714
+ :role_arn,
715
+ :tags)
716
+ SENSITIVE = []
717
+ include Aws::Structure
718
+ end
719
+
720
+ # Describes an action for an experiment template.
721
+ #
722
+ # @!attribute [rw] action_id
723
+ # The ID of the action.
724
+ # @return [String]
725
+ #
726
+ # @!attribute [rw] description
727
+ # A description for the action.
728
+ # @return [String]
729
+ #
730
+ # @!attribute [rw] parameters
731
+ # The parameters for the action.
732
+ # @return [Hash<String,String>]
733
+ #
734
+ # @!attribute [rw] targets
735
+ # The targets for the action.
736
+ # @return [Hash<String,String>]
737
+ #
738
+ # @!attribute [rw] start_after
739
+ # The name of the action that must be completed before the current
740
+ # action starts.
741
+ # @return [Array<String>]
742
+ #
743
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ExperimentTemplateAction AWS API Documentation
744
+ #
745
+ class ExperimentTemplateAction < Struct.new(
746
+ :action_id,
747
+ :description,
748
+ :parameters,
749
+ :targets,
750
+ :start_after)
751
+ SENSITIVE = []
752
+ include Aws::Structure
753
+ end
754
+
755
+ # Describes a stop condition for an experiment template.
756
+ #
757
+ # @!attribute [rw] source
758
+ # The source for the stop condition.
759
+ # @return [String]
760
+ #
761
+ # @!attribute [rw] value
762
+ # The Amazon Resource Name (ARN) of the CloudWatch alarm, if
763
+ # applicable.
764
+ # @return [String]
765
+ #
766
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ExperimentTemplateStopCondition AWS API Documentation
767
+ #
768
+ class ExperimentTemplateStopCondition < Struct.new(
769
+ :source,
770
+ :value)
771
+ SENSITIVE = []
772
+ include Aws::Structure
773
+ end
774
+
775
+ # Provides a summary of an experiment template.
776
+ #
777
+ # @!attribute [rw] id
778
+ # The ID of the experiment template.
779
+ # @return [String]
780
+ #
781
+ # @!attribute [rw] description
782
+ # The description of the experiment template.
783
+ # @return [String]
784
+ #
785
+ # @!attribute [rw] creation_time
786
+ # The time that the experiment template was created.
787
+ # @return [Time]
788
+ #
789
+ # @!attribute [rw] last_update_time
790
+ # The time that the experiment template was last updated.
791
+ # @return [Time]
792
+ #
793
+ # @!attribute [rw] tags
794
+ # The tags for the experiment template.
795
+ # @return [Hash<String,String>]
796
+ #
797
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ExperimentTemplateSummary AWS API Documentation
798
+ #
799
+ class ExperimentTemplateSummary < Struct.new(
800
+ :id,
801
+ :description,
802
+ :creation_time,
803
+ :last_update_time,
804
+ :tags)
805
+ SENSITIVE = []
806
+ include Aws::Structure
807
+ end
808
+
809
+ # Describes a target for an experiment template.
810
+ #
811
+ # @!attribute [rw] resource_type
812
+ # The resource type.
813
+ # @return [String]
814
+ #
815
+ # @!attribute [rw] resource_arns
816
+ # The Amazon Resource Names (ARNs) of the targets.
817
+ # @return [Array<String>]
818
+ #
819
+ # @!attribute [rw] resource_tags
820
+ # The tags for the target resources.
821
+ # @return [Hash<String,String>]
822
+ #
823
+ # @!attribute [rw] filters
824
+ # The filters to apply to identify target resources using specific
825
+ # attributes.
826
+ # @return [Array<Types::ExperimentTemplateTargetFilter>]
827
+ #
828
+ # @!attribute [rw] selection_mode
829
+ # Scopes the identified resources to a specific count or percentage.
830
+ # @return [String]
831
+ #
832
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ExperimentTemplateTarget AWS API Documentation
833
+ #
834
+ class ExperimentTemplateTarget < Struct.new(
835
+ :resource_type,
836
+ :resource_arns,
837
+ :resource_tags,
838
+ :filters,
839
+ :selection_mode)
840
+ SENSITIVE = []
841
+ include Aws::Structure
842
+ end
843
+
844
+ # Describes a filter used for the target resources in an experiment
845
+ # template.
846
+ #
847
+ # @!attribute [rw] path
848
+ # The attribute path for the filter.
849
+ # @return [String]
850
+ #
851
+ # @!attribute [rw] values
852
+ # The attribute values for the filter.
853
+ # @return [Array<String>]
854
+ #
855
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ExperimentTemplateTargetFilter AWS API Documentation
856
+ #
857
+ class ExperimentTemplateTargetFilter < Struct.new(
858
+ :path,
859
+ :values)
860
+ SENSITIVE = []
861
+ include Aws::Structure
862
+ end
863
+
864
+ # Describes a filter used for the target resource input in an experiment
865
+ # template.
866
+ #
867
+ # @note When making an API call, you may pass ExperimentTemplateTargetInputFilter
868
+ # data as a hash:
869
+ #
870
+ # {
871
+ # path: "ExperimentTemplateTargetFilterPath", # required
872
+ # values: ["ExperimentTemplateTargetFilterValue"], # required
873
+ # }
874
+ #
875
+ # @!attribute [rw] path
876
+ # The attribute path for the filter.
877
+ # @return [String]
878
+ #
879
+ # @!attribute [rw] values
880
+ # The attribute values for the filter.
881
+ # @return [Array<String>]
882
+ #
883
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ExperimentTemplateTargetInputFilter AWS API Documentation
884
+ #
885
+ class ExperimentTemplateTargetInputFilter < Struct.new(
886
+ :path,
887
+ :values)
888
+ SENSITIVE = []
889
+ include Aws::Structure
890
+ end
891
+
892
+ # @note When making an API call, you may pass GetActionRequest
893
+ # data as a hash:
894
+ #
895
+ # {
896
+ # id: "ActionId", # required
897
+ # }
898
+ #
899
+ # @!attribute [rw] id
900
+ # The ID of the action.
901
+ # @return [String]
902
+ #
903
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/GetActionRequest AWS API Documentation
904
+ #
905
+ class GetActionRequest < Struct.new(
906
+ :id)
907
+ SENSITIVE = []
908
+ include Aws::Structure
909
+ end
910
+
911
+ # @!attribute [rw] action
912
+ # Information about the action.
913
+ # @return [Types::Action]
914
+ #
915
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/GetActionResponse AWS API Documentation
916
+ #
917
+ class GetActionResponse < Struct.new(
918
+ :action)
919
+ SENSITIVE = []
920
+ include Aws::Structure
921
+ end
922
+
923
+ # @note When making an API call, you may pass GetExperimentRequest
924
+ # data as a hash:
925
+ #
926
+ # {
927
+ # id: "ExperimentId", # required
928
+ # }
929
+ #
930
+ # @!attribute [rw] id
931
+ # The ID of the experiment.
932
+ # @return [String]
933
+ #
934
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/GetExperimentRequest AWS API Documentation
935
+ #
936
+ class GetExperimentRequest < Struct.new(
937
+ :id)
938
+ SENSITIVE = []
939
+ include Aws::Structure
940
+ end
941
+
942
+ # @!attribute [rw] experiment
943
+ # Information about the experiment.
944
+ # @return [Types::Experiment]
945
+ #
946
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/GetExperimentResponse AWS API Documentation
947
+ #
948
+ class GetExperimentResponse < Struct.new(
949
+ :experiment)
950
+ SENSITIVE = []
951
+ include Aws::Structure
952
+ end
953
+
954
+ # @note When making an API call, you may pass GetExperimentTemplateRequest
955
+ # data as a hash:
956
+ #
957
+ # {
958
+ # id: "ExperimentTemplateId", # required
959
+ # }
960
+ #
961
+ # @!attribute [rw] id
962
+ # The ID of the experiment template.
963
+ # @return [String]
964
+ #
965
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/GetExperimentTemplateRequest AWS API Documentation
966
+ #
967
+ class GetExperimentTemplateRequest < Struct.new(
968
+ :id)
969
+ SENSITIVE = []
970
+ include Aws::Structure
971
+ end
972
+
973
+ # @!attribute [rw] experiment_template
974
+ # Information about the experiment template.
975
+ # @return [Types::ExperimentTemplate]
976
+ #
977
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/GetExperimentTemplateResponse AWS API Documentation
978
+ #
979
+ class GetExperimentTemplateResponse < Struct.new(
980
+ :experiment_template)
981
+ SENSITIVE = []
982
+ include Aws::Structure
983
+ end
984
+
985
+ # @note When making an API call, you may pass ListActionsRequest
986
+ # data as a hash:
987
+ #
988
+ # {
989
+ # max_results: 1,
990
+ # next_token: "NextToken",
991
+ # }
992
+ #
993
+ # @!attribute [rw] max_results
994
+ # The maximum number of results to return with a single call. To
995
+ # retrieve the remaining results, make another call with the returned
996
+ # `nextToken` value.
997
+ # @return [Integer]
998
+ #
999
+ # @!attribute [rw] next_token
1000
+ # The token for the next page of results.
1001
+ # @return [String]
1002
+ #
1003
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListActionsRequest AWS API Documentation
1004
+ #
1005
+ class ListActionsRequest < Struct.new(
1006
+ :max_results,
1007
+ :next_token)
1008
+ SENSITIVE = []
1009
+ include Aws::Structure
1010
+ end
1011
+
1012
+ # @!attribute [rw] actions
1013
+ # The actions.
1014
+ # @return [Array<Types::ActionSummary>]
1015
+ #
1016
+ # @!attribute [rw] next_token
1017
+ # The token to use to retrieve the next page of results. This value is
1018
+ # `null` when there are no more results to return.
1019
+ # @return [String]
1020
+ #
1021
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListActionsResponse AWS API Documentation
1022
+ #
1023
+ class ListActionsResponse < Struct.new(
1024
+ :actions,
1025
+ :next_token)
1026
+ SENSITIVE = []
1027
+ include Aws::Structure
1028
+ end
1029
+
1030
+ # @note When making an API call, you may pass ListExperimentTemplatesRequest
1031
+ # data as a hash:
1032
+ #
1033
+ # {
1034
+ # max_results: 1,
1035
+ # next_token: "NextToken",
1036
+ # }
1037
+ #
1038
+ # @!attribute [rw] max_results
1039
+ # The maximum number of results to return with a single call. To
1040
+ # retrieve the remaining results, make another call with the returned
1041
+ # `nextToken` value.
1042
+ # @return [Integer]
1043
+ #
1044
+ # @!attribute [rw] next_token
1045
+ # The token for the next page of results.
1046
+ # @return [String]
1047
+ #
1048
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListExperimentTemplatesRequest AWS API Documentation
1049
+ #
1050
+ class ListExperimentTemplatesRequest < Struct.new(
1051
+ :max_results,
1052
+ :next_token)
1053
+ SENSITIVE = []
1054
+ include Aws::Structure
1055
+ end
1056
+
1057
+ # @!attribute [rw] experiment_templates
1058
+ # The experiment templates.
1059
+ # @return [Array<Types::ExperimentTemplateSummary>]
1060
+ #
1061
+ # @!attribute [rw] next_token
1062
+ # The token to use to retrieve the next page of results. This value is
1063
+ # `null` when there are no more results to return.
1064
+ # @return [String]
1065
+ #
1066
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListExperimentTemplatesResponse AWS API Documentation
1067
+ #
1068
+ class ListExperimentTemplatesResponse < Struct.new(
1069
+ :experiment_templates,
1070
+ :next_token)
1071
+ SENSITIVE = []
1072
+ include Aws::Structure
1073
+ end
1074
+
1075
+ # @note When making an API call, you may pass ListExperimentsRequest
1076
+ # data as a hash:
1077
+ #
1078
+ # {
1079
+ # max_results: 1,
1080
+ # next_token: "NextToken",
1081
+ # }
1082
+ #
1083
+ # @!attribute [rw] max_results
1084
+ # The maximum number of results to return with a single call. To
1085
+ # retrieve the remaining results, make another call with the returned
1086
+ # `nextToken` value.
1087
+ # @return [Integer]
1088
+ #
1089
+ # @!attribute [rw] next_token
1090
+ # The token for the next page of results.
1091
+ # @return [String]
1092
+ #
1093
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListExperimentsRequest AWS API Documentation
1094
+ #
1095
+ class ListExperimentsRequest < Struct.new(
1096
+ :max_results,
1097
+ :next_token)
1098
+ SENSITIVE = []
1099
+ include Aws::Structure
1100
+ end
1101
+
1102
+ # @!attribute [rw] experiments
1103
+ # The experiments.
1104
+ # @return [Array<Types::ExperimentSummary>]
1105
+ #
1106
+ # @!attribute [rw] next_token
1107
+ # The token to use to retrieve the next page of results. This value is
1108
+ # `null` when there are no more results to return.
1109
+ # @return [String]
1110
+ #
1111
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListExperimentsResponse AWS API Documentation
1112
+ #
1113
+ class ListExperimentsResponse < Struct.new(
1114
+ :experiments,
1115
+ :next_token)
1116
+ SENSITIVE = []
1117
+ include Aws::Structure
1118
+ end
1119
+
1120
+ # @note When making an API call, you may pass ListTagsForResourceRequest
1121
+ # data as a hash:
1122
+ #
1123
+ # {
1124
+ # resource_arn: "ResourceArn", # required
1125
+ # }
1126
+ #
1127
+ # @!attribute [rw] resource_arn
1128
+ # The Amazon Resource Name (ARN) of the resource.
1129
+ # @return [String]
1130
+ #
1131
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListTagsForResourceRequest AWS API Documentation
1132
+ #
1133
+ class ListTagsForResourceRequest < Struct.new(
1134
+ :resource_arn)
1135
+ SENSITIVE = []
1136
+ include Aws::Structure
1137
+ end
1138
+
1139
+ # @!attribute [rw] tags
1140
+ # The tags for the resource.
1141
+ # @return [Hash<String,String>]
1142
+ #
1143
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListTagsForResourceResponse AWS API Documentation
1144
+ #
1145
+ class ListTagsForResourceResponse < Struct.new(
1146
+ :tags)
1147
+ SENSITIVE = []
1148
+ include Aws::Structure
1149
+ end
1150
+
1151
+ # The specified resource cannot be found.
1152
+ #
1153
+ # @!attribute [rw] message
1154
+ # @return [String]
1155
+ #
1156
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ResourceNotFoundException AWS API Documentation
1157
+ #
1158
+ class ResourceNotFoundException < Struct.new(
1159
+ :message)
1160
+ SENSITIVE = []
1161
+ include Aws::Structure
1162
+ end
1163
+
1164
+ # You have exceeded your service quota.
1165
+ #
1166
+ # @!attribute [rw] message
1167
+ # @return [String]
1168
+ #
1169
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ServiceQuotaExceededException AWS API Documentation
1170
+ #
1171
+ class ServiceQuotaExceededException < Struct.new(
1172
+ :message)
1173
+ SENSITIVE = []
1174
+ include Aws::Structure
1175
+ end
1176
+
1177
+ # @note When making an API call, you may pass StartExperimentRequest
1178
+ # data as a hash:
1179
+ #
1180
+ # {
1181
+ # client_token: "ClientToken", # required
1182
+ # experiment_template_id: "ExperimentTemplateId", # required
1183
+ # tags: {
1184
+ # "TagKey" => "TagValue",
1185
+ # },
1186
+ # }
1187
+ #
1188
+ # @!attribute [rw] client_token
1189
+ # Unique, case-sensitive identifier that you provide to ensure the
1190
+ # idempotency of the request.
1191
+ #
1192
+ # **A suitable default value is auto-generated.** You should normally
1193
+ # not need to pass this option.
1194
+ # @return [String]
1195
+ #
1196
+ # @!attribute [rw] experiment_template_id
1197
+ # The ID of the experiment template.
1198
+ # @return [String]
1199
+ #
1200
+ # @!attribute [rw] tags
1201
+ # The tags to apply to the experiment.
1202
+ # @return [Hash<String,String>]
1203
+ #
1204
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/StartExperimentRequest AWS API Documentation
1205
+ #
1206
+ class StartExperimentRequest < Struct.new(
1207
+ :client_token,
1208
+ :experiment_template_id,
1209
+ :tags)
1210
+ SENSITIVE = []
1211
+ include Aws::Structure
1212
+ end
1213
+
1214
+ # @!attribute [rw] experiment
1215
+ # Information about the experiment.
1216
+ # @return [Types::Experiment]
1217
+ #
1218
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/StartExperimentResponse AWS API Documentation
1219
+ #
1220
+ class StartExperimentResponse < Struct.new(
1221
+ :experiment)
1222
+ SENSITIVE = []
1223
+ include Aws::Structure
1224
+ end
1225
+
1226
+ # @note When making an API call, you may pass StopExperimentRequest
1227
+ # data as a hash:
1228
+ #
1229
+ # {
1230
+ # id: "ExperimentId", # required
1231
+ # }
1232
+ #
1233
+ # @!attribute [rw] id
1234
+ # The ID of the experiment.
1235
+ # @return [String]
1236
+ #
1237
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/StopExperimentRequest AWS API Documentation
1238
+ #
1239
+ class StopExperimentRequest < Struct.new(
1240
+ :id)
1241
+ SENSITIVE = []
1242
+ include Aws::Structure
1243
+ end
1244
+
1245
+ # @!attribute [rw] experiment
1246
+ # Information about the experiment.
1247
+ # @return [Types::Experiment]
1248
+ #
1249
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/StopExperimentResponse AWS API Documentation
1250
+ #
1251
+ class StopExperimentResponse < Struct.new(
1252
+ :experiment)
1253
+ SENSITIVE = []
1254
+ include Aws::Structure
1255
+ end
1256
+
1257
+ # @note When making an API call, you may pass TagResourceRequest
1258
+ # data as a hash:
1259
+ #
1260
+ # {
1261
+ # resource_arn: "ResourceArn", # required
1262
+ # tags: { # required
1263
+ # "TagKey" => "TagValue",
1264
+ # },
1265
+ # }
1266
+ #
1267
+ # @!attribute [rw] resource_arn
1268
+ # The Amazon Resource Name (ARN) of the resource.
1269
+ # @return [String]
1270
+ #
1271
+ # @!attribute [rw] tags
1272
+ # The tags for the resource.
1273
+ # @return [Hash<String,String>]
1274
+ #
1275
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/TagResourceRequest AWS API Documentation
1276
+ #
1277
+ class TagResourceRequest < Struct.new(
1278
+ :resource_arn,
1279
+ :tags)
1280
+ SENSITIVE = []
1281
+ include Aws::Structure
1282
+ end
1283
+
1284
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/TagResourceResponse AWS API Documentation
1285
+ #
1286
+ class TagResourceResponse < Aws::EmptyStructure; end
1287
+
1288
+ # @note When making an API call, you may pass UntagResourceRequest
1289
+ # data as a hash:
1290
+ #
1291
+ # {
1292
+ # resource_arn: "ResourceArn", # required
1293
+ # tag_keys: ["TagKey"],
1294
+ # }
1295
+ #
1296
+ # @!attribute [rw] resource_arn
1297
+ # The Amazon Resource Name (ARN) of the resource.
1298
+ # @return [String]
1299
+ #
1300
+ # @!attribute [rw] tag_keys
1301
+ # The tag keys to remove.
1302
+ # @return [Array<String>]
1303
+ #
1304
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/UntagResourceRequest AWS API Documentation
1305
+ #
1306
+ class UntagResourceRequest < Struct.new(
1307
+ :resource_arn,
1308
+ :tag_keys)
1309
+ SENSITIVE = []
1310
+ include Aws::Structure
1311
+ end
1312
+
1313
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/UntagResourceResponse AWS API Documentation
1314
+ #
1315
+ class UntagResourceResponse < Aws::EmptyStructure; end
1316
+
1317
+ # Specifies an action for an experiment template.
1318
+ #
1319
+ # @note When making an API call, you may pass UpdateExperimentTemplateActionInputItem
1320
+ # data as a hash:
1321
+ #
1322
+ # {
1323
+ # action_id: "ActionId",
1324
+ # description: "ExperimentTemplateActionDescription",
1325
+ # parameters: {
1326
+ # "ExperimentTemplateActionParameterName" => "ExperimentTemplateActionParameter",
1327
+ # },
1328
+ # targets: {
1329
+ # "ExperimentTemplateActionTargetName" => "ExperimentTemplateTargetName",
1330
+ # },
1331
+ # start_after: ["ExperimentTemplateActionStartAfter"],
1332
+ # }
1333
+ #
1334
+ # @!attribute [rw] action_id
1335
+ # The ID of the action.
1336
+ # @return [String]
1337
+ #
1338
+ # @!attribute [rw] description
1339
+ # A description for the action.
1340
+ # @return [String]
1341
+ #
1342
+ # @!attribute [rw] parameters
1343
+ # The parameters for the action, if applicable.
1344
+ # @return [Hash<String,String>]
1345
+ #
1346
+ # @!attribute [rw] targets
1347
+ # The targets for the action.
1348
+ # @return [Hash<String,String>]
1349
+ #
1350
+ # @!attribute [rw] start_after
1351
+ # The name of the action that must be completed before the current
1352
+ # action starts. Omit this parameter to run the action at the start of
1353
+ # the experiment.
1354
+ # @return [Array<String>]
1355
+ #
1356
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/UpdateExperimentTemplateActionInputItem AWS API Documentation
1357
+ #
1358
+ class UpdateExperimentTemplateActionInputItem < Struct.new(
1359
+ :action_id,
1360
+ :description,
1361
+ :parameters,
1362
+ :targets,
1363
+ :start_after)
1364
+ SENSITIVE = []
1365
+ include Aws::Structure
1366
+ end
1367
+
1368
+ # @note When making an API call, you may pass UpdateExperimentTemplateRequest
1369
+ # data as a hash:
1370
+ #
1371
+ # {
1372
+ # id: "ExperimentTemplateId", # required
1373
+ # description: "ExperimentTemplateDescription",
1374
+ # stop_conditions: [
1375
+ # {
1376
+ # source: "StopConditionSource", # required
1377
+ # value: "StopConditionValue",
1378
+ # },
1379
+ # ],
1380
+ # targets: {
1381
+ # "ExperimentTemplateTargetName" => {
1382
+ # resource_type: "ResourceType", # required
1383
+ # resource_arns: ["ResourceArn"],
1384
+ # resource_tags: {
1385
+ # "TagKey" => "TagValue",
1386
+ # },
1387
+ # filters: [
1388
+ # {
1389
+ # path: "ExperimentTemplateTargetFilterPath", # required
1390
+ # values: ["ExperimentTemplateTargetFilterValue"], # required
1391
+ # },
1392
+ # ],
1393
+ # selection_mode: "ExperimentTemplateTargetSelectionMode", # required
1394
+ # },
1395
+ # },
1396
+ # actions: {
1397
+ # "ExperimentTemplateActionName" => {
1398
+ # action_id: "ActionId",
1399
+ # description: "ExperimentTemplateActionDescription",
1400
+ # parameters: {
1401
+ # "ExperimentTemplateActionParameterName" => "ExperimentTemplateActionParameter",
1402
+ # },
1403
+ # targets: {
1404
+ # "ExperimentTemplateActionTargetName" => "ExperimentTemplateTargetName",
1405
+ # },
1406
+ # start_after: ["ExperimentTemplateActionStartAfter"],
1407
+ # },
1408
+ # },
1409
+ # role_arn: "RoleArn",
1410
+ # }
1411
+ #
1412
+ # @!attribute [rw] id
1413
+ # The ID of the experiment template.
1414
+ # @return [String]
1415
+ #
1416
+ # @!attribute [rw] description
1417
+ # A description for the template.
1418
+ # @return [String]
1419
+ #
1420
+ # @!attribute [rw] stop_conditions
1421
+ # The stop conditions for the experiment.
1422
+ # @return [Array<Types::UpdateExperimentTemplateStopConditionInput>]
1423
+ #
1424
+ # @!attribute [rw] targets
1425
+ # The targets for the experiment.
1426
+ # @return [Hash<String,Types::UpdateExperimentTemplateTargetInput>]
1427
+ #
1428
+ # @!attribute [rw] actions
1429
+ # The actions for the experiment.
1430
+ # @return [Hash<String,Types::UpdateExperimentTemplateActionInputItem>]
1431
+ #
1432
+ # @!attribute [rw] role_arn
1433
+ # The Amazon Resource Name (ARN) of an IAM role that grants the AWS
1434
+ # FIS service permission to perform service actions on your behalf.
1435
+ # @return [String]
1436
+ #
1437
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/UpdateExperimentTemplateRequest AWS API Documentation
1438
+ #
1439
+ class UpdateExperimentTemplateRequest < Struct.new(
1440
+ :id,
1441
+ :description,
1442
+ :stop_conditions,
1443
+ :targets,
1444
+ :actions,
1445
+ :role_arn)
1446
+ SENSITIVE = []
1447
+ include Aws::Structure
1448
+ end
1449
+
1450
+ # @!attribute [rw] experiment_template
1451
+ # Information about the experiment template.
1452
+ # @return [Types::ExperimentTemplate]
1453
+ #
1454
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/UpdateExperimentTemplateResponse AWS API Documentation
1455
+ #
1456
+ class UpdateExperimentTemplateResponse < Struct.new(
1457
+ :experiment_template)
1458
+ SENSITIVE = []
1459
+ include Aws::Structure
1460
+ end
1461
+
1462
+ # Specifies a stop condition for an experiment. You can define a stop
1463
+ # condition as a CloudWatch alarm.
1464
+ #
1465
+ # @note When making an API call, you may pass UpdateExperimentTemplateStopConditionInput
1466
+ # data as a hash:
1467
+ #
1468
+ # {
1469
+ # source: "StopConditionSource", # required
1470
+ # value: "StopConditionValue",
1471
+ # }
1472
+ #
1473
+ # @!attribute [rw] source
1474
+ # The source for the stop condition. Specify `aws:cloudwatch:alarm` if
1475
+ # the stop condition is defined by a CloudWatch alarm. Specify `none`
1476
+ # if there is no stop condition.
1477
+ # @return [String]
1478
+ #
1479
+ # @!attribute [rw] value
1480
+ # The Amazon Resource Name (ARN) of the CloudWatch alarm.
1481
+ # @return [String]
1482
+ #
1483
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/UpdateExperimentTemplateStopConditionInput AWS API Documentation
1484
+ #
1485
+ class UpdateExperimentTemplateStopConditionInput < Struct.new(
1486
+ :source,
1487
+ :value)
1488
+ SENSITIVE = []
1489
+ include Aws::Structure
1490
+ end
1491
+
1492
+ # Specifies a target for an experiment. You must specify at least one
1493
+ # Amazon Resource Name (ARN) or at least one resource tag. You cannot
1494
+ # specify both.
1495
+ #
1496
+ # @note When making an API call, you may pass UpdateExperimentTemplateTargetInput
1497
+ # data as a hash:
1498
+ #
1499
+ # {
1500
+ # resource_type: "ResourceType", # required
1501
+ # resource_arns: ["ResourceArn"],
1502
+ # resource_tags: {
1503
+ # "TagKey" => "TagValue",
1504
+ # },
1505
+ # filters: [
1506
+ # {
1507
+ # path: "ExperimentTemplateTargetFilterPath", # required
1508
+ # values: ["ExperimentTemplateTargetFilterValue"], # required
1509
+ # },
1510
+ # ],
1511
+ # selection_mode: "ExperimentTemplateTargetSelectionMode", # required
1512
+ # }
1513
+ #
1514
+ # @!attribute [rw] resource_type
1515
+ # The AWS resource type. The resource type must be supported for the
1516
+ # specified action.
1517
+ # @return [String]
1518
+ #
1519
+ # @!attribute [rw] resource_arns
1520
+ # The Amazon Resource Names (ARNs) of the targets.
1521
+ # @return [Array<String>]
1522
+ #
1523
+ # @!attribute [rw] resource_tags
1524
+ # The tags for the target resources.
1525
+ # @return [Hash<String,String>]
1526
+ #
1527
+ # @!attribute [rw] filters
1528
+ # The filters to apply to identify target resources using specific
1529
+ # attributes.
1530
+ # @return [Array<Types::ExperimentTemplateTargetInputFilter>]
1531
+ #
1532
+ # @!attribute [rw] selection_mode
1533
+ # Scopes the identified resources to a specific count or percentage.
1534
+ # @return [String]
1535
+ #
1536
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/UpdateExperimentTemplateTargetInput AWS API Documentation
1537
+ #
1538
+ class UpdateExperimentTemplateTargetInput < Struct.new(
1539
+ :resource_type,
1540
+ :resource_arns,
1541
+ :resource_tags,
1542
+ :filters,
1543
+ :selection_mode)
1544
+ SENSITIVE = []
1545
+ include Aws::Structure
1546
+ end
1547
+
1548
+ # The specified input is not valid, or fails to satisfy the constraints
1549
+ # for the request.
1550
+ #
1551
+ # @!attribute [rw] message
1552
+ # @return [String]
1553
+ #
1554
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ValidationException AWS API Documentation
1555
+ #
1556
+ class ValidationException < Struct.new(
1557
+ :message)
1558
+ SENSITIVE = []
1559
+ include Aws::Structure
1560
+ end
1561
+
1562
+ end
1563
+ end