aws-sdk-migrationhuborchestrator 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,1929 @@
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
+ require 'seahorse/client/plugins/content_length.rb'
11
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
12
+ require 'aws-sdk-core/plugins/logging.rb'
13
+ require 'aws-sdk-core/plugins/param_converter.rb'
14
+ require 'aws-sdk-core/plugins/param_validator.rb'
15
+ require 'aws-sdk-core/plugins/user_agent.rb'
16
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
17
+ require 'aws-sdk-core/plugins/retry_errors.rb'
18
+ require 'aws-sdk-core/plugins/global_configuration.rb'
19
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
20
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
21
+ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
22
+ require 'aws-sdk-core/plugins/response_paging.rb'
23
+ require 'aws-sdk-core/plugins/stub_responses.rb'
24
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
25
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
26
+ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
+ require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
32
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
33
+ require 'aws-sdk-core/plugins/signature_v4.rb'
34
+ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
35
+
36
+ Aws::Plugins::GlobalConfiguration.add_identifier(:migrationhuborchestrator)
37
+
38
+ module Aws::MigrationHubOrchestrator
39
+ # An API client for MigrationHubOrchestrator. To construct a client, you need to configure a `:region` and `:credentials`.
40
+ #
41
+ # client = Aws::MigrationHubOrchestrator::Client.new(
42
+ # region: region_name,
43
+ # credentials: credentials,
44
+ # # ...
45
+ # )
46
+ #
47
+ # For details on configuring region and credentials see
48
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
49
+ #
50
+ # See {#initialize} for a full list of supported configuration options.
51
+ class Client < Seahorse::Client::Base
52
+
53
+ include Aws::ClientStubs
54
+
55
+ @identifier = :migrationhuborchestrator
56
+
57
+ set_api(ClientApi::API)
58
+
59
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
60
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
61
+ add_plugin(Aws::Plugins::Logging)
62
+ add_plugin(Aws::Plugins::ParamConverter)
63
+ add_plugin(Aws::Plugins::ParamValidator)
64
+ add_plugin(Aws::Plugins::UserAgent)
65
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
66
+ add_plugin(Aws::Plugins::RetryErrors)
67
+ add_plugin(Aws::Plugins::GlobalConfiguration)
68
+ add_plugin(Aws::Plugins::RegionalEndpoint)
69
+ add_plugin(Aws::Plugins::EndpointDiscovery)
70
+ add_plugin(Aws::Plugins::EndpointPattern)
71
+ add_plugin(Aws::Plugins::ResponsePaging)
72
+ add_plugin(Aws::Plugins::StubResponses)
73
+ add_plugin(Aws::Plugins::IdempotencyToken)
74
+ add_plugin(Aws::Plugins::JsonvalueConverter)
75
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
76
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
77
+ add_plugin(Aws::Plugins::TransferEncoding)
78
+ add_plugin(Aws::Plugins::HttpChecksum)
79
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
+ add_plugin(Aws::Plugins::DefaultsMode)
81
+ add_plugin(Aws::Plugins::RecursionDetection)
82
+ add_plugin(Aws::Plugins::SignatureV4)
83
+ add_plugin(Aws::Plugins::Protocols::RestJson)
84
+
85
+ # @overload initialize(options)
86
+ # @param [Hash] options
87
+ # @option options [required, Aws::CredentialProvider] :credentials
88
+ # Your AWS credentials. This can be an instance of any one of the
89
+ # following classes:
90
+ #
91
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
92
+ # credentials.
93
+ #
94
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
95
+ # shared file, such as `~/.aws/config`.
96
+ #
97
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
98
+ #
99
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
100
+ # assume a role after providing credentials via the web.
101
+ #
102
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
103
+ # access token generated from `aws login`.
104
+ #
105
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
106
+ # process that outputs to stdout.
107
+ #
108
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
109
+ # from an EC2 IMDS on an EC2 instance.
110
+ #
111
+ # * `Aws::ECSCredentials` - Used for loading credentials from
112
+ # instances running in ECS.
113
+ #
114
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
115
+ # from the Cognito Identity service.
116
+ #
117
+ # When `:credentials` are not configured directly, the following
118
+ # locations will be searched for credentials:
119
+ #
120
+ # * `Aws.config[:credentials]`
121
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
122
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
123
+ # * `~/.aws/credentials`
124
+ # * `~/.aws/config`
125
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
126
+ # are very aggressive. Construct and pass an instance of
127
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
128
+ # enable retries and extended timeouts. Instance profile credential
129
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
130
+ # to true.
131
+ #
132
+ # @option options [required, String] :region
133
+ # The AWS region to connect to. The configured `:region` is
134
+ # used to determine the service `:endpoint`. When not passed,
135
+ # a default `:region` is searched for in the following locations:
136
+ #
137
+ # * `Aws.config[:region]`
138
+ # * `ENV['AWS_REGION']`
139
+ # * `ENV['AMAZON_REGION']`
140
+ # * `ENV['AWS_DEFAULT_REGION']`
141
+ # * `~/.aws/credentials`
142
+ # * `~/.aws/config`
143
+ #
144
+ # @option options [String] :access_key_id
145
+ #
146
+ # @option options [Boolean] :active_endpoint_cache (false)
147
+ # When set to `true`, a thread polling for endpoints will be running in
148
+ # the background every 60 secs (default). Defaults to `false`.
149
+ #
150
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
151
+ # Used only in `adaptive` retry mode. When true, the request will sleep
152
+ # until there is sufficent client side capacity to retry the request.
153
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
154
+ # not retry instead of sleeping.
155
+ #
156
+ # @option options [Boolean] :client_side_monitoring (false)
157
+ # When `true`, client-side metrics will be collected for all API requests from
158
+ # this client.
159
+ #
160
+ # @option options [String] :client_side_monitoring_client_id ("")
161
+ # Allows you to provide an identifier for this client which will be attached to
162
+ # all generated client side metrics. Defaults to an empty string.
163
+ #
164
+ # @option options [String] :client_side_monitoring_host ("127.0.0.1")
165
+ # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
166
+ # side monitoring agent is running on, where client metrics will be published via UDP.
167
+ #
168
+ # @option options [Integer] :client_side_monitoring_port (31000)
169
+ # Required for publishing client metrics. The port that the client side monitoring
170
+ # agent is running on, where client metrics will be published via UDP.
171
+ #
172
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
173
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
174
+ # will use the Client Side Monitoring Agent Publisher.
175
+ #
176
+ # @option options [Boolean] :convert_params (true)
177
+ # When `true`, an attempt is made to coerce request parameters into
178
+ # the required types.
179
+ #
180
+ # @option options [Boolean] :correct_clock_skew (true)
181
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
182
+ # a clock skew correction and retry requests with skewed client clocks.
183
+ #
184
+ # @option options [String] :defaults_mode ("legacy")
185
+ # See {Aws::DefaultsModeConfiguration} for a list of the
186
+ # accepted modes and the configuration defaults that are included.
187
+ #
188
+ # @option options [Boolean] :disable_host_prefix_injection (false)
189
+ # Set to true to disable SDK automatically adding host prefix
190
+ # to default service endpoint when available.
191
+ #
192
+ # @option options [String] :endpoint
193
+ # The client endpoint is normally constructed from the `:region`
194
+ # option. You should only configure an `:endpoint` when connecting
195
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
196
+ #
197
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
198
+ # Used for the maximum size limit of the LRU cache storing endpoints data
199
+ # for endpoint discovery enabled operations. Defaults to 1000.
200
+ #
201
+ # @option options [Integer] :endpoint_cache_max_threads (10)
202
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
203
+ #
204
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
205
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
206
+ # Use this option to config the time interval in seconds for making
207
+ # requests fetching endpoints information. Defaults to 60 sec.
208
+ #
209
+ # @option options [Boolean] :endpoint_discovery (false)
210
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
211
+ #
212
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
213
+ # The log formatter.
214
+ #
215
+ # @option options [Symbol] :log_level (:info)
216
+ # The log level to send messages to the `:logger` at.
217
+ #
218
+ # @option options [Logger] :logger
219
+ # The Logger instance to send log messages to. If this option
220
+ # is not set, logging will be disabled.
221
+ #
222
+ # @option options [Integer] :max_attempts (3)
223
+ # An integer representing the maximum number attempts that will be made for
224
+ # a single request, including the initial attempt. For example,
225
+ # setting this value to 5 will result in a request being retried up to
226
+ # 4 times. Used in `standard` and `adaptive` retry modes.
227
+ #
228
+ # @option options [String] :profile ("default")
229
+ # Used when loading credentials from the shared credentials file
230
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
231
+ #
232
+ # @option options [Proc] :retry_backoff
233
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
234
+ # This option is only used in the `legacy` retry mode.
235
+ #
236
+ # @option options [Float] :retry_base_delay (0.3)
237
+ # The base delay in seconds used by the default backoff function. This option
238
+ # is only used in the `legacy` retry mode.
239
+ #
240
+ # @option options [Symbol] :retry_jitter (:none)
241
+ # A delay randomiser function used by the default backoff function.
242
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
243
+ # otherwise a Proc that takes and returns a number. This option is only used
244
+ # in the `legacy` retry mode.
245
+ #
246
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
247
+ #
248
+ # @option options [Integer] :retry_limit (3)
249
+ # The maximum number of times to retry failed requests. Only
250
+ # ~ 500 level server errors and certain ~ 400 level client errors
251
+ # are retried. Generally, these are throttling errors, data
252
+ # checksum errors, networking errors, timeout errors, auth errors,
253
+ # endpoint discovery, and errors from expired credentials.
254
+ # This option is only used in the `legacy` retry mode.
255
+ #
256
+ # @option options [Integer] :retry_max_delay (0)
257
+ # The maximum number of seconds to delay between retries (0 for no limit)
258
+ # used by the default backoff function. This option is only used in the
259
+ # `legacy` retry mode.
260
+ #
261
+ # @option options [String] :retry_mode ("legacy")
262
+ # Specifies which retry algorithm to use. Values are:
263
+ #
264
+ # * `legacy` - The pre-existing retry behavior. This is default value if
265
+ # no retry mode is provided.
266
+ #
267
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
268
+ # This includes support for retry quotas, which limit the number of
269
+ # unsuccessful retries a client can make.
270
+ #
271
+ # * `adaptive` - An experimental retry mode that includes all the
272
+ # functionality of `standard` mode along with automatic client side
273
+ # throttling. This is a provisional mode that may change behavior
274
+ # in the future.
275
+ #
276
+ #
277
+ # @option options [String] :secret_access_key
278
+ #
279
+ # @option options [String] :session_token
280
+ #
281
+ # @option options [Boolean] :stub_responses (false)
282
+ # Causes the client to return stubbed responses. By default
283
+ # fake responses are generated and returned. You can specify
284
+ # the response data to return or errors to raise by calling
285
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
286
+ #
287
+ # ** Please note ** When response stubbing is enabled, no HTTP
288
+ # requests are made, and retries are disabled.
289
+ #
290
+ # @option options [Boolean] :use_dualstack_endpoint
291
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
292
+ # will be used if available.
293
+ #
294
+ # @option options [Boolean] :use_fips_endpoint
295
+ # When set to `true`, fips compatible endpoints will be used if available.
296
+ # When a `fips` region is used, the region is normalized and this config
297
+ # is set to `true`.
298
+ #
299
+ # @option options [Boolean] :validate_params (true)
300
+ # When `true`, request parameters are validated before
301
+ # sending the request.
302
+ #
303
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
304
+ # requests through. Formatted like 'http://proxy.com:123'.
305
+ #
306
+ # @option options [Float] :http_open_timeout (15) The number of
307
+ # seconds to wait when opening a HTTP session before raising a
308
+ # `Timeout::Error`.
309
+ #
310
+ # @option options [Float] :http_read_timeout (60) The default
311
+ # number of seconds to wait for response data. This value can
312
+ # safely be set per-request on the session.
313
+ #
314
+ # @option options [Float] :http_idle_timeout (5) The number of
315
+ # seconds a connection is allowed to sit idle before it is
316
+ # considered stale. Stale connections are closed and removed
317
+ # from the pool before making a request.
318
+ #
319
+ # @option options [Float] :http_continue_timeout (1) The number of
320
+ # seconds to wait for a 100-continue response before sending the
321
+ # request body. This option has no effect unless the request has
322
+ # "Expect" header set to "100-continue". Defaults to `nil` which
323
+ # disables this behaviour. This value can safely be set per
324
+ # request on the session.
325
+ #
326
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
327
+ # in seconds.
328
+ #
329
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
330
+ # HTTP debug output will be sent to the `:logger`.
331
+ #
332
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
333
+ # SSL peer certificates are verified when establishing a
334
+ # connection.
335
+ #
336
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
337
+ # certificate authority bundle file that should be used when
338
+ # verifying peer certificates. If you do not pass
339
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
340
+ # will be used if available.
341
+ #
342
+ # @option options [String] :ssl_ca_directory Full path of the
343
+ # directory that contains the unbundled SSL certificate
344
+ # authority files for verifying peer certificates. If you do
345
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
346
+ # system default will be used if available.
347
+ #
348
+ def initialize(*args)
349
+ super
350
+ end
351
+
352
+ # @!group API Operations
353
+
354
+ # Create a workflow to orchestrate your migrations.
355
+ #
356
+ # @option params [required, String] :name
357
+ # The name of the migration workflow.
358
+ #
359
+ # @option params [String] :description
360
+ # The description of the migration workflow.
361
+ #
362
+ # @option params [required, String] :template_id
363
+ # The ID of the template.
364
+ #
365
+ # @option params [required, String] :application_configuration_id
366
+ # The configuration ID of the application configured in Application
367
+ # Discovery Service.
368
+ #
369
+ # @option params [required, Hash<String,Types::StepInput>] :input_parameters
370
+ # The input parameters required to create a migration workflow.
371
+ #
372
+ # @option params [Array<String>] :step_targets
373
+ # The servers on which a step will be run.
374
+ #
375
+ # @option params [Hash<String,String>] :tags
376
+ # The tags to add on a migration workflow.
377
+ #
378
+ # @return [Types::CreateMigrationWorkflowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
379
+ #
380
+ # * {Types::CreateMigrationWorkflowResponse#id #id} => String
381
+ # * {Types::CreateMigrationWorkflowResponse#arn #arn} => String
382
+ # * {Types::CreateMigrationWorkflowResponse#name #name} => String
383
+ # * {Types::CreateMigrationWorkflowResponse#description #description} => String
384
+ # * {Types::CreateMigrationWorkflowResponse#template_id #template_id} => String
385
+ # * {Types::CreateMigrationWorkflowResponse#ads_application_configuration_id #ads_application_configuration_id} => String
386
+ # * {Types::CreateMigrationWorkflowResponse#workflow_inputs #workflow_inputs} => Hash&lt;String,Types::StepInput&gt;
387
+ # * {Types::CreateMigrationWorkflowResponse#step_targets #step_targets} => Array&lt;String&gt;
388
+ # * {Types::CreateMigrationWorkflowResponse#status #status} => String
389
+ # * {Types::CreateMigrationWorkflowResponse#creation_time #creation_time} => Time
390
+ # * {Types::CreateMigrationWorkflowResponse#tags #tags} => Hash&lt;String,String&gt;
391
+ #
392
+ # @example Request syntax with placeholder values
393
+ #
394
+ # resp = client.create_workflow({
395
+ # name: "CreateMigrationWorkflowRequestNameString", # required
396
+ # description: "CreateMigrationWorkflowRequestDescriptionString",
397
+ # template_id: "CreateMigrationWorkflowRequestTemplateIdString", # required
398
+ # application_configuration_id: "CreateMigrationWorkflowRequestApplicationConfigurationIdString", # required
399
+ # input_parameters: { # required
400
+ # "StepInputParametersKey" => {
401
+ # integer_value: 1,
402
+ # string_value: "StringValue",
403
+ # list_of_strings_value: ["StringListMember"],
404
+ # map_of_string_value: {
405
+ # "StringMapKey" => "StringMapValue",
406
+ # },
407
+ # },
408
+ # },
409
+ # step_targets: ["StringListMember"],
410
+ # tags: {
411
+ # "StringMapKey" => "StringMapValue",
412
+ # },
413
+ # })
414
+ #
415
+ # @example Response structure
416
+ #
417
+ # resp.id #=> String
418
+ # resp.arn #=> String
419
+ # resp.name #=> String
420
+ # resp.description #=> String
421
+ # resp.template_id #=> String
422
+ # resp.ads_application_configuration_id #=> String
423
+ # resp.workflow_inputs #=> Hash
424
+ # resp.workflow_inputs["StepInputParametersKey"].integer_value #=> Integer
425
+ # resp.workflow_inputs["StepInputParametersKey"].string_value #=> String
426
+ # resp.workflow_inputs["StepInputParametersKey"].list_of_strings_value #=> Array
427
+ # resp.workflow_inputs["StepInputParametersKey"].list_of_strings_value[0] #=> String
428
+ # resp.workflow_inputs["StepInputParametersKey"].map_of_string_value #=> Hash
429
+ # resp.workflow_inputs["StepInputParametersKey"].map_of_string_value["StringMapKey"] #=> String
430
+ # resp.step_targets #=> Array
431
+ # resp.step_targets[0] #=> String
432
+ # resp.status #=> String, one of "CREATING", "NOT_STARTED", "CREATION_FAILED", "STARTING", "IN_PROGRESS", "WORKFLOW_FAILED", "PAUSED", "PAUSING", "PAUSING_FAILED", "USER_ATTENTION_REQUIRED", "DELETING", "DELETION_FAILED", "DELETED", "COMPLETED"
433
+ # resp.creation_time #=> Time
434
+ # resp.tags #=> Hash
435
+ # resp.tags["StringMapKey"] #=> String
436
+ #
437
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/CreateWorkflow AWS API Documentation
438
+ #
439
+ # @overload create_workflow(params = {})
440
+ # @param [Hash] params ({})
441
+ def create_workflow(params = {}, options = {})
442
+ req = build_request(:create_workflow, params)
443
+ req.send_request(options)
444
+ end
445
+
446
+ # Create a step in the migration workflow.
447
+ #
448
+ # @option params [required, String] :name
449
+ # The name of the step.
450
+ #
451
+ # @option params [required, String] :step_group_id
452
+ # The ID of the step group.
453
+ #
454
+ # @option params [required, String] :workflow_id
455
+ # The ID of the migration workflow.
456
+ #
457
+ # @option params [required, String] :step_action_type
458
+ # The action type of the step. You must run and update the status of a
459
+ # manual step for the workflow to continue after the completion of the
460
+ # step.
461
+ #
462
+ # @option params [String] :description
463
+ # The description of the step.
464
+ #
465
+ # @option params [Types::WorkflowStepAutomationConfiguration] :workflow_step_automation_configuration
466
+ # The custom script to run tests on source or target environments.
467
+ #
468
+ # @option params [Array<String>] :step_target
469
+ # The servers on which a step will be run.
470
+ #
471
+ # @option params [Array<Types::WorkflowStepOutput>] :outputs
472
+ # The key value pairs added for the expected output.
473
+ #
474
+ # @option params [Array<String>] :previous
475
+ # The previous step.
476
+ #
477
+ # @option params [Array<String>] :next
478
+ # The next step.
479
+ #
480
+ # @return [Types::CreateWorkflowStepResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
481
+ #
482
+ # * {Types::CreateWorkflowStepResponse#id #id} => String
483
+ # * {Types::CreateWorkflowStepResponse#step_group_id #step_group_id} => String
484
+ # * {Types::CreateWorkflowStepResponse#workflow_id #workflow_id} => String
485
+ # * {Types::CreateWorkflowStepResponse#name #name} => String
486
+ #
487
+ # @example Request syntax with placeholder values
488
+ #
489
+ # resp = client.create_workflow_step({
490
+ # name: "MigrationWorkflowName", # required
491
+ # step_group_id: "StepGroupId", # required
492
+ # workflow_id: "MigrationWorkflowId", # required
493
+ # step_action_type: "MANUAL", # required, accepts MANUAL, AUTOMATED
494
+ # description: "MigrationWorkflowDescription",
495
+ # workflow_step_automation_configuration: {
496
+ # script_location_s3_bucket: "S3Bucket",
497
+ # script_location_s3_key: {
498
+ # linux: "S3Key",
499
+ # windows: "S3Key",
500
+ # },
501
+ # command: {
502
+ # linux: "String",
503
+ # windows: "String",
504
+ # },
505
+ # run_environment: "AWS", # accepts AWS, ONPREMISE
506
+ # target_type: "SINGLE", # accepts SINGLE, ALL, NONE
507
+ # },
508
+ # step_target: ["StringListMember"],
509
+ # outputs: [
510
+ # {
511
+ # name: "WorkflowStepOutputName",
512
+ # data_type: "STRING", # accepts STRING, INTEGER, STRINGLIST, STRINGMAP
513
+ # required: false,
514
+ # value: {
515
+ # integer_value: 1,
516
+ # string_value: "StringValue",
517
+ # list_of_string_value: ["StringListMember"],
518
+ # },
519
+ # },
520
+ # ],
521
+ # previous: ["StringListMember"],
522
+ # next: ["StringListMember"],
523
+ # })
524
+ #
525
+ # @example Response structure
526
+ #
527
+ # resp.id #=> String
528
+ # resp.step_group_id #=> String
529
+ # resp.workflow_id #=> String
530
+ # resp.name #=> String
531
+ #
532
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/CreateWorkflowStep AWS API Documentation
533
+ #
534
+ # @overload create_workflow_step(params = {})
535
+ # @param [Hash] params ({})
536
+ def create_workflow_step(params = {}, options = {})
537
+ req = build_request(:create_workflow_step, params)
538
+ req.send_request(options)
539
+ end
540
+
541
+ # Create a step group in a migration workflow.
542
+ #
543
+ # @option params [required, String] :workflow_id
544
+ # The ID of the migration workflow that will contain the step group.
545
+ #
546
+ # @option params [required, String] :name
547
+ # The name of the step group.
548
+ #
549
+ # @option params [String] :description
550
+ # The description of the step group.
551
+ #
552
+ # @option params [Array<String>] :next
553
+ # The next step group.
554
+ #
555
+ # @option params [Array<String>] :previous
556
+ # The previous step group.
557
+ #
558
+ # @return [Types::CreateWorkflowStepGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
559
+ #
560
+ # * {Types::CreateWorkflowStepGroupResponse#workflow_id #workflow_id} => String
561
+ # * {Types::CreateWorkflowStepGroupResponse#name #name} => String
562
+ # * {Types::CreateWorkflowStepGroupResponse#id #id} => String
563
+ # * {Types::CreateWorkflowStepGroupResponse#description #description} => String
564
+ # * {Types::CreateWorkflowStepGroupResponse#tools #tools} => Array&lt;Types::Tool&gt;
565
+ # * {Types::CreateWorkflowStepGroupResponse#next #next} => Array&lt;String&gt;
566
+ # * {Types::CreateWorkflowStepGroupResponse#previous #previous} => Array&lt;String&gt;
567
+ # * {Types::CreateWorkflowStepGroupResponse#creation_time #creation_time} => Time
568
+ #
569
+ # @example Request syntax with placeholder values
570
+ #
571
+ # resp = client.create_workflow_step_group({
572
+ # workflow_id: "MigrationWorkflowId", # required
573
+ # name: "StepGroupName", # required
574
+ # description: "StepGroupDescription",
575
+ # next: ["StringListMember"],
576
+ # previous: ["StringListMember"],
577
+ # })
578
+ #
579
+ # @example Response structure
580
+ #
581
+ # resp.workflow_id #=> String
582
+ # resp.name #=> String
583
+ # resp.id #=> String
584
+ # resp.description #=> String
585
+ # resp.tools #=> Array
586
+ # resp.tools[0].name #=> String
587
+ # resp.tools[0].url #=> String
588
+ # resp.next #=> Array
589
+ # resp.next[0] #=> String
590
+ # resp.previous #=> Array
591
+ # resp.previous[0] #=> String
592
+ # resp.creation_time #=> Time
593
+ #
594
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/CreateWorkflowStepGroup AWS API Documentation
595
+ #
596
+ # @overload create_workflow_step_group(params = {})
597
+ # @param [Hash] params ({})
598
+ def create_workflow_step_group(params = {}, options = {})
599
+ req = build_request(:create_workflow_step_group, params)
600
+ req.send_request(options)
601
+ end
602
+
603
+ # Delete a migration workflow. You must pause a running workflow in
604
+ # Migration Hub Orchestrator console to delete it.
605
+ #
606
+ # @option params [required, String] :id
607
+ # The ID of the migration workflow you want to delete.
608
+ #
609
+ # @return [Types::DeleteMigrationWorkflowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
610
+ #
611
+ # * {Types::DeleteMigrationWorkflowResponse#id #id} => String
612
+ # * {Types::DeleteMigrationWorkflowResponse#arn #arn} => String
613
+ # * {Types::DeleteMigrationWorkflowResponse#status #status} => String
614
+ #
615
+ # @example Request syntax with placeholder values
616
+ #
617
+ # resp = client.delete_workflow({
618
+ # id: "MigrationWorkflowId", # required
619
+ # })
620
+ #
621
+ # @example Response structure
622
+ #
623
+ # resp.id #=> String
624
+ # resp.arn #=> String
625
+ # resp.status #=> String, one of "CREATING", "NOT_STARTED", "CREATION_FAILED", "STARTING", "IN_PROGRESS", "WORKFLOW_FAILED", "PAUSED", "PAUSING", "PAUSING_FAILED", "USER_ATTENTION_REQUIRED", "DELETING", "DELETION_FAILED", "DELETED", "COMPLETED"
626
+ #
627
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/DeleteWorkflow AWS API Documentation
628
+ #
629
+ # @overload delete_workflow(params = {})
630
+ # @param [Hash] params ({})
631
+ def delete_workflow(params = {}, options = {})
632
+ req = build_request(:delete_workflow, params)
633
+ req.send_request(options)
634
+ end
635
+
636
+ # Delete a step in a migration workflow. Pause the workflow to delete a
637
+ # running step.
638
+ #
639
+ # @option params [required, String] :id
640
+ # The ID of the step you want to delete.
641
+ #
642
+ # @option params [required, String] :step_group_id
643
+ # The ID of the step group that contains the step you want to delete.
644
+ #
645
+ # @option params [required, String] :workflow_id
646
+ # The ID of the migration workflow.
647
+ #
648
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
649
+ #
650
+ # @example Request syntax with placeholder values
651
+ #
652
+ # resp = client.delete_workflow_step({
653
+ # id: "StepId", # required
654
+ # step_group_id: "StepGroupId", # required
655
+ # workflow_id: "MigrationWorkflowId", # required
656
+ # })
657
+ #
658
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/DeleteWorkflowStep AWS API Documentation
659
+ #
660
+ # @overload delete_workflow_step(params = {})
661
+ # @param [Hash] params ({})
662
+ def delete_workflow_step(params = {}, options = {})
663
+ req = build_request(:delete_workflow_step, params)
664
+ req.send_request(options)
665
+ end
666
+
667
+ # Delete a step group in a migration workflow.
668
+ #
669
+ # @option params [required, String] :workflow_id
670
+ # The ID of the migration workflow.
671
+ #
672
+ # @option params [required, String] :id
673
+ # The ID of the step group you want to delete.
674
+ #
675
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
676
+ #
677
+ # @example Request syntax with placeholder values
678
+ #
679
+ # resp = client.delete_workflow_step_group({
680
+ # workflow_id: "MigrationWorkflowId", # required
681
+ # id: "StepGroupId", # required
682
+ # })
683
+ #
684
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/DeleteWorkflowStepGroup AWS API Documentation
685
+ #
686
+ # @overload delete_workflow_step_group(params = {})
687
+ # @param [Hash] params ({})
688
+ def delete_workflow_step_group(params = {}, options = {})
689
+ req = build_request(:delete_workflow_step_group, params)
690
+ req.send_request(options)
691
+ end
692
+
693
+ # Get the template you want to use for creating a migration workflow.
694
+ #
695
+ # @option params [required, String] :id
696
+ # The ID of the template.
697
+ #
698
+ # @return [Types::GetMigrationWorkflowTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
699
+ #
700
+ # * {Types::GetMigrationWorkflowTemplateResponse#id #id} => String
701
+ # * {Types::GetMigrationWorkflowTemplateResponse#name #name} => String
702
+ # * {Types::GetMigrationWorkflowTemplateResponse#description #description} => String
703
+ # * {Types::GetMigrationWorkflowTemplateResponse#inputs #inputs} => Array&lt;Types::TemplateInput&gt;
704
+ # * {Types::GetMigrationWorkflowTemplateResponse#tools #tools} => Array&lt;Types::Tool&gt;
705
+ # * {Types::GetMigrationWorkflowTemplateResponse#status #status} => String
706
+ # * {Types::GetMigrationWorkflowTemplateResponse#creation_time #creation_time} => Time
707
+ #
708
+ # @example Request syntax with placeholder values
709
+ #
710
+ # resp = client.get_template({
711
+ # id: "TemplateId", # required
712
+ # })
713
+ #
714
+ # @example Response structure
715
+ #
716
+ # resp.id #=> String
717
+ # resp.name #=> String
718
+ # resp.description #=> String
719
+ # resp.inputs #=> Array
720
+ # resp.inputs[0].input_name #=> String
721
+ # resp.inputs[0].data_type #=> String, one of "STRING", "INTEGER", "STRINGLIST", "STRINGMAP"
722
+ # resp.inputs[0].required #=> Boolean
723
+ # resp.tools #=> Array
724
+ # resp.tools[0].name #=> String
725
+ # resp.tools[0].url #=> String
726
+ # resp.status #=> String, one of "CREATED"
727
+ # resp.creation_time #=> Time
728
+ #
729
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/GetTemplate AWS API Documentation
730
+ #
731
+ # @overload get_template(params = {})
732
+ # @param [Hash] params ({})
733
+ def get_template(params = {}, options = {})
734
+ req = build_request(:get_template, params)
735
+ req.send_request(options)
736
+ end
737
+
738
+ # Get a specific step in a template.
739
+ #
740
+ # @option params [required, String] :id
741
+ # The ID of the step.
742
+ #
743
+ # @option params [required, String] :template_id
744
+ # The ID of the template.
745
+ #
746
+ # @option params [required, String] :step_group_id
747
+ # The ID of the step group.
748
+ #
749
+ # @return [Types::GetTemplateStepResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
750
+ #
751
+ # * {Types::GetTemplateStepResponse#id #id} => String
752
+ # * {Types::GetTemplateStepResponse#step_group_id #step_group_id} => String
753
+ # * {Types::GetTemplateStepResponse#template_id #template_id} => String
754
+ # * {Types::GetTemplateStepResponse#name #name} => String
755
+ # * {Types::GetTemplateStepResponse#description #description} => String
756
+ # * {Types::GetTemplateStepResponse#step_action_type #step_action_type} => String
757
+ # * {Types::GetTemplateStepResponse#creation_time #creation_time} => String
758
+ # * {Types::GetTemplateStepResponse#previous #previous} => Array&lt;String&gt;
759
+ # * {Types::GetTemplateStepResponse#next #next} => Array&lt;String&gt;
760
+ # * {Types::GetTemplateStepResponse#outputs #outputs} => Array&lt;Types::StepOutput&gt;
761
+ # * {Types::GetTemplateStepResponse#step_automation_configuration #step_automation_configuration} => Types::StepAutomationConfiguration
762
+ #
763
+ # @example Request syntax with placeholder values
764
+ #
765
+ # resp = client.get_template_step({
766
+ # id: "StepId", # required
767
+ # template_id: "TemplateId", # required
768
+ # step_group_id: "StepGroupId", # required
769
+ # })
770
+ #
771
+ # @example Response structure
772
+ #
773
+ # resp.id #=> String
774
+ # resp.step_group_id #=> String
775
+ # resp.template_id #=> String
776
+ # resp.name #=> String
777
+ # resp.description #=> String
778
+ # resp.step_action_type #=> String, one of "MANUAL", "AUTOMATED"
779
+ # resp.creation_time #=> String
780
+ # resp.previous #=> Array
781
+ # resp.previous[0] #=> String
782
+ # resp.next #=> Array
783
+ # resp.next[0] #=> String
784
+ # resp.outputs #=> Array
785
+ # resp.outputs[0].name #=> String
786
+ # resp.outputs[0].data_type #=> String, one of "STRING", "INTEGER", "STRINGLIST", "STRINGMAP"
787
+ # resp.outputs[0].required #=> Boolean
788
+ # resp.step_automation_configuration.script_location_s3_bucket #=> String
789
+ # resp.step_automation_configuration.script_location_s3_key.linux #=> String
790
+ # resp.step_automation_configuration.script_location_s3_key.windows #=> String
791
+ # resp.step_automation_configuration.command.linux #=> String
792
+ # resp.step_automation_configuration.command.windows #=> String
793
+ # resp.step_automation_configuration.run_environment #=> String, one of "AWS", "ONPREMISE"
794
+ # resp.step_automation_configuration.target_type #=> String, one of "SINGLE", "ALL", "NONE"
795
+ #
796
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/GetTemplateStep AWS API Documentation
797
+ #
798
+ # @overload get_template_step(params = {})
799
+ # @param [Hash] params ({})
800
+ def get_template_step(params = {}, options = {})
801
+ req = build_request(:get_template_step, params)
802
+ req.send_request(options)
803
+ end
804
+
805
+ # Get a step group in a template.
806
+ #
807
+ # @option params [required, String] :template_id
808
+ # The ID of the template.
809
+ #
810
+ # @option params [required, String] :id
811
+ # The ID of the step group.
812
+ #
813
+ # @return [Types::GetTemplateStepGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
814
+ #
815
+ # * {Types::GetTemplateStepGroupResponse#template_id #template_id} => String
816
+ # * {Types::GetTemplateStepGroupResponse#id #id} => String
817
+ # * {Types::GetTemplateStepGroupResponse#name #name} => String
818
+ # * {Types::GetTemplateStepGroupResponse#description #description} => String
819
+ # * {Types::GetTemplateStepGroupResponse#status #status} => String
820
+ # * {Types::GetTemplateStepGroupResponse#creation_time #creation_time} => Time
821
+ # * {Types::GetTemplateStepGroupResponse#last_modified_time #last_modified_time} => Time
822
+ # * {Types::GetTemplateStepGroupResponse#tools #tools} => Array&lt;Types::Tool&gt;
823
+ # * {Types::GetTemplateStepGroupResponse#previous #previous} => Array&lt;String&gt;
824
+ # * {Types::GetTemplateStepGroupResponse#next #next} => Array&lt;String&gt;
825
+ #
826
+ # @example Request syntax with placeholder values
827
+ #
828
+ # resp = client.get_template_step_group({
829
+ # template_id: "TemplateId", # required
830
+ # id: "StepGroupId", # required
831
+ # })
832
+ #
833
+ # @example Response structure
834
+ #
835
+ # resp.template_id #=> String
836
+ # resp.id #=> String
837
+ # resp.name #=> String
838
+ # resp.description #=> String
839
+ # resp.status #=> String, one of "AWAITING_DEPENDENCIES", "READY", "IN_PROGRESS", "COMPLETED", "FAILED", "PAUSED", "PAUSING", "USER_ATTENTION_REQUIRED"
840
+ # resp.creation_time #=> Time
841
+ # resp.last_modified_time #=> Time
842
+ # resp.tools #=> Array
843
+ # resp.tools[0].name #=> String
844
+ # resp.tools[0].url #=> String
845
+ # resp.previous #=> Array
846
+ # resp.previous[0] #=> String
847
+ # resp.next #=> Array
848
+ # resp.next[0] #=> String
849
+ #
850
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/GetTemplateStepGroup AWS API Documentation
851
+ #
852
+ # @overload get_template_step_group(params = {})
853
+ # @param [Hash] params ({})
854
+ def get_template_step_group(params = {}, options = {})
855
+ req = build_request(:get_template_step_group, params)
856
+ req.send_request(options)
857
+ end
858
+
859
+ # Get migration workflow.
860
+ #
861
+ # @option params [required, String] :id
862
+ # The ID of the migration workflow.
863
+ #
864
+ # @return [Types::GetMigrationWorkflowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
865
+ #
866
+ # * {Types::GetMigrationWorkflowResponse#id #id} => String
867
+ # * {Types::GetMigrationWorkflowResponse#arn #arn} => String
868
+ # * {Types::GetMigrationWorkflowResponse#name #name} => String
869
+ # * {Types::GetMigrationWorkflowResponse#description #description} => String
870
+ # * {Types::GetMigrationWorkflowResponse#template_id #template_id} => String
871
+ # * {Types::GetMigrationWorkflowResponse#ads_application_configuration_id #ads_application_configuration_id} => String
872
+ # * {Types::GetMigrationWorkflowResponse#ads_application_name #ads_application_name} => String
873
+ # * {Types::GetMigrationWorkflowResponse#status #status} => String
874
+ # * {Types::GetMigrationWorkflowResponse#status_message #status_message} => String
875
+ # * {Types::GetMigrationWorkflowResponse#creation_time #creation_time} => Time
876
+ # * {Types::GetMigrationWorkflowResponse#last_start_time #last_start_time} => Time
877
+ # * {Types::GetMigrationWorkflowResponse#last_stop_time #last_stop_time} => Time
878
+ # * {Types::GetMigrationWorkflowResponse#last_modified_time #last_modified_time} => Time
879
+ # * {Types::GetMigrationWorkflowResponse#end_time #end_time} => Time
880
+ # * {Types::GetMigrationWorkflowResponse#tools #tools} => Array&lt;Types::Tool&gt;
881
+ # * {Types::GetMigrationWorkflowResponse#total_steps #total_steps} => Integer
882
+ # * {Types::GetMigrationWorkflowResponse#completed_steps #completed_steps} => Integer
883
+ # * {Types::GetMigrationWorkflowResponse#workflow_inputs #workflow_inputs} => Hash&lt;String,Types::StepInput&gt;
884
+ # * {Types::GetMigrationWorkflowResponse#tags #tags} => Hash&lt;String,String&gt;
885
+ # * {Types::GetMigrationWorkflowResponse#workflow_bucket #workflow_bucket} => String
886
+ #
887
+ # @example Request syntax with placeholder values
888
+ #
889
+ # resp = client.get_workflow({
890
+ # id: "MigrationWorkflowId", # required
891
+ # })
892
+ #
893
+ # @example Response structure
894
+ #
895
+ # resp.id #=> String
896
+ # resp.arn #=> String
897
+ # resp.name #=> String
898
+ # resp.description #=> String
899
+ # resp.template_id #=> String
900
+ # resp.ads_application_configuration_id #=> String
901
+ # resp.ads_application_name #=> String
902
+ # resp.status #=> String, one of "CREATING", "NOT_STARTED", "CREATION_FAILED", "STARTING", "IN_PROGRESS", "WORKFLOW_FAILED", "PAUSED", "PAUSING", "PAUSING_FAILED", "USER_ATTENTION_REQUIRED", "DELETING", "DELETION_FAILED", "DELETED", "COMPLETED"
903
+ # resp.status_message #=> String
904
+ # resp.creation_time #=> Time
905
+ # resp.last_start_time #=> Time
906
+ # resp.last_stop_time #=> Time
907
+ # resp.last_modified_time #=> Time
908
+ # resp.end_time #=> Time
909
+ # resp.tools #=> Array
910
+ # resp.tools[0].name #=> String
911
+ # resp.tools[0].url #=> String
912
+ # resp.total_steps #=> Integer
913
+ # resp.completed_steps #=> Integer
914
+ # resp.workflow_inputs #=> Hash
915
+ # resp.workflow_inputs["StepInputParametersKey"].integer_value #=> Integer
916
+ # resp.workflow_inputs["StepInputParametersKey"].string_value #=> String
917
+ # resp.workflow_inputs["StepInputParametersKey"].list_of_strings_value #=> Array
918
+ # resp.workflow_inputs["StepInputParametersKey"].list_of_strings_value[0] #=> String
919
+ # resp.workflow_inputs["StepInputParametersKey"].map_of_string_value #=> Hash
920
+ # resp.workflow_inputs["StepInputParametersKey"].map_of_string_value["StringMapKey"] #=> String
921
+ # resp.tags #=> Hash
922
+ # resp.tags["StringMapKey"] #=> String
923
+ # resp.workflow_bucket #=> String
924
+ #
925
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/GetWorkflow AWS API Documentation
926
+ #
927
+ # @overload get_workflow(params = {})
928
+ # @param [Hash] params ({})
929
+ def get_workflow(params = {}, options = {})
930
+ req = build_request(:get_workflow, params)
931
+ req.send_request(options)
932
+ end
933
+
934
+ # Get a step in the migration workflow.
935
+ #
936
+ # @option params [required, String] :workflow_id
937
+ # The ID of the migration workflow.
938
+ #
939
+ # @option params [required, String] :step_group_id
940
+ # desThe ID of the step group.
941
+ #
942
+ # @option params [required, String] :id
943
+ # The ID of the step.
944
+ #
945
+ # @return [Types::GetWorkflowStepResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
946
+ #
947
+ # * {Types::GetWorkflowStepResponse#name #name} => String
948
+ # * {Types::GetWorkflowStepResponse#step_group_id #step_group_id} => String
949
+ # * {Types::GetWorkflowStepResponse#workflow_id #workflow_id} => String
950
+ # * {Types::GetWorkflowStepResponse#step_id #step_id} => String
951
+ # * {Types::GetWorkflowStepResponse#description #description} => String
952
+ # * {Types::GetWorkflowStepResponse#step_action_type #step_action_type} => String
953
+ # * {Types::GetWorkflowStepResponse#owner #owner} => String
954
+ # * {Types::GetWorkflowStepResponse#workflow_step_automation_configuration #workflow_step_automation_configuration} => Types::WorkflowStepAutomationConfiguration
955
+ # * {Types::GetWorkflowStepResponse#step_target #step_target} => Array&lt;String&gt;
956
+ # * {Types::GetWorkflowStepResponse#outputs #outputs} => Array&lt;Types::WorkflowStepOutput&gt;
957
+ # * {Types::GetWorkflowStepResponse#previous #previous} => Array&lt;String&gt;
958
+ # * {Types::GetWorkflowStepResponse#next #next} => Array&lt;String&gt;
959
+ # * {Types::GetWorkflowStepResponse#status #status} => String
960
+ # * {Types::GetWorkflowStepResponse#status_message #status_message} => String
961
+ # * {Types::GetWorkflowStepResponse#script_output_location #script_output_location} => String
962
+ # * {Types::GetWorkflowStepResponse#creation_time #creation_time} => Time
963
+ # * {Types::GetWorkflowStepResponse#last_start_time #last_start_time} => Time
964
+ # * {Types::GetWorkflowStepResponse#end_time #end_time} => Time
965
+ # * {Types::GetWorkflowStepResponse#no_of_srv_completed #no_of_srv_completed} => Integer
966
+ # * {Types::GetWorkflowStepResponse#no_of_srv_failed #no_of_srv_failed} => Integer
967
+ # * {Types::GetWorkflowStepResponse#total_no_of_srv #total_no_of_srv} => Integer
968
+ #
969
+ # @example Request syntax with placeholder values
970
+ #
971
+ # resp = client.get_workflow_step({
972
+ # workflow_id: "MigrationWorkflowId", # required
973
+ # step_group_id: "StepGroupId", # required
974
+ # id: "StepId", # required
975
+ # })
976
+ #
977
+ # @example Response structure
978
+ #
979
+ # resp.name #=> String
980
+ # resp.step_group_id #=> String
981
+ # resp.workflow_id #=> String
982
+ # resp.step_id #=> String
983
+ # resp.description #=> String
984
+ # resp.step_action_type #=> String, one of "MANUAL", "AUTOMATED"
985
+ # resp.owner #=> String, one of "AWS_MANAGED", "CUSTOM"
986
+ # resp.workflow_step_automation_configuration.script_location_s3_bucket #=> String
987
+ # resp.workflow_step_automation_configuration.script_location_s3_key.linux #=> String
988
+ # resp.workflow_step_automation_configuration.script_location_s3_key.windows #=> String
989
+ # resp.workflow_step_automation_configuration.command.linux #=> String
990
+ # resp.workflow_step_automation_configuration.command.windows #=> String
991
+ # resp.workflow_step_automation_configuration.run_environment #=> String, one of "AWS", "ONPREMISE"
992
+ # resp.workflow_step_automation_configuration.target_type #=> String, one of "SINGLE", "ALL", "NONE"
993
+ # resp.step_target #=> Array
994
+ # resp.step_target[0] #=> String
995
+ # resp.outputs #=> Array
996
+ # resp.outputs[0].name #=> String
997
+ # resp.outputs[0].data_type #=> String, one of "STRING", "INTEGER", "STRINGLIST", "STRINGMAP"
998
+ # resp.outputs[0].required #=> Boolean
999
+ # resp.outputs[0].value.integer_value #=> Integer
1000
+ # resp.outputs[0].value.string_value #=> String
1001
+ # resp.outputs[0].value.list_of_string_value #=> Array
1002
+ # resp.outputs[0].value.list_of_string_value[0] #=> String
1003
+ # resp.previous #=> Array
1004
+ # resp.previous[0] #=> String
1005
+ # resp.next #=> Array
1006
+ # resp.next[0] #=> String
1007
+ # resp.status #=> String, one of "AWAITING_DEPENDENCIES", "READY", "IN_PROGRESS", "COMPLETED", "FAILED", "PAUSED", "USER_ATTENTION_REQUIRED"
1008
+ # resp.status_message #=> String
1009
+ # resp.script_output_location #=> String
1010
+ # resp.creation_time #=> Time
1011
+ # resp.last_start_time #=> Time
1012
+ # resp.end_time #=> Time
1013
+ # resp.no_of_srv_completed #=> Integer
1014
+ # resp.no_of_srv_failed #=> Integer
1015
+ # resp.total_no_of_srv #=> Integer
1016
+ #
1017
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/GetWorkflowStep AWS API Documentation
1018
+ #
1019
+ # @overload get_workflow_step(params = {})
1020
+ # @param [Hash] params ({})
1021
+ def get_workflow_step(params = {}, options = {})
1022
+ req = build_request(:get_workflow_step, params)
1023
+ req.send_request(options)
1024
+ end
1025
+
1026
+ # Get the step group of a migration workflow.
1027
+ #
1028
+ # @option params [required, String] :id
1029
+ # The ID of the step group.
1030
+ #
1031
+ # @option params [required, String] :workflow_id
1032
+ # The ID of the migration workflow.
1033
+ #
1034
+ # @return [Types::GetWorkflowStepGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1035
+ #
1036
+ # * {Types::GetWorkflowStepGroupResponse#id #id} => String
1037
+ # * {Types::GetWorkflowStepGroupResponse#workflow_id #workflow_id} => String
1038
+ # * {Types::GetWorkflowStepGroupResponse#name #name} => String
1039
+ # * {Types::GetWorkflowStepGroupResponse#description #description} => String
1040
+ # * {Types::GetWorkflowStepGroupResponse#status #status} => String
1041
+ # * {Types::GetWorkflowStepGroupResponse#owner #owner} => String
1042
+ # * {Types::GetWorkflowStepGroupResponse#creation_time #creation_time} => Time
1043
+ # * {Types::GetWorkflowStepGroupResponse#last_modified_time #last_modified_time} => Time
1044
+ # * {Types::GetWorkflowStepGroupResponse#end_time #end_time} => Time
1045
+ # * {Types::GetWorkflowStepGroupResponse#tools #tools} => Array&lt;Types::Tool&gt;
1046
+ # * {Types::GetWorkflowStepGroupResponse#previous #previous} => Array&lt;String&gt;
1047
+ # * {Types::GetWorkflowStepGroupResponse#next #next} => Array&lt;String&gt;
1048
+ #
1049
+ # @example Request syntax with placeholder values
1050
+ #
1051
+ # resp = client.get_workflow_step_group({
1052
+ # id: "StepGroupId", # required
1053
+ # workflow_id: "MigrationWorkflowId", # required
1054
+ # })
1055
+ #
1056
+ # @example Response structure
1057
+ #
1058
+ # resp.id #=> String
1059
+ # resp.workflow_id #=> String
1060
+ # resp.name #=> String
1061
+ # resp.description #=> String
1062
+ # resp.status #=> String, one of "AWAITING_DEPENDENCIES", "READY", "IN_PROGRESS", "COMPLETED", "FAILED", "PAUSED", "PAUSING", "USER_ATTENTION_REQUIRED"
1063
+ # resp.owner #=> String, one of "AWS_MANAGED", "CUSTOM"
1064
+ # resp.creation_time #=> Time
1065
+ # resp.last_modified_time #=> Time
1066
+ # resp.end_time #=> Time
1067
+ # resp.tools #=> Array
1068
+ # resp.tools[0].name #=> String
1069
+ # resp.tools[0].url #=> String
1070
+ # resp.previous #=> Array
1071
+ # resp.previous[0] #=> String
1072
+ # resp.next #=> Array
1073
+ # resp.next[0] #=> String
1074
+ #
1075
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/GetWorkflowStepGroup AWS API Documentation
1076
+ #
1077
+ # @overload get_workflow_step_group(params = {})
1078
+ # @param [Hash] params ({})
1079
+ def get_workflow_step_group(params = {}, options = {})
1080
+ req = build_request(:get_workflow_step_group, params)
1081
+ req.send_request(options)
1082
+ end
1083
+
1084
+ # List AWS Migration Hub Orchestrator plugins.
1085
+ #
1086
+ # @option params [Integer] :max_results
1087
+ # The maximum number of plugins that can be returned.
1088
+ #
1089
+ # @option params [String] :next_token
1090
+ # The pagination token.
1091
+ #
1092
+ # @return [Types::ListPluginsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1093
+ #
1094
+ # * {Types::ListPluginsResponse#next_token #next_token} => String
1095
+ # * {Types::ListPluginsResponse#plugins #plugins} => Array&lt;Types::PluginSummary&gt;
1096
+ #
1097
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1098
+ #
1099
+ # @example Request syntax with placeholder values
1100
+ #
1101
+ # resp = client.list_plugins({
1102
+ # max_results: 1,
1103
+ # next_token: "NextToken",
1104
+ # })
1105
+ #
1106
+ # @example Response structure
1107
+ #
1108
+ # resp.next_token #=> String
1109
+ # resp.plugins #=> Array
1110
+ # resp.plugins[0].plugin_id #=> String
1111
+ # resp.plugins[0].hostname #=> String
1112
+ # resp.plugins[0].status #=> String, one of "HEALTHY", "UNHEALTHY"
1113
+ # resp.plugins[0].ip_address #=> String
1114
+ # resp.plugins[0].version #=> String
1115
+ # resp.plugins[0].registered_time #=> String
1116
+ #
1117
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/ListPlugins AWS API Documentation
1118
+ #
1119
+ # @overload list_plugins(params = {})
1120
+ # @param [Hash] params ({})
1121
+ def list_plugins(params = {}, options = {})
1122
+ req = build_request(:list_plugins, params)
1123
+ req.send_request(options)
1124
+ end
1125
+
1126
+ # List the tags added to a resource.
1127
+ #
1128
+ # @option params [required, String] :resource_arn
1129
+ # The Amazon Resource Name (ARN) of the resource.
1130
+ #
1131
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1132
+ #
1133
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Hash&lt;String,String&gt;
1134
+ #
1135
+ # @example Request syntax with placeholder values
1136
+ #
1137
+ # resp = client.list_tags_for_resource({
1138
+ # resource_arn: "ResourceArn", # required
1139
+ # })
1140
+ #
1141
+ # @example Response structure
1142
+ #
1143
+ # resp.tags #=> Hash
1144
+ # resp.tags["TagKey"] #=> String
1145
+ #
1146
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/ListTagsForResource AWS API Documentation
1147
+ #
1148
+ # @overload list_tags_for_resource(params = {})
1149
+ # @param [Hash] params ({})
1150
+ def list_tags_for_resource(params = {}, options = {})
1151
+ req = build_request(:list_tags_for_resource, params)
1152
+ req.send_request(options)
1153
+ end
1154
+
1155
+ # List the step groups in a template.
1156
+ #
1157
+ # @option params [Integer] :max_results
1158
+ # The maximum number of results that can be returned.
1159
+ #
1160
+ # @option params [String] :next_token
1161
+ # The pagination token.
1162
+ #
1163
+ # @option params [required, String] :template_id
1164
+ # The ID of the template.
1165
+ #
1166
+ # @return [Types::ListTemplateStepGroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1167
+ #
1168
+ # * {Types::ListTemplateStepGroupsResponse#next_token #next_token} => String
1169
+ # * {Types::ListTemplateStepGroupsResponse#template_step_group_summary #template_step_group_summary} => Array&lt;Types::TemplateStepGroupSummary&gt;
1170
+ #
1171
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1172
+ #
1173
+ # @example Request syntax with placeholder values
1174
+ #
1175
+ # resp = client.list_template_step_groups({
1176
+ # max_results: 1,
1177
+ # next_token: "NextToken",
1178
+ # template_id: "TemplateId", # required
1179
+ # })
1180
+ #
1181
+ # @example Response structure
1182
+ #
1183
+ # resp.next_token #=> String
1184
+ # resp.template_step_group_summary #=> Array
1185
+ # resp.template_step_group_summary[0].id #=> String
1186
+ # resp.template_step_group_summary[0].name #=> String
1187
+ # resp.template_step_group_summary[0].previous #=> Array
1188
+ # resp.template_step_group_summary[0].previous[0] #=> String
1189
+ # resp.template_step_group_summary[0].next #=> Array
1190
+ # resp.template_step_group_summary[0].next[0] #=> String
1191
+ #
1192
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/ListTemplateStepGroups AWS API Documentation
1193
+ #
1194
+ # @overload list_template_step_groups(params = {})
1195
+ # @param [Hash] params ({})
1196
+ def list_template_step_groups(params = {}, options = {})
1197
+ req = build_request(:list_template_step_groups, params)
1198
+ req.send_request(options)
1199
+ end
1200
+
1201
+ # List the steps in a template.
1202
+ #
1203
+ # @option params [Integer] :max_results
1204
+ # The maximum number of results that can be returned.
1205
+ #
1206
+ # @option params [String] :next_token
1207
+ # The pagination token.
1208
+ #
1209
+ # @option params [required, String] :template_id
1210
+ # The ID of the template.
1211
+ #
1212
+ # @option params [required, String] :step_group_id
1213
+ # The ID of the step group.
1214
+ #
1215
+ # @return [Types::ListTemplateStepsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1216
+ #
1217
+ # * {Types::ListTemplateStepsResponse#next_token #next_token} => String
1218
+ # * {Types::ListTemplateStepsResponse#template_step_summary_list #template_step_summary_list} => Array&lt;Types::TemplateStepSummary&gt;
1219
+ #
1220
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1221
+ #
1222
+ # @example Request syntax with placeholder values
1223
+ #
1224
+ # resp = client.list_template_steps({
1225
+ # max_results: 1,
1226
+ # next_token: "NextToken",
1227
+ # template_id: "TemplateId", # required
1228
+ # step_group_id: "StepGroupId", # required
1229
+ # })
1230
+ #
1231
+ # @example Response structure
1232
+ #
1233
+ # resp.next_token #=> String
1234
+ # resp.template_step_summary_list #=> Array
1235
+ # resp.template_step_summary_list[0].id #=> String
1236
+ # resp.template_step_summary_list[0].step_group_id #=> String
1237
+ # resp.template_step_summary_list[0].template_id #=> String
1238
+ # resp.template_step_summary_list[0].name #=> String
1239
+ # resp.template_step_summary_list[0].step_action_type #=> String, one of "MANUAL", "AUTOMATED"
1240
+ # resp.template_step_summary_list[0].target_type #=> String, one of "SINGLE", "ALL", "NONE"
1241
+ # resp.template_step_summary_list[0].owner #=> String, one of "AWS_MANAGED", "CUSTOM"
1242
+ # resp.template_step_summary_list[0].previous #=> Array
1243
+ # resp.template_step_summary_list[0].previous[0] #=> String
1244
+ # resp.template_step_summary_list[0].next #=> Array
1245
+ # resp.template_step_summary_list[0].next[0] #=> String
1246
+ #
1247
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/ListTemplateSteps AWS API Documentation
1248
+ #
1249
+ # @overload list_template_steps(params = {})
1250
+ # @param [Hash] params ({})
1251
+ def list_template_steps(params = {}, options = {})
1252
+ req = build_request(:list_template_steps, params)
1253
+ req.send_request(options)
1254
+ end
1255
+
1256
+ # List the templates available in Migration Hub Orchestrator to create a
1257
+ # migration workflow.
1258
+ #
1259
+ # @option params [Integer] :max_results
1260
+ # The maximum number of results that can be returned.
1261
+ #
1262
+ # @option params [String] :next_token
1263
+ # The pagination token.
1264
+ #
1265
+ # @option params [String] :name
1266
+ # The name of the template.
1267
+ #
1268
+ # @return [Types::ListMigrationWorkflowTemplatesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1269
+ #
1270
+ # * {Types::ListMigrationWorkflowTemplatesResponse#next_token #next_token} => String
1271
+ # * {Types::ListMigrationWorkflowTemplatesResponse#template_summary #template_summary} => Array&lt;Types::TemplateSummary&gt;
1272
+ #
1273
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1274
+ #
1275
+ # @example Request syntax with placeholder values
1276
+ #
1277
+ # resp = client.list_templates({
1278
+ # max_results: 1,
1279
+ # next_token: "NextToken",
1280
+ # name: "TemplateName",
1281
+ # })
1282
+ #
1283
+ # @example Response structure
1284
+ #
1285
+ # resp.next_token #=> String
1286
+ # resp.template_summary #=> Array
1287
+ # resp.template_summary[0].id #=> String
1288
+ # resp.template_summary[0].name #=> String
1289
+ # resp.template_summary[0].arn #=> String
1290
+ # resp.template_summary[0].description #=> String
1291
+ #
1292
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/ListTemplates AWS API Documentation
1293
+ #
1294
+ # @overload list_templates(params = {})
1295
+ # @param [Hash] params ({})
1296
+ def list_templates(params = {}, options = {})
1297
+ req = build_request(:list_templates, params)
1298
+ req.send_request(options)
1299
+ end
1300
+
1301
+ # List the step groups in a migration workflow.
1302
+ #
1303
+ # @option params [String] :next_token
1304
+ # The pagination token.
1305
+ #
1306
+ # @option params [Integer] :max_results
1307
+ # The maximum number of results that can be returned.
1308
+ #
1309
+ # @option params [required, String] :workflow_id
1310
+ # The ID of the migration workflow.
1311
+ #
1312
+ # @return [Types::ListWorkflowStepGroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1313
+ #
1314
+ # * {Types::ListWorkflowStepGroupsResponse#next_token #next_token} => String
1315
+ # * {Types::ListWorkflowStepGroupsResponse#workflow_step_groups_summary #workflow_step_groups_summary} => Array&lt;Types::WorkflowStepGroupSummary&gt;
1316
+ #
1317
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1318
+ #
1319
+ # @example Request syntax with placeholder values
1320
+ #
1321
+ # resp = client.list_workflow_step_groups({
1322
+ # next_token: "NextToken",
1323
+ # max_results: 1,
1324
+ # workflow_id: "MigrationWorkflowId", # required
1325
+ # })
1326
+ #
1327
+ # @example Response structure
1328
+ #
1329
+ # resp.next_token #=> String
1330
+ # resp.workflow_step_groups_summary #=> Array
1331
+ # resp.workflow_step_groups_summary[0].id #=> String
1332
+ # resp.workflow_step_groups_summary[0].name #=> String
1333
+ # resp.workflow_step_groups_summary[0].owner #=> String, one of "AWS_MANAGED", "CUSTOM"
1334
+ # resp.workflow_step_groups_summary[0].status #=> String, one of "AWAITING_DEPENDENCIES", "READY", "IN_PROGRESS", "COMPLETED", "FAILED", "PAUSED", "PAUSING", "USER_ATTENTION_REQUIRED"
1335
+ # resp.workflow_step_groups_summary[0].previous #=> Array
1336
+ # resp.workflow_step_groups_summary[0].previous[0] #=> String
1337
+ # resp.workflow_step_groups_summary[0].next #=> Array
1338
+ # resp.workflow_step_groups_summary[0].next[0] #=> String
1339
+ #
1340
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/ListWorkflowStepGroups AWS API Documentation
1341
+ #
1342
+ # @overload list_workflow_step_groups(params = {})
1343
+ # @param [Hash] params ({})
1344
+ def list_workflow_step_groups(params = {}, options = {})
1345
+ req = build_request(:list_workflow_step_groups, params)
1346
+ req.send_request(options)
1347
+ end
1348
+
1349
+ # List the steps in a workflow.
1350
+ #
1351
+ # @option params [String] :next_token
1352
+ # The pagination token.
1353
+ #
1354
+ # @option params [Integer] :max_results
1355
+ # The maximum number of results that can be returned.
1356
+ #
1357
+ # @option params [required, String] :workflow_id
1358
+ # The ID of the migration workflow.
1359
+ #
1360
+ # @option params [required, String] :step_group_id
1361
+ # The ID of the step group.
1362
+ #
1363
+ # @return [Types::ListWorkflowStepsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1364
+ #
1365
+ # * {Types::ListWorkflowStepsResponse#next_token #next_token} => String
1366
+ # * {Types::ListWorkflowStepsResponse#workflow_steps_summary #workflow_steps_summary} => Array&lt;Types::WorkflowStepSummary&gt;
1367
+ #
1368
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1369
+ #
1370
+ # @example Request syntax with placeholder values
1371
+ #
1372
+ # resp = client.list_workflow_steps({
1373
+ # next_token: "NextToken",
1374
+ # max_results: 1,
1375
+ # workflow_id: "MigrationWorkflowId", # required
1376
+ # step_group_id: "StepGroupId", # required
1377
+ # })
1378
+ #
1379
+ # @example Response structure
1380
+ #
1381
+ # resp.next_token #=> String
1382
+ # resp.workflow_steps_summary #=> Array
1383
+ # resp.workflow_steps_summary[0].step_id #=> String
1384
+ # resp.workflow_steps_summary[0].name #=> String
1385
+ # resp.workflow_steps_summary[0].step_action_type #=> String, one of "MANUAL", "AUTOMATED"
1386
+ # resp.workflow_steps_summary[0].owner #=> String, one of "AWS_MANAGED", "CUSTOM"
1387
+ # resp.workflow_steps_summary[0].previous #=> Array
1388
+ # resp.workflow_steps_summary[0].previous[0] #=> String
1389
+ # resp.workflow_steps_summary[0].next #=> Array
1390
+ # resp.workflow_steps_summary[0].next[0] #=> String
1391
+ # resp.workflow_steps_summary[0].status #=> String, one of "AWAITING_DEPENDENCIES", "READY", "IN_PROGRESS", "COMPLETED", "FAILED", "PAUSED", "USER_ATTENTION_REQUIRED"
1392
+ # resp.workflow_steps_summary[0].status_message #=> String
1393
+ # resp.workflow_steps_summary[0].no_of_srv_completed #=> Integer
1394
+ # resp.workflow_steps_summary[0].no_of_srv_failed #=> Integer
1395
+ # resp.workflow_steps_summary[0].total_no_of_srv #=> Integer
1396
+ # resp.workflow_steps_summary[0].description #=> String
1397
+ # resp.workflow_steps_summary[0].script_location #=> String
1398
+ #
1399
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/ListWorkflowSteps AWS API Documentation
1400
+ #
1401
+ # @overload list_workflow_steps(params = {})
1402
+ # @param [Hash] params ({})
1403
+ def list_workflow_steps(params = {}, options = {})
1404
+ req = build_request(:list_workflow_steps, params)
1405
+ req.send_request(options)
1406
+ end
1407
+
1408
+ # List the migration workflows.
1409
+ #
1410
+ # @option params [Integer] :max_results
1411
+ # The maximum number of results that can be returned.
1412
+ #
1413
+ # @option params [String] :next_token
1414
+ # The pagination token.
1415
+ #
1416
+ # @option params [String] :template_id
1417
+ # The ID of the template.
1418
+ #
1419
+ # @option params [String] :ads_application_configuration_name
1420
+ # The name of the application configured in Application Discovery
1421
+ # Service.
1422
+ #
1423
+ # @option params [String] :status
1424
+ # The status of the migration workflow.
1425
+ #
1426
+ # @option params [String] :name
1427
+ # The name of the migration workflow.
1428
+ #
1429
+ # @return [Types::ListMigrationWorkflowsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1430
+ #
1431
+ # * {Types::ListMigrationWorkflowsResponse#next_token #next_token} => String
1432
+ # * {Types::ListMigrationWorkflowsResponse#migration_workflow_summary #migration_workflow_summary} => Array&lt;Types::MigrationWorkflowSummary&gt;
1433
+ #
1434
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1435
+ #
1436
+ # @example Request syntax with placeholder values
1437
+ #
1438
+ # resp = client.list_workflows({
1439
+ # max_results: 1,
1440
+ # next_token: "NextToken",
1441
+ # template_id: "TemplateId",
1442
+ # ads_application_configuration_name: "ApplicationConfigurationName",
1443
+ # status: "CREATING", # accepts CREATING, NOT_STARTED, CREATION_FAILED, STARTING, IN_PROGRESS, WORKFLOW_FAILED, PAUSED, PAUSING, PAUSING_FAILED, USER_ATTENTION_REQUIRED, DELETING, DELETION_FAILED, DELETED, COMPLETED
1444
+ # name: "String",
1445
+ # })
1446
+ #
1447
+ # @example Response structure
1448
+ #
1449
+ # resp.next_token #=> String
1450
+ # resp.migration_workflow_summary #=> Array
1451
+ # resp.migration_workflow_summary[0].id #=> String
1452
+ # resp.migration_workflow_summary[0].name #=> String
1453
+ # resp.migration_workflow_summary[0].template_id #=> String
1454
+ # resp.migration_workflow_summary[0].ads_application_configuration_name #=> String
1455
+ # resp.migration_workflow_summary[0].status #=> String, one of "CREATING", "NOT_STARTED", "CREATION_FAILED", "STARTING", "IN_PROGRESS", "WORKFLOW_FAILED", "PAUSED", "PAUSING", "PAUSING_FAILED", "USER_ATTENTION_REQUIRED", "DELETING", "DELETION_FAILED", "DELETED", "COMPLETED"
1456
+ # resp.migration_workflow_summary[0].creation_time #=> Time
1457
+ # resp.migration_workflow_summary[0].end_time #=> Time
1458
+ # resp.migration_workflow_summary[0].status_message #=> String
1459
+ # resp.migration_workflow_summary[0].completed_steps #=> Integer
1460
+ # resp.migration_workflow_summary[0].total_steps #=> Integer
1461
+ #
1462
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/ListWorkflows AWS API Documentation
1463
+ #
1464
+ # @overload list_workflows(params = {})
1465
+ # @param [Hash] params ({})
1466
+ def list_workflows(params = {}, options = {})
1467
+ req = build_request(:list_workflows, params)
1468
+ req.send_request(options)
1469
+ end
1470
+
1471
+ # Retry a failed step in a migration workflow.
1472
+ #
1473
+ # @option params [required, String] :workflow_id
1474
+ # The ID of the migration workflow.
1475
+ #
1476
+ # @option params [required, String] :step_group_id
1477
+ # The ID of the step group.
1478
+ #
1479
+ # @option params [required, String] :id
1480
+ # The ID of the step.
1481
+ #
1482
+ # @return [Types::RetryWorkflowStepResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1483
+ #
1484
+ # * {Types::RetryWorkflowStepResponse#step_group_id #step_group_id} => String
1485
+ # * {Types::RetryWorkflowStepResponse#workflow_id #workflow_id} => String
1486
+ # * {Types::RetryWorkflowStepResponse#id #id} => String
1487
+ # * {Types::RetryWorkflowStepResponse#status #status} => String
1488
+ #
1489
+ # @example Request syntax with placeholder values
1490
+ #
1491
+ # resp = client.retry_workflow_step({
1492
+ # workflow_id: "MigrationWorkflowId", # required
1493
+ # step_group_id: "StepGroupId", # required
1494
+ # id: "StepId", # required
1495
+ # })
1496
+ #
1497
+ # @example Response structure
1498
+ #
1499
+ # resp.step_group_id #=> String
1500
+ # resp.workflow_id #=> String
1501
+ # resp.id #=> String
1502
+ # resp.status #=> String, one of "AWAITING_DEPENDENCIES", "READY", "IN_PROGRESS", "COMPLETED", "FAILED", "PAUSED", "USER_ATTENTION_REQUIRED"
1503
+ #
1504
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/RetryWorkflowStep AWS API Documentation
1505
+ #
1506
+ # @overload retry_workflow_step(params = {})
1507
+ # @param [Hash] params ({})
1508
+ def retry_workflow_step(params = {}, options = {})
1509
+ req = build_request(:retry_workflow_step, params)
1510
+ req.send_request(options)
1511
+ end
1512
+
1513
+ # Start a migration workflow.
1514
+ #
1515
+ # @option params [required, String] :id
1516
+ # The ID of the migration workflow.
1517
+ #
1518
+ # @return [Types::StartMigrationWorkflowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1519
+ #
1520
+ # * {Types::StartMigrationWorkflowResponse#id #id} => String
1521
+ # * {Types::StartMigrationWorkflowResponse#arn #arn} => String
1522
+ # * {Types::StartMigrationWorkflowResponse#status #status} => String
1523
+ # * {Types::StartMigrationWorkflowResponse#status_message #status_message} => String
1524
+ # * {Types::StartMigrationWorkflowResponse#last_start_time #last_start_time} => Time
1525
+ #
1526
+ # @example Request syntax with placeholder values
1527
+ #
1528
+ # resp = client.start_workflow({
1529
+ # id: "MigrationWorkflowId", # required
1530
+ # })
1531
+ #
1532
+ # @example Response structure
1533
+ #
1534
+ # resp.id #=> String
1535
+ # resp.arn #=> String
1536
+ # resp.status #=> String, one of "CREATING", "NOT_STARTED", "CREATION_FAILED", "STARTING", "IN_PROGRESS", "WORKFLOW_FAILED", "PAUSED", "PAUSING", "PAUSING_FAILED", "USER_ATTENTION_REQUIRED", "DELETING", "DELETION_FAILED", "DELETED", "COMPLETED"
1537
+ # resp.status_message #=> String
1538
+ # resp.last_start_time #=> Time
1539
+ #
1540
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/StartWorkflow AWS API Documentation
1541
+ #
1542
+ # @overload start_workflow(params = {})
1543
+ # @param [Hash] params ({})
1544
+ def start_workflow(params = {}, options = {})
1545
+ req = build_request(:start_workflow, params)
1546
+ req.send_request(options)
1547
+ end
1548
+
1549
+ # Stop an ongoing migration workflow.
1550
+ #
1551
+ # @option params [required, String] :id
1552
+ # The ID of the migration workflow.
1553
+ #
1554
+ # @return [Types::StopMigrationWorkflowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1555
+ #
1556
+ # * {Types::StopMigrationWorkflowResponse#id #id} => String
1557
+ # * {Types::StopMigrationWorkflowResponse#arn #arn} => String
1558
+ # * {Types::StopMigrationWorkflowResponse#status #status} => String
1559
+ # * {Types::StopMigrationWorkflowResponse#status_message #status_message} => String
1560
+ # * {Types::StopMigrationWorkflowResponse#last_stop_time #last_stop_time} => Time
1561
+ #
1562
+ # @example Request syntax with placeholder values
1563
+ #
1564
+ # resp = client.stop_workflow({
1565
+ # id: "MigrationWorkflowId", # required
1566
+ # })
1567
+ #
1568
+ # @example Response structure
1569
+ #
1570
+ # resp.id #=> String
1571
+ # resp.arn #=> String
1572
+ # resp.status #=> String, one of "CREATING", "NOT_STARTED", "CREATION_FAILED", "STARTING", "IN_PROGRESS", "WORKFLOW_FAILED", "PAUSED", "PAUSING", "PAUSING_FAILED", "USER_ATTENTION_REQUIRED", "DELETING", "DELETION_FAILED", "DELETED", "COMPLETED"
1573
+ # resp.status_message #=> String
1574
+ # resp.last_stop_time #=> Time
1575
+ #
1576
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/StopWorkflow AWS API Documentation
1577
+ #
1578
+ # @overload stop_workflow(params = {})
1579
+ # @param [Hash] params ({})
1580
+ def stop_workflow(params = {}, options = {})
1581
+ req = build_request(:stop_workflow, params)
1582
+ req.send_request(options)
1583
+ end
1584
+
1585
+ # Tag a resource by specifying its Amazon Resource Name (ARN).
1586
+ #
1587
+ # @option params [required, String] :resource_arn
1588
+ # The Amazon Resource Name (ARN) of the resource to which you want to
1589
+ # add tags.
1590
+ #
1591
+ # @option params [required, Hash<String,String>] :tags
1592
+ # A collection of labels, in the form of key:value pairs, that apply to
1593
+ # this resource.
1594
+ #
1595
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1596
+ #
1597
+ # @example Request syntax with placeholder values
1598
+ #
1599
+ # resp = client.tag_resource({
1600
+ # resource_arn: "ResourceArn", # required
1601
+ # tags: { # required
1602
+ # "TagKey" => "TagValue",
1603
+ # },
1604
+ # })
1605
+ #
1606
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/TagResource AWS API Documentation
1607
+ #
1608
+ # @overload tag_resource(params = {})
1609
+ # @param [Hash] params ({})
1610
+ def tag_resource(params = {}, options = {})
1611
+ req = build_request(:tag_resource, params)
1612
+ req.send_request(options)
1613
+ end
1614
+
1615
+ # Deletes the tags for a resource.
1616
+ #
1617
+ # @option params [required, String] :resource_arn
1618
+ # The Amazon Resource Name (ARN) of the resource from which you want to
1619
+ # remove tags.
1620
+ #
1621
+ # @option params [required, Array<String>] :tag_keys
1622
+ # One or more tag keys. Specify only the tag keys, not the tag values.
1623
+ #
1624
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1625
+ #
1626
+ # @example Request syntax with placeholder values
1627
+ #
1628
+ # resp = client.untag_resource({
1629
+ # resource_arn: "ResourceArn", # required
1630
+ # tag_keys: ["TagKey"], # required
1631
+ # })
1632
+ #
1633
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/UntagResource AWS API Documentation
1634
+ #
1635
+ # @overload untag_resource(params = {})
1636
+ # @param [Hash] params ({})
1637
+ def untag_resource(params = {}, options = {})
1638
+ req = build_request(:untag_resource, params)
1639
+ req.send_request(options)
1640
+ end
1641
+
1642
+ # Update a migration workflow.
1643
+ #
1644
+ # @option params [required, String] :id
1645
+ # The ID of the migration workflow.
1646
+ #
1647
+ # @option params [String] :name
1648
+ # The name of the migration workflow.
1649
+ #
1650
+ # @option params [String] :description
1651
+ # The description of the migration workflow.
1652
+ #
1653
+ # @option params [Hash<String,Types::StepInput>] :input_parameters
1654
+ # The input parameters required to update a migration workflow.
1655
+ #
1656
+ # @option params [Array<String>] :step_targets
1657
+ # The servers on which a step will be run.
1658
+ #
1659
+ # @return [Types::UpdateMigrationWorkflowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1660
+ #
1661
+ # * {Types::UpdateMigrationWorkflowResponse#id #id} => String
1662
+ # * {Types::UpdateMigrationWorkflowResponse#arn #arn} => String
1663
+ # * {Types::UpdateMigrationWorkflowResponse#name #name} => String
1664
+ # * {Types::UpdateMigrationWorkflowResponse#description #description} => String
1665
+ # * {Types::UpdateMigrationWorkflowResponse#template_id #template_id} => String
1666
+ # * {Types::UpdateMigrationWorkflowResponse#ads_application_configuration_id #ads_application_configuration_id} => String
1667
+ # * {Types::UpdateMigrationWorkflowResponse#workflow_inputs #workflow_inputs} => Hash&lt;String,Types::StepInput&gt;
1668
+ # * {Types::UpdateMigrationWorkflowResponse#step_targets #step_targets} => Array&lt;String&gt;
1669
+ # * {Types::UpdateMigrationWorkflowResponse#status #status} => String
1670
+ # * {Types::UpdateMigrationWorkflowResponse#creation_time #creation_time} => Time
1671
+ # * {Types::UpdateMigrationWorkflowResponse#last_modified_time #last_modified_time} => Time
1672
+ # * {Types::UpdateMigrationWorkflowResponse#tags #tags} => Hash&lt;String,String&gt;
1673
+ #
1674
+ # @example Request syntax with placeholder values
1675
+ #
1676
+ # resp = client.update_workflow({
1677
+ # id: "MigrationWorkflowId", # required
1678
+ # name: "UpdateMigrationWorkflowRequestNameString",
1679
+ # description: "UpdateMigrationWorkflowRequestDescriptionString",
1680
+ # input_parameters: {
1681
+ # "StepInputParametersKey" => {
1682
+ # integer_value: 1,
1683
+ # string_value: "StringValue",
1684
+ # list_of_strings_value: ["StringListMember"],
1685
+ # map_of_string_value: {
1686
+ # "StringMapKey" => "StringMapValue",
1687
+ # },
1688
+ # },
1689
+ # },
1690
+ # step_targets: ["StringListMember"],
1691
+ # })
1692
+ #
1693
+ # @example Response structure
1694
+ #
1695
+ # resp.id #=> String
1696
+ # resp.arn #=> String
1697
+ # resp.name #=> String
1698
+ # resp.description #=> String
1699
+ # resp.template_id #=> String
1700
+ # resp.ads_application_configuration_id #=> String
1701
+ # resp.workflow_inputs #=> Hash
1702
+ # resp.workflow_inputs["StepInputParametersKey"].integer_value #=> Integer
1703
+ # resp.workflow_inputs["StepInputParametersKey"].string_value #=> String
1704
+ # resp.workflow_inputs["StepInputParametersKey"].list_of_strings_value #=> Array
1705
+ # resp.workflow_inputs["StepInputParametersKey"].list_of_strings_value[0] #=> String
1706
+ # resp.workflow_inputs["StepInputParametersKey"].map_of_string_value #=> Hash
1707
+ # resp.workflow_inputs["StepInputParametersKey"].map_of_string_value["StringMapKey"] #=> String
1708
+ # resp.step_targets #=> Array
1709
+ # resp.step_targets[0] #=> String
1710
+ # resp.status #=> String, one of "CREATING", "NOT_STARTED", "CREATION_FAILED", "STARTING", "IN_PROGRESS", "WORKFLOW_FAILED", "PAUSED", "PAUSING", "PAUSING_FAILED", "USER_ATTENTION_REQUIRED", "DELETING", "DELETION_FAILED", "DELETED", "COMPLETED"
1711
+ # resp.creation_time #=> Time
1712
+ # resp.last_modified_time #=> Time
1713
+ # resp.tags #=> Hash
1714
+ # resp.tags["StringMapKey"] #=> String
1715
+ #
1716
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/UpdateWorkflow AWS API Documentation
1717
+ #
1718
+ # @overload update_workflow(params = {})
1719
+ # @param [Hash] params ({})
1720
+ def update_workflow(params = {}, options = {})
1721
+ req = build_request(:update_workflow, params)
1722
+ req.send_request(options)
1723
+ end
1724
+
1725
+ # Update a step in a migration workflow.
1726
+ #
1727
+ # @option params [required, String] :id
1728
+ # The ID of the step.
1729
+ #
1730
+ # @option params [required, String] :step_group_id
1731
+ # The ID of the step group.
1732
+ #
1733
+ # @option params [required, String] :workflow_id
1734
+ # The ID of the migration workflow.
1735
+ #
1736
+ # @option params [String] :name
1737
+ # The name of the step.
1738
+ #
1739
+ # @option params [String] :description
1740
+ # The description of the step.
1741
+ #
1742
+ # @option params [String] :step_action_type
1743
+ # The action type of the step. You must run and update the status of a
1744
+ # manual step for the workflow to continue after the completion of the
1745
+ # step.
1746
+ #
1747
+ # @option params [Types::WorkflowStepAutomationConfiguration] :workflow_step_automation_configuration
1748
+ # The custom script to run tests on the source and target environments.
1749
+ #
1750
+ # @option params [Array<String>] :step_target
1751
+ # The servers on which a step will be run.
1752
+ #
1753
+ # @option params [Array<Types::WorkflowStepOutput>] :outputs
1754
+ # The outputs of a step.
1755
+ #
1756
+ # @option params [Array<String>] :previous
1757
+ # The previous step.
1758
+ #
1759
+ # @option params [Array<String>] :next
1760
+ # The next step.
1761
+ #
1762
+ # @option params [String] :status
1763
+ # The status of the step.
1764
+ #
1765
+ # @return [Types::UpdateWorkflowStepResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1766
+ #
1767
+ # * {Types::UpdateWorkflowStepResponse#id #id} => String
1768
+ # * {Types::UpdateWorkflowStepResponse#step_group_id #step_group_id} => String
1769
+ # * {Types::UpdateWorkflowStepResponse#workflow_id #workflow_id} => String
1770
+ # * {Types::UpdateWorkflowStepResponse#name #name} => String
1771
+ #
1772
+ # @example Request syntax with placeholder values
1773
+ #
1774
+ # resp = client.update_workflow_step({
1775
+ # id: "StepId", # required
1776
+ # step_group_id: "StepGroupId", # required
1777
+ # workflow_id: "MigrationWorkflowId", # required
1778
+ # name: "StepName",
1779
+ # description: "StepDescription",
1780
+ # step_action_type: "MANUAL", # accepts MANUAL, AUTOMATED
1781
+ # workflow_step_automation_configuration: {
1782
+ # script_location_s3_bucket: "S3Bucket",
1783
+ # script_location_s3_key: {
1784
+ # linux: "S3Key",
1785
+ # windows: "S3Key",
1786
+ # },
1787
+ # command: {
1788
+ # linux: "String",
1789
+ # windows: "String",
1790
+ # },
1791
+ # run_environment: "AWS", # accepts AWS, ONPREMISE
1792
+ # target_type: "SINGLE", # accepts SINGLE, ALL, NONE
1793
+ # },
1794
+ # step_target: ["StringListMember"],
1795
+ # outputs: [
1796
+ # {
1797
+ # name: "WorkflowStepOutputName",
1798
+ # data_type: "STRING", # accepts STRING, INTEGER, STRINGLIST, STRINGMAP
1799
+ # required: false,
1800
+ # value: {
1801
+ # integer_value: 1,
1802
+ # string_value: "StringValue",
1803
+ # list_of_string_value: ["StringListMember"],
1804
+ # },
1805
+ # },
1806
+ # ],
1807
+ # previous: ["StringListMember"],
1808
+ # next: ["StringListMember"],
1809
+ # status: "AWAITING_DEPENDENCIES", # accepts AWAITING_DEPENDENCIES, READY, IN_PROGRESS, COMPLETED, FAILED, PAUSED, USER_ATTENTION_REQUIRED
1810
+ # })
1811
+ #
1812
+ # @example Response structure
1813
+ #
1814
+ # resp.id #=> String
1815
+ # resp.step_group_id #=> String
1816
+ # resp.workflow_id #=> String
1817
+ # resp.name #=> String
1818
+ #
1819
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/UpdateWorkflowStep AWS API Documentation
1820
+ #
1821
+ # @overload update_workflow_step(params = {})
1822
+ # @param [Hash] params ({})
1823
+ def update_workflow_step(params = {}, options = {})
1824
+ req = build_request(:update_workflow_step, params)
1825
+ req.send_request(options)
1826
+ end
1827
+
1828
+ # Update the step group in a migration workflow.
1829
+ #
1830
+ # @option params [required, String] :workflow_id
1831
+ # The ID of the migration workflow.
1832
+ #
1833
+ # @option params [required, String] :id
1834
+ # The ID of the step group.
1835
+ #
1836
+ # @option params [String] :name
1837
+ # The name of the step group.
1838
+ #
1839
+ # @option params [String] :description
1840
+ # The description of the step group.
1841
+ #
1842
+ # @option params [Array<String>] :next
1843
+ # The next step group.
1844
+ #
1845
+ # @option params [Array<String>] :previous
1846
+ # The previous step group.
1847
+ #
1848
+ # @return [Types::UpdateWorkflowStepGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1849
+ #
1850
+ # * {Types::UpdateWorkflowStepGroupResponse#workflow_id #workflow_id} => String
1851
+ # * {Types::UpdateWorkflowStepGroupResponse#name #name} => String
1852
+ # * {Types::UpdateWorkflowStepGroupResponse#id #id} => String
1853
+ # * {Types::UpdateWorkflowStepGroupResponse#description #description} => String
1854
+ # * {Types::UpdateWorkflowStepGroupResponse#tools #tools} => Array&lt;Types::Tool&gt;
1855
+ # * {Types::UpdateWorkflowStepGroupResponse#next #next} => Array&lt;String&gt;
1856
+ # * {Types::UpdateWorkflowStepGroupResponse#previous #previous} => Array&lt;String&gt;
1857
+ # * {Types::UpdateWorkflowStepGroupResponse#last_modified_time #last_modified_time} => Time
1858
+ #
1859
+ # @example Request syntax with placeholder values
1860
+ #
1861
+ # resp = client.update_workflow_step_group({
1862
+ # workflow_id: "MigrationWorkflowId", # required
1863
+ # id: "StepGroupId", # required
1864
+ # name: "StepGroupName",
1865
+ # description: "StepGroupDescription",
1866
+ # next: ["StringListMember"],
1867
+ # previous: ["StringListMember"],
1868
+ # })
1869
+ #
1870
+ # @example Response structure
1871
+ #
1872
+ # resp.workflow_id #=> String
1873
+ # resp.name #=> String
1874
+ # resp.id #=> String
1875
+ # resp.description #=> String
1876
+ # resp.tools #=> Array
1877
+ # resp.tools[0].name #=> String
1878
+ # resp.tools[0].url #=> String
1879
+ # resp.next #=> Array
1880
+ # resp.next[0] #=> String
1881
+ # resp.previous #=> Array
1882
+ # resp.previous[0] #=> String
1883
+ # resp.last_modified_time #=> Time
1884
+ #
1885
+ # @see http://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/UpdateWorkflowStepGroup AWS API Documentation
1886
+ #
1887
+ # @overload update_workflow_step_group(params = {})
1888
+ # @param [Hash] params ({})
1889
+ def update_workflow_step_group(params = {}, options = {})
1890
+ req = build_request(:update_workflow_step_group, params)
1891
+ req.send_request(options)
1892
+ end
1893
+
1894
+ # @!endgroup
1895
+
1896
+ # @param params ({})
1897
+ # @api private
1898
+ def build_request(operation_name, params = {})
1899
+ handlers = @handlers.for(operation_name)
1900
+ context = Seahorse::Client::RequestContext.new(
1901
+ operation_name: operation_name,
1902
+ operation: config.api.operation(operation_name),
1903
+ client: self,
1904
+ params: params,
1905
+ config: config)
1906
+ context[:gem_name] = 'aws-sdk-migrationhuborchestrator'
1907
+ context[:gem_version] = '1.0.0'
1908
+ Seahorse::Client::Request.new(handlers, context)
1909
+ end
1910
+
1911
+ # @api private
1912
+ # @deprecated
1913
+ def waiter_names
1914
+ []
1915
+ end
1916
+
1917
+ class << self
1918
+
1919
+ # @api private
1920
+ attr_reader :identifier
1921
+
1922
+ # @api private
1923
+ def errors_module
1924
+ Errors
1925
+ end
1926
+
1927
+ end
1928
+ end
1929
+ end