aws-sdk-mgn 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 020f5c76870f080c6a85ee757d9937a4f73014fec4bb00f1994c409c5925f9a1
4
+ data.tar.gz: 4d0cc8dcfb47de1e4190d606e296b3dbf08195053187fc03811d5f9874b97902
5
+ SHA512:
6
+ metadata.gz: d6c5e832618a9914b43ef12a10512cd3229c28f33b7c1f67d7cb58b3e372707e224cac7ee180aba78e0a8a49c53c39b378cc7ca8487b4f67a9899e0909eb476a
7
+ data.tar.gz: 01302420ff2f07b6a03cc39ec2e881f767947071334ce506f8a96ab786d7317bdd998a4df79dd010f07f0b16e31cf526f10fc156b8079bfb6e9aa32d604ad25a
data/CHANGELOG.md ADDED
@@ -0,0 +1,8 @@
1
+ Unreleased Changes
2
+ ------------------
3
+
4
+ 1.0.0 (2021-04-07)
5
+ ------------------
6
+
7
+ * Feature - Initial release of `aws-sdk-mgn`.
8
+
data/LICENSE.txt ADDED
@@ -0,0 +1,202 @@
1
+
2
+ Apache License
3
+ Version 2.0, January 2004
4
+ http://www.apache.org/licenses/
5
+
6
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
7
+
8
+ 1. Definitions.
9
+
10
+ "License" shall mean the terms and conditions for use, reproduction,
11
+ and distribution as defined by Sections 1 through 9 of this document.
12
+
13
+ "Licensor" shall mean the copyright owner or entity authorized by
14
+ the copyright owner that is granting the License.
15
+
16
+ "Legal Entity" shall mean the union of the acting entity and all
17
+ other entities that control, are controlled by, or are under common
18
+ control with that entity. For the purposes of this definition,
19
+ "control" means (i) the power, direct or indirect, to cause the
20
+ direction or management of such entity, whether by contract or
21
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
22
+ outstanding shares, or (iii) beneficial ownership of such entity.
23
+
24
+ "You" (or "Your") shall mean an individual or Legal Entity
25
+ exercising permissions granted by this License.
26
+
27
+ "Source" form shall mean the preferred form for making modifications,
28
+ including but not limited to software source code, documentation
29
+ source, and configuration files.
30
+
31
+ "Object" form shall mean any form resulting from mechanical
32
+ transformation or translation of a Source form, including but
33
+ not limited to compiled object code, generated documentation,
34
+ and conversions to other media types.
35
+
36
+ "Work" shall mean the work of authorship, whether in Source or
37
+ Object form, made available under the License, as indicated by a
38
+ copyright notice that is included in or attached to the work
39
+ (an example is provided in the Appendix below).
40
+
41
+ "Derivative Works" shall mean any work, whether in Source or Object
42
+ form, that is based on (or derived from) the Work and for which the
43
+ editorial revisions, annotations, elaborations, or other modifications
44
+ represent, as a whole, an original work of authorship. For the purposes
45
+ of this License, Derivative Works shall not include works that remain
46
+ separable from, or merely link (or bind by name) to the interfaces of,
47
+ the Work and Derivative Works thereof.
48
+
49
+ "Contribution" shall mean any work of authorship, including
50
+ the original version of the Work and any modifications or additions
51
+ to that Work or Derivative Works thereof, that is intentionally
52
+ submitted to Licensor for inclusion in the Work by the copyright owner
53
+ or by an individual or Legal Entity authorized to submit on behalf of
54
+ the copyright owner. For the purposes of this definition, "submitted"
55
+ means any form of electronic, verbal, or written communication sent
56
+ to the Licensor or its representatives, including but not limited to
57
+ communication on electronic mailing lists, source code control systems,
58
+ and issue tracking systems that are managed by, or on behalf of, the
59
+ Licensor for the purpose of discussing and improving the Work, but
60
+ excluding communication that is conspicuously marked or otherwise
61
+ designated in writing by the copyright owner as "Not a Contribution."
62
+
63
+ "Contributor" shall mean Licensor and any individual or Legal Entity
64
+ on behalf of whom a Contribution has been received by Licensor and
65
+ subsequently incorporated within the Work.
66
+
67
+ 2. Grant of Copyright License. Subject to the terms and conditions of
68
+ this License, each Contributor hereby grants to You a perpetual,
69
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
70
+ copyright license to reproduce, prepare Derivative Works of,
71
+ publicly display, publicly perform, sublicense, and distribute the
72
+ Work and such Derivative Works in Source or Object form.
73
+
74
+ 3. Grant of Patent License. Subject to the terms and conditions of
75
+ this License, each Contributor hereby grants to You a perpetual,
76
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
77
+ (except as stated in this section) patent license to make, have made,
78
+ use, offer to sell, sell, import, and otherwise transfer the Work,
79
+ where such license applies only to those patent claims licensable
80
+ by such Contributor that are necessarily infringed by their
81
+ Contribution(s) alone or by combination of their Contribution(s)
82
+ with the Work to which such Contribution(s) was submitted. If You
83
+ institute patent litigation against any entity (including a
84
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
85
+ or a Contribution incorporated within the Work constitutes direct
86
+ or contributory patent infringement, then any patent licenses
87
+ granted to You under this License for that Work shall terminate
88
+ as of the date such litigation is filed.
89
+
90
+ 4. Redistribution. You may reproduce and distribute copies of the
91
+ Work or Derivative Works thereof in any medium, with or without
92
+ modifications, and in Source or Object form, provided that You
93
+ meet the following conditions:
94
+
95
+ (a) You must give any other recipients of the Work or
96
+ Derivative Works a copy of this License; and
97
+
98
+ (b) You must cause any modified files to carry prominent notices
99
+ stating that You changed the files; and
100
+
101
+ (c) You must retain, in the Source form of any Derivative Works
102
+ that You distribute, all copyright, patent, trademark, and
103
+ attribution notices from the Source form of the Work,
104
+ excluding those notices that do not pertain to any part of
105
+ the Derivative Works; and
106
+
107
+ (d) If the Work includes a "NOTICE" text file as part of its
108
+ distribution, then any Derivative Works that You distribute must
109
+ include a readable copy of the attribution notices contained
110
+ within such NOTICE file, excluding those notices that do not
111
+ pertain to any part of the Derivative Works, in at least one
112
+ of the following places: within a NOTICE text file distributed
113
+ as part of the Derivative Works; within the Source form or
114
+ documentation, if provided along with the Derivative Works; or,
115
+ within a display generated by the Derivative Works, if and
116
+ wherever such third-party notices normally appear. The contents
117
+ of the NOTICE file are for informational purposes only and
118
+ do not modify the License. You may add Your own attribution
119
+ notices within Derivative Works that You distribute, alongside
120
+ or as an addendum to the NOTICE text from the Work, provided
121
+ that such additional attribution notices cannot be construed
122
+ as modifying the License.
123
+
124
+ You may add Your own copyright statement to Your modifications and
125
+ may provide additional or different license terms and conditions
126
+ for use, reproduction, or distribution of Your modifications, or
127
+ for any such Derivative Works as a whole, provided Your use,
128
+ reproduction, and distribution of the Work otherwise complies with
129
+ the conditions stated in this License.
130
+
131
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
132
+ any Contribution intentionally submitted for inclusion in the Work
133
+ by You to the Licensor shall be under the terms and conditions of
134
+ this License, without any additional terms or conditions.
135
+ Notwithstanding the above, nothing herein shall supersede or modify
136
+ the terms of any separate license agreement you may have executed
137
+ with Licensor regarding such Contributions.
138
+
139
+ 6. Trademarks. This License does not grant permission to use the trade
140
+ names, trademarks, service marks, or product names of the Licensor,
141
+ except as required for reasonable and customary use in describing the
142
+ origin of the Work and reproducing the content of the NOTICE file.
143
+
144
+ 7. Disclaimer of Warranty. Unless required by applicable law or
145
+ agreed to in writing, Licensor provides the Work (and each
146
+ Contributor provides its Contributions) on an "AS IS" BASIS,
147
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
148
+ implied, including, without limitation, any warranties or conditions
149
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
150
+ PARTICULAR PURPOSE. You are solely responsible for determining the
151
+ appropriateness of using or redistributing the Work and assume any
152
+ risks associated with Your exercise of permissions under this License.
153
+
154
+ 8. Limitation of Liability. In no event and under no legal theory,
155
+ whether in tort (including negligence), contract, or otherwise,
156
+ unless required by applicable law (such as deliberate and grossly
157
+ negligent acts) or agreed to in writing, shall any Contributor be
158
+ liable to You for damages, including any direct, indirect, special,
159
+ incidental, or consequential damages of any character arising as a
160
+ result of this License or out of the use or inability to use the
161
+ Work (including but not limited to damages for loss of goodwill,
162
+ work stoppage, computer failure or malfunction, or any and all
163
+ other commercial damages or losses), even if such Contributor
164
+ has been advised of the possibility of such damages.
165
+
166
+ 9. Accepting Warranty or Additional Liability. While redistributing
167
+ the Work or Derivative Works thereof, You may choose to offer,
168
+ and charge a fee for, acceptance of support, warranty, indemnity,
169
+ or other liability obligations and/or rights consistent with this
170
+ License. However, in accepting such obligations, You may act only
171
+ on Your own behalf and on Your sole responsibility, not on behalf
172
+ of any other Contributor, and only if You agree to indemnify,
173
+ defend, and hold each Contributor harmless for any liability
174
+ incurred by, or claims asserted against, such Contributor by reason
175
+ of your accepting any such warranty or additional liability.
176
+
177
+ END OF TERMS AND CONDITIONS
178
+
179
+ APPENDIX: How to apply the Apache License to your work.
180
+
181
+ To apply the Apache License to your work, attach the following
182
+ boilerplate notice, with the fields enclosed by brackets "[]"
183
+ replaced with your own identifying information. (Don't include
184
+ the brackets!) The text should be enclosed in the appropriate
185
+ comment syntax for the file format. We also recommend that a
186
+ file or class name and description of purpose be included on the
187
+ same "printed page" as the copyright notice for easier
188
+ identification within third-party archives.
189
+
190
+ Copyright [yyyy] [name of copyright owner]
191
+
192
+ Licensed under the Apache License, Version 2.0 (the "License");
193
+ you may not use this file except in compliance with the License.
194
+ You may obtain a copy of the License at
195
+
196
+ http://www.apache.org/licenses/LICENSE-2.0
197
+
198
+ Unless required by applicable law or agreed to in writing, software
199
+ distributed under the License is distributed on an "AS IS" BASIS,
200
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
201
+ See the License for the specific language governing permissions and
202
+ limitations under the License.
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.0.0
@@ -0,0 +1,53 @@
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
+
11
+ require 'aws-sdk-core'
12
+ require 'aws-sigv4'
13
+
14
+ require_relative 'aws-sdk-mgn/types'
15
+ require_relative 'aws-sdk-mgn/client_api'
16
+ require_relative 'aws-sdk-mgn/client'
17
+ require_relative 'aws-sdk-mgn/errors'
18
+ require_relative 'aws-sdk-mgn/resource'
19
+ require_relative 'aws-sdk-mgn/customizations'
20
+
21
+ # This module provides support for Application Migration Service. This module is available in the
22
+ # `aws-sdk-mgn` gem.
23
+ #
24
+ # # Client
25
+ #
26
+ # The {Client} class provides one method for each API operation. Operation
27
+ # methods each accept a hash of request parameters and return a response
28
+ # structure.
29
+ #
30
+ # mgn = Aws::Mgn::Client.new
31
+ # resp = mgn.change_server_life_cycle_state(params)
32
+ #
33
+ # See {Client} for more information.
34
+ #
35
+ # # Errors
36
+ #
37
+ # Errors returned from Application Migration Service are defined in the
38
+ # {Errors} module and all extend {Errors::ServiceError}.
39
+ #
40
+ # begin
41
+ # # do stuff
42
+ # rescue Aws::Mgn::Errors::ServiceError
43
+ # # rescues all Application Migration Service API errors
44
+ # end
45
+ #
46
+ # See {Errors} for more information.
47
+ #
48
+ # @!group service
49
+ module Aws::Mgn
50
+
51
+ GEM_VERSION = '1.0.0'
52
+
53
+ end
@@ -0,0 +1,1983 @@
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/signature_v4.rb'
31
+ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
32
+
33
+ Aws::Plugins::GlobalConfiguration.add_identifier(:mgn)
34
+
35
+ module Aws::Mgn
36
+ # An API client for Mgn. To construct a client, you need to configure a `:region` and `:credentials`.
37
+ #
38
+ # client = Aws::Mgn::Client.new(
39
+ # region: region_name,
40
+ # credentials: credentials,
41
+ # # ...
42
+ # )
43
+ #
44
+ # For details on configuring region and credentials see
45
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
46
+ #
47
+ # See {#initialize} for a full list of supported configuration options.
48
+ class Client < Seahorse::Client::Base
49
+
50
+ include Aws::ClientStubs
51
+
52
+ @identifier = :mgn
53
+
54
+ set_api(ClientApi::API)
55
+
56
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
57
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
58
+ add_plugin(Aws::Plugins::Logging)
59
+ add_plugin(Aws::Plugins::ParamConverter)
60
+ add_plugin(Aws::Plugins::ParamValidator)
61
+ add_plugin(Aws::Plugins::UserAgent)
62
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
63
+ add_plugin(Aws::Plugins::RetryErrors)
64
+ add_plugin(Aws::Plugins::GlobalConfiguration)
65
+ add_plugin(Aws::Plugins::RegionalEndpoint)
66
+ add_plugin(Aws::Plugins::EndpointDiscovery)
67
+ add_plugin(Aws::Plugins::EndpointPattern)
68
+ add_plugin(Aws::Plugins::ResponsePaging)
69
+ add_plugin(Aws::Plugins::StubResponses)
70
+ add_plugin(Aws::Plugins::IdempotencyToken)
71
+ add_plugin(Aws::Plugins::JsonvalueConverter)
72
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
73
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
74
+ add_plugin(Aws::Plugins::TransferEncoding)
75
+ add_plugin(Aws::Plugins::HttpChecksum)
76
+ add_plugin(Aws::Plugins::SignatureV4)
77
+ add_plugin(Aws::Plugins::Protocols::RestJson)
78
+
79
+ # @overload initialize(options)
80
+ # @param [Hash] options
81
+ # @option options [required, Aws::CredentialProvider] :credentials
82
+ # Your AWS credentials. This can be an instance of any one of the
83
+ # following classes:
84
+ #
85
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
86
+ # credentials.
87
+ #
88
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
89
+ # shared file, such as `~/.aws/config`.
90
+ #
91
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
92
+ #
93
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
94
+ # assume a role after providing credentials via the web.
95
+ #
96
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
97
+ # access token generated from `aws login`.
98
+ #
99
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
100
+ # process that outputs to stdout.
101
+ #
102
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
103
+ # from an EC2 IMDS on an EC2 instance.
104
+ #
105
+ # * `Aws::ECSCredentials` - Used for loading credentials from
106
+ # instances running in ECS.
107
+ #
108
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
109
+ # from the Cognito Identity service.
110
+ #
111
+ # When `:credentials` are not configured directly, the following
112
+ # locations will be searched for credentials:
113
+ #
114
+ # * `Aws.config[:credentials]`
115
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
116
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
117
+ # * `~/.aws/credentials`
118
+ # * `~/.aws/config`
119
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
+ # are very aggressive. Construct and pass an instance of
121
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
+ # enable retries and extended timeouts.
123
+ #
124
+ # @option options [required, String] :region
125
+ # The AWS region to connect to. The configured `:region` is
126
+ # used to determine the service `:endpoint`. When not passed,
127
+ # a default `:region` is searched for in the following locations:
128
+ #
129
+ # * `Aws.config[:region]`
130
+ # * `ENV['AWS_REGION']`
131
+ # * `ENV['AMAZON_REGION']`
132
+ # * `ENV['AWS_DEFAULT_REGION']`
133
+ # * `~/.aws/credentials`
134
+ # * `~/.aws/config`
135
+ #
136
+ # @option options [String] :access_key_id
137
+ #
138
+ # @option options [Boolean] :active_endpoint_cache (false)
139
+ # When set to `true`, a thread polling for endpoints will be running in
140
+ # the background every 60 secs (default). Defaults to `false`.
141
+ #
142
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
143
+ # Used only in `adaptive` retry mode. When true, the request will sleep
144
+ # until there is sufficent client side capacity to retry the request.
145
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
146
+ # not retry instead of sleeping.
147
+ #
148
+ # @option options [Boolean] :client_side_monitoring (false)
149
+ # When `true`, client-side metrics will be collected for all API requests from
150
+ # this client.
151
+ #
152
+ # @option options [String] :client_side_monitoring_client_id ("")
153
+ # Allows you to provide an identifier for this client which will be attached to
154
+ # all generated client side metrics. Defaults to an empty string.
155
+ #
156
+ # @option options [String] :client_side_monitoring_host ("127.0.0.1")
157
+ # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
158
+ # side monitoring agent is running on, where client metrics will be published via UDP.
159
+ #
160
+ # @option options [Integer] :client_side_monitoring_port (31000)
161
+ # Required for publishing client metrics. The port that the client side monitoring
162
+ # agent is running on, where client metrics will be published via UDP.
163
+ #
164
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
165
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
166
+ # will use the Client Side Monitoring Agent Publisher.
167
+ #
168
+ # @option options [Boolean] :convert_params (true)
169
+ # When `true`, an attempt is made to coerce request parameters into
170
+ # the required types.
171
+ #
172
+ # @option options [Boolean] :correct_clock_skew (true)
173
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
174
+ # a clock skew correction and retry requests with skewed client clocks.
175
+ #
176
+ # @option options [Boolean] :disable_host_prefix_injection (false)
177
+ # Set to true to disable SDK automatically adding host prefix
178
+ # to default service endpoint when available.
179
+ #
180
+ # @option options [String] :endpoint
181
+ # The client endpoint is normally constructed from the `:region`
182
+ # option. You should only configure an `:endpoint` when connecting
183
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
184
+ #
185
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
186
+ # Used for the maximum size limit of the LRU cache storing endpoints data
187
+ # for endpoint discovery enabled operations. Defaults to 1000.
188
+ #
189
+ # @option options [Integer] :endpoint_cache_max_threads (10)
190
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
191
+ #
192
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
193
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
194
+ # Use this option to config the time interval in seconds for making
195
+ # requests fetching endpoints information. Defaults to 60 sec.
196
+ #
197
+ # @option options [Boolean] :endpoint_discovery (false)
198
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
199
+ #
200
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
201
+ # The log formatter.
202
+ #
203
+ # @option options [Symbol] :log_level (:info)
204
+ # The log level to send messages to the `:logger` at.
205
+ #
206
+ # @option options [Logger] :logger
207
+ # The Logger instance to send log messages to. If this option
208
+ # is not set, logging will be disabled.
209
+ #
210
+ # @option options [Integer] :max_attempts (3)
211
+ # An integer representing the maximum number attempts that will be made for
212
+ # a single request, including the initial attempt. For example,
213
+ # setting this value to 5 will result in a request being retried up to
214
+ # 4 times. Used in `standard` and `adaptive` retry modes.
215
+ #
216
+ # @option options [String] :profile ("default")
217
+ # Used when loading credentials from the shared credentials file
218
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
219
+ #
220
+ # @option options [Proc] :retry_backoff
221
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
222
+ # This option is only used in the `legacy` retry mode.
223
+ #
224
+ # @option options [Float] :retry_base_delay (0.3)
225
+ # The base delay in seconds used by the default backoff function. This option
226
+ # is only used in the `legacy` retry mode.
227
+ #
228
+ # @option options [Symbol] :retry_jitter (:none)
229
+ # A delay randomiser function used by the default backoff function.
230
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
231
+ # otherwise a Proc that takes and returns a number. This option is only used
232
+ # in the `legacy` retry mode.
233
+ #
234
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
235
+ #
236
+ # @option options [Integer] :retry_limit (3)
237
+ # The maximum number of times to retry failed requests. Only
238
+ # ~ 500 level server errors and certain ~ 400 level client errors
239
+ # are retried. Generally, these are throttling errors, data
240
+ # checksum errors, networking errors, timeout errors, auth errors,
241
+ # endpoint discovery, and errors from expired credentials.
242
+ # This option is only used in the `legacy` retry mode.
243
+ #
244
+ # @option options [Integer] :retry_max_delay (0)
245
+ # The maximum number of seconds to delay between retries (0 for no limit)
246
+ # used by the default backoff function. This option is only used in the
247
+ # `legacy` retry mode.
248
+ #
249
+ # @option options [String] :retry_mode ("legacy")
250
+ # Specifies which retry algorithm to use. Values are:
251
+ #
252
+ # * `legacy` - The pre-existing retry behavior. This is default value if
253
+ # no retry mode is provided.
254
+ #
255
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
256
+ # This includes support for retry quotas, which limit the number of
257
+ # unsuccessful retries a client can make.
258
+ #
259
+ # * `adaptive` - An experimental retry mode that includes all the
260
+ # functionality of `standard` mode along with automatic client side
261
+ # throttling. This is a provisional mode that may change behavior
262
+ # in the future.
263
+ #
264
+ #
265
+ # @option options [String] :secret_access_key
266
+ #
267
+ # @option options [String] :session_token
268
+ #
269
+ # @option options [Boolean] :stub_responses (false)
270
+ # Causes the client to return stubbed responses. By default
271
+ # fake responses are generated and returned. You can specify
272
+ # the response data to return or errors to raise by calling
273
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
274
+ #
275
+ # ** Please note ** When response stubbing is enabled, no HTTP
276
+ # requests are made, and retries are disabled.
277
+ #
278
+ # @option options [Boolean] :validate_params (true)
279
+ # When `true`, request parameters are validated before
280
+ # sending the request.
281
+ #
282
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
283
+ # requests through. Formatted like 'http://proxy.com:123'.
284
+ #
285
+ # @option options [Float] :http_open_timeout (15) The number of
286
+ # seconds to wait when opening a HTTP session before raising a
287
+ # `Timeout::Error`.
288
+ #
289
+ # @option options [Integer] :http_read_timeout (60) The default
290
+ # number of seconds to wait for response data. This value can
291
+ # safely be set per-request on the session.
292
+ #
293
+ # @option options [Float] :http_idle_timeout (5) The number of
294
+ # seconds a connection is allowed to sit idle before it is
295
+ # considered stale. Stale connections are closed and removed
296
+ # from the pool before making a request.
297
+ #
298
+ # @option options [Float] :http_continue_timeout (1) The number of
299
+ # seconds to wait for a 100-continue response before sending the
300
+ # request body. This option has no effect unless the request has
301
+ # "Expect" header set to "100-continue". Defaults to `nil` which
302
+ # disables this behaviour. This value can safely be set per
303
+ # request on the session.
304
+ #
305
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
306
+ # HTTP debug output will be sent to the `:logger`.
307
+ #
308
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
309
+ # SSL peer certificates are verified when establishing a
310
+ # connection.
311
+ #
312
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
313
+ # certificate authority bundle file that should be used when
314
+ # verifying peer certificates. If you do not pass
315
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
316
+ # will be used if available.
317
+ #
318
+ # @option options [String] :ssl_ca_directory Full path of the
319
+ # directory that contains the unbundled SSL certificate
320
+ # authority files for verifying peer certificates. If you do
321
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
322
+ # system default will be used if available.
323
+ #
324
+ def initialize(*args)
325
+ super
326
+ end
327
+
328
+ # @!group API Operations
329
+
330
+ # Allows the user to set the SourceServer.LifeCycle.state property for
331
+ # specific Source Server IDs to one of the following: READY\_FOR\_TEST
332
+ # or READY\_FOR\_CUTOVER. This command only works if the Source Server
333
+ # is already launchable (dataReplicationInfo.lagDuration is not null.)
334
+ #
335
+ # @option params [required, Types::ChangeServerLifeCycleStateSourceServerLifecycle] :life_cycle
336
+ # The request to change the source server migration lifecycle state.
337
+ #
338
+ # @option params [required, String] :source_server_id
339
+ # The request to change the source server migration lifecycle state by
340
+ # source server ID.
341
+ #
342
+ # @return [Types::SourceServer] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
343
+ #
344
+ # * {Types::SourceServer#arn #arn} => String
345
+ # * {Types::SourceServer#data_replication_info #data_replication_info} => Types::DataReplicationInfo
346
+ # * {Types::SourceServer#is_archived #is_archived} => Boolean
347
+ # * {Types::SourceServer#launched_instance #launched_instance} => Types::LaunchedInstance
348
+ # * {Types::SourceServer#life_cycle #life_cycle} => Types::LifeCycle
349
+ # * {Types::SourceServer#source_properties #source_properties} => Types::SourceProperties
350
+ # * {Types::SourceServer#source_server_id #source_server_id} => String
351
+ # * {Types::SourceServer#tags #tags} => Hash&lt;String,String&gt;
352
+ #
353
+ # @example Request syntax with placeholder values
354
+ #
355
+ # resp = client.change_server_life_cycle_state({
356
+ # life_cycle: { # required
357
+ # state: "READY_FOR_TEST", # required, accepts READY_FOR_TEST, READY_FOR_CUTOVER, CUTOVER
358
+ # },
359
+ # source_server_id: "SourceServerID", # required
360
+ # })
361
+ #
362
+ # @example Response structure
363
+ #
364
+ # resp.arn #=> String
365
+ # resp.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER"
366
+ # resp.data_replication_info.data_replication_error.raw_error #=> String
367
+ # resp.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
368
+ # resp.data_replication_info.data_replication_initiation.start_date_time #=> String
369
+ # resp.data_replication_info.data_replication_initiation.steps #=> Array
370
+ # resp.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER"
371
+ # resp.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
372
+ # resp.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED"
373
+ # resp.data_replication_info.eta_date_time #=> String
374
+ # resp.data_replication_info.lag_duration #=> String
375
+ # resp.data_replication_info.replicated_disks #=> Array
376
+ # resp.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
377
+ # resp.data_replication_info.replicated_disks[0].device_name #=> String
378
+ # resp.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
379
+ # resp.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
380
+ # resp.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
381
+ # resp.is_archived #=> Boolean
382
+ # resp.launched_instance.ec2_instance_id #=> String
383
+ # resp.launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
384
+ # resp.launched_instance.job_id #=> String
385
+ # resp.life_cycle.added_to_service_date_time #=> String
386
+ # resp.life_cycle.elapsed_replication_duration #=> String
387
+ # resp.life_cycle.first_byte_date_time #=> String
388
+ # resp.life_cycle.last_cutover.finalized.api_call_date_time #=> String
389
+ # resp.life_cycle.last_cutover.initiated.api_call_date_time #=> String
390
+ # resp.life_cycle.last_cutover.initiated.job_id #=> String
391
+ # resp.life_cycle.last_cutover.reverted.api_call_date_time #=> String
392
+ # resp.life_cycle.last_seen_by_service_date_time #=> String
393
+ # resp.life_cycle.last_test.finalized.api_call_date_time #=> String
394
+ # resp.life_cycle.last_test.initiated.api_call_date_time #=> String
395
+ # resp.life_cycle.last_test.initiated.job_id #=> String
396
+ # resp.life_cycle.last_test.reverted.api_call_date_time #=> String
397
+ # resp.life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED"
398
+ # resp.source_properties.cpus #=> Array
399
+ # resp.source_properties.cpus[0].cores #=> Integer
400
+ # resp.source_properties.cpus[0].model_name #=> String
401
+ # resp.source_properties.disks #=> Array
402
+ # resp.source_properties.disks[0].bytes #=> Integer
403
+ # resp.source_properties.disks[0].device_name #=> String
404
+ # resp.source_properties.identification_hints.aws_instance_id #=> String
405
+ # resp.source_properties.identification_hints.fqdn #=> String
406
+ # resp.source_properties.identification_hints.hostname #=> String
407
+ # resp.source_properties.identification_hints.vm_ware_uuid #=> String
408
+ # resp.source_properties.last_updated_date_time #=> String
409
+ # resp.source_properties.network_interfaces #=> Array
410
+ # resp.source_properties.network_interfaces[0].ips #=> Array
411
+ # resp.source_properties.network_interfaces[0].ips[0] #=> String
412
+ # resp.source_properties.network_interfaces[0].is_primary #=> Boolean
413
+ # resp.source_properties.network_interfaces[0].mac_address #=> String
414
+ # resp.source_properties.os.full_string #=> String
415
+ # resp.source_properties.ram_bytes #=> Integer
416
+ # resp.source_properties.recommended_instance_type #=> String
417
+ # resp.source_server_id #=> String
418
+ # resp.tags #=> Hash
419
+ # resp.tags["TagKey"] #=> String
420
+ #
421
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/ChangeServerLifeCycleState AWS API Documentation
422
+ #
423
+ # @overload change_server_life_cycle_state(params = {})
424
+ # @param [Hash] params ({})
425
+ def change_server_life_cycle_state(params = {}, options = {})
426
+ req = build_request(:change_server_life_cycle_state, params)
427
+ req.send_request(options)
428
+ end
429
+
430
+ # Creates a new ReplicationConfigurationTemplate.
431
+ #
432
+ # @option params [required, Boolean] :associate_default_security_group
433
+ # Request to associate the default Application Migration Service
434
+ # Security group with the Replication Settings template.
435
+ #
436
+ # @option params [required, Integer] :bandwidth_throttling
437
+ # Request to configure bandwidth throttling during Replication Settings
438
+ # template creation.
439
+ #
440
+ # @option params [required, Boolean] :create_public_ip
441
+ # Request to create Public IP during Replication Settings template
442
+ # creation.
443
+ #
444
+ # @option params [required, String] :data_plane_routing
445
+ # Request to configure data plane routing during Replication Settings
446
+ # template creation.
447
+ #
448
+ # @option params [required, String] :default_large_staging_disk_type
449
+ # Request to configure the Staging Disk EBS volume type to "gp2"
450
+ # during Replication Settings template creation.
451
+ #
452
+ # @option params [required, String] :ebs_encryption
453
+ # Request to configure EBS enryption during Replication Settings
454
+ # template creation.
455
+ #
456
+ # @option params [String] :ebs_encryption_key_arn
457
+ # Request to configure an EBS enryption key during Replication Settings
458
+ # template creation.
459
+ #
460
+ # @option params [required, String] :replication_server_instance_type
461
+ # Request to configure the Replication Server instance type during
462
+ # Replication Settings template creation.
463
+ #
464
+ # @option params [required, Array<String>] :replication_servers_security_groups_i_ds
465
+ # Request to configure the Replication Server Secuirity group ID during
466
+ # Replication Settings template creation.
467
+ #
468
+ # @option params [required, String] :staging_area_subnet_id
469
+ # Request to configure the Staging Area subnet ID during Replication
470
+ # Settings template creation.
471
+ #
472
+ # @option params [required, Hash<String,String>] :staging_area_tags
473
+ # Request to configure Staiging Area tags during Replication Settings
474
+ # template creation.
475
+ #
476
+ # @option params [Hash<String,String>] :tags
477
+ # Request to configure tags during Replication Settings template
478
+ # creation.
479
+ #
480
+ # @option params [required, Boolean] :use_dedicated_replication_server
481
+ # Request to use Dedicated Replication Servers during Replication
482
+ # Settings template creation.
483
+ #
484
+ # @return [Types::ReplicationConfigurationTemplate] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
485
+ #
486
+ # * {Types::ReplicationConfigurationTemplate#arn #arn} => String
487
+ # * {Types::ReplicationConfigurationTemplate#associate_default_security_group #associate_default_security_group} => Boolean
488
+ # * {Types::ReplicationConfigurationTemplate#bandwidth_throttling #bandwidth_throttling} => Integer
489
+ # * {Types::ReplicationConfigurationTemplate#create_public_ip #create_public_ip} => Boolean
490
+ # * {Types::ReplicationConfigurationTemplate#data_plane_routing #data_plane_routing} => String
491
+ # * {Types::ReplicationConfigurationTemplate#default_large_staging_disk_type #default_large_staging_disk_type} => String
492
+ # * {Types::ReplicationConfigurationTemplate#ebs_encryption #ebs_encryption} => String
493
+ # * {Types::ReplicationConfigurationTemplate#ebs_encryption_key_arn #ebs_encryption_key_arn} => String
494
+ # * {Types::ReplicationConfigurationTemplate#replication_configuration_template_id #replication_configuration_template_id} => String
495
+ # * {Types::ReplicationConfigurationTemplate#replication_server_instance_type #replication_server_instance_type} => String
496
+ # * {Types::ReplicationConfigurationTemplate#replication_servers_security_groups_i_ds #replication_servers_security_groups_i_ds} => Array&lt;String&gt;
497
+ # * {Types::ReplicationConfigurationTemplate#staging_area_subnet_id #staging_area_subnet_id} => String
498
+ # * {Types::ReplicationConfigurationTemplate#staging_area_tags #staging_area_tags} => Hash&lt;String,String&gt;
499
+ # * {Types::ReplicationConfigurationTemplate#tags #tags} => Hash&lt;String,String&gt;
500
+ # * {Types::ReplicationConfigurationTemplate#use_dedicated_replication_server #use_dedicated_replication_server} => Boolean
501
+ #
502
+ # @example Request syntax with placeholder values
503
+ #
504
+ # resp = client.create_replication_configuration_template({
505
+ # associate_default_security_group: false, # required
506
+ # bandwidth_throttling: 1, # required
507
+ # create_public_ip: false, # required
508
+ # data_plane_routing: "PRIVATE_IP", # required, accepts PRIVATE_IP, PUBLIC_IP
509
+ # default_large_staging_disk_type: "GP2", # required, accepts GP2, ST1
510
+ # ebs_encryption: "NONE", # required, accepts NONE, DEFAULT, CUSTOM
511
+ # ebs_encryption_key_arn: "ARN",
512
+ # replication_server_instance_type: "EC2InstanceType", # required
513
+ # replication_servers_security_groups_i_ds: ["SecurityGroupID"], # required
514
+ # staging_area_subnet_id: "SubnetID", # required
515
+ # staging_area_tags: { # required
516
+ # "TagKey" => "TagValue",
517
+ # },
518
+ # tags: {
519
+ # "TagKey" => "TagValue",
520
+ # },
521
+ # use_dedicated_replication_server: false, # required
522
+ # })
523
+ #
524
+ # @example Response structure
525
+ #
526
+ # resp.arn #=> String
527
+ # resp.associate_default_security_group #=> Boolean
528
+ # resp.bandwidth_throttling #=> Integer
529
+ # resp.create_public_ip #=> Boolean
530
+ # resp.data_plane_routing #=> String, one of "PRIVATE_IP", "PUBLIC_IP"
531
+ # resp.default_large_staging_disk_type #=> String, one of "GP2", "ST1"
532
+ # resp.ebs_encryption #=> String, one of "NONE", "DEFAULT", "CUSTOM"
533
+ # resp.ebs_encryption_key_arn #=> String
534
+ # resp.replication_configuration_template_id #=> String
535
+ # resp.replication_server_instance_type #=> String
536
+ # resp.replication_servers_security_groups_i_ds #=> Array
537
+ # resp.replication_servers_security_groups_i_ds[0] #=> String
538
+ # resp.staging_area_subnet_id #=> String
539
+ # resp.staging_area_tags #=> Hash
540
+ # resp.staging_area_tags["TagKey"] #=> String
541
+ # resp.tags #=> Hash
542
+ # resp.tags["TagKey"] #=> String
543
+ # resp.use_dedicated_replication_server #=> Boolean
544
+ #
545
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/CreateReplicationConfigurationTemplate AWS API Documentation
546
+ #
547
+ # @overload create_replication_configuration_template(params = {})
548
+ # @param [Hash] params ({})
549
+ def create_replication_configuration_template(params = {}, options = {})
550
+ req = build_request(:create_replication_configuration_template, params)
551
+ req.send_request(options)
552
+ end
553
+
554
+ # Deletes a single Job by ID.
555
+ #
556
+ # @option params [required, String] :job_id
557
+ # Request to delete Job from service by Job ID.
558
+ #
559
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
560
+ #
561
+ # @example Request syntax with placeholder values
562
+ #
563
+ # resp = client.delete_job({
564
+ # job_id: "JobID", # required
565
+ # })
566
+ #
567
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DeleteJob AWS API Documentation
568
+ #
569
+ # @overload delete_job(params = {})
570
+ # @param [Hash] params ({})
571
+ def delete_job(params = {}, options = {})
572
+ req = build_request(:delete_job, params)
573
+ req.send_request(options)
574
+ end
575
+
576
+ # Deletes a single Replication Configuration Template by ID
577
+ #
578
+ # @option params [required, String] :replication_configuration_template_id
579
+ # Request to delete Replication Configuration Template from service by
580
+ # Replication Configuration Template ID.
581
+ #
582
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
583
+ #
584
+ # @example Request syntax with placeholder values
585
+ #
586
+ # resp = client.delete_replication_configuration_template({
587
+ # replication_configuration_template_id: "ReplicationConfigurationTemplateID", # required
588
+ # })
589
+ #
590
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DeleteReplicationConfigurationTemplate AWS API Documentation
591
+ #
592
+ # @overload delete_replication_configuration_template(params = {})
593
+ # @param [Hash] params ({})
594
+ def delete_replication_configuration_template(params = {}, options = {})
595
+ req = build_request(:delete_replication_configuration_template, params)
596
+ req.send_request(options)
597
+ end
598
+
599
+ # Deletes a single source server by ID.
600
+ #
601
+ # @option params [required, String] :source_server_id
602
+ # Request to delete Source Server from service by Server ID.
603
+ #
604
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
605
+ #
606
+ # @example Request syntax with placeholder values
607
+ #
608
+ # resp = client.delete_source_server({
609
+ # source_server_id: "SourceServerID", # required
610
+ # })
611
+ #
612
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DeleteSourceServer AWS API Documentation
613
+ #
614
+ # @overload delete_source_server(params = {})
615
+ # @param [Hash] params ({})
616
+ def delete_source_server(params = {}, options = {})
617
+ req = build_request(:delete_source_server, params)
618
+ req.send_request(options)
619
+ end
620
+
621
+ # Retrieves detailed Job log with paging.
622
+ #
623
+ # @option params [required, String] :job_id
624
+ # Request to describe Job log job ID.
625
+ #
626
+ # @option params [Integer] :max_results
627
+ # Request to describe Job log item maximum results.
628
+ #
629
+ # @option params [String] :next_token
630
+ # Request to describe Job log next token.
631
+ #
632
+ # @return [Types::DescribeJobLogItemsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
633
+ #
634
+ # * {Types::DescribeJobLogItemsResponse#items #items} => Array&lt;Types::JobLog&gt;
635
+ # * {Types::DescribeJobLogItemsResponse#next_token #next_token} => String
636
+ #
637
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
638
+ #
639
+ # @example Request syntax with placeholder values
640
+ #
641
+ # resp = client.describe_job_log_items({
642
+ # job_id: "JobID", # required
643
+ # max_results: 1,
644
+ # next_token: "PaginationToken",
645
+ # })
646
+ #
647
+ # @example Response structure
648
+ #
649
+ # resp.items #=> Array
650
+ # resp.items[0].event #=> String, one of "JOB_START", "SERVER_SKIPPED", "CLEANUP_START", "CLEANUP_END", "CLEANUP_FAIL", "SNAPSHOT_START", "SNAPSHOT_END", "SNAPSHOT_FAIL", "USING_PREVIOUS_SNAPSHOT", "CONVERSION_START", "CONVERSION_END", "CONVERSION_FAIL", "LAUNCH_START", "LAUNCH_FAILED", "JOB_CANCEL", "JOB_END"
651
+ # resp.items[0].event_data.conversion_server_id #=> String
652
+ # resp.items[0].event_data.raw_error #=> String
653
+ # resp.items[0].event_data.source_server_id #=> String
654
+ # resp.items[0].event_data.target_instance_id #=> String
655
+ # resp.items[0].log_date_time #=> String
656
+ # resp.next_token #=> String
657
+ #
658
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DescribeJobLogItems AWS API Documentation
659
+ #
660
+ # @overload describe_job_log_items(params = {})
661
+ # @param [Hash] params ({})
662
+ def describe_job_log_items(params = {}, options = {})
663
+ req = build_request(:describe_job_log_items, params)
664
+ req.send_request(options)
665
+ end
666
+
667
+ # Returns a list of Jobs. Use the JobsID and fromDate and toData filters
668
+ # to limit which jobs are returned. The response is sorted by
669
+ # creationDataTime - latest date first. Jobs are normaly created by the
670
+ # StartTest, StartCutover, and TerminateTargetInstances APIs. Jobs are
671
+ # also created by DiagnosticLaunch and TerminateDiagnosticInstances,
672
+ # which are APIs available only to *Support* and only used in response
673
+ # to relevant support tickets.
674
+ #
675
+ # @option params [required, Types::DescribeJobsRequestFilters] :filters
676
+ # Request to describe Job log filters.
677
+ #
678
+ # @option params [Integer] :max_results
679
+ # Request to describe Job log by max results.
680
+ #
681
+ # @option params [String] :next_token
682
+ # Request to describe Job logby next token.
683
+ #
684
+ # @return [Types::DescribeJobsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
685
+ #
686
+ # * {Types::DescribeJobsResponse#items #items} => Array&lt;Types::Job&gt;
687
+ # * {Types::DescribeJobsResponse#next_token #next_token} => String
688
+ #
689
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
690
+ #
691
+ # @example Request syntax with placeholder values
692
+ #
693
+ # resp = client.describe_jobs({
694
+ # filters: { # required
695
+ # from_date: "ISO8601DatetimeString",
696
+ # job_i_ds: ["JobID"],
697
+ # to_date: "ISO8601DatetimeString",
698
+ # },
699
+ # max_results: 1,
700
+ # next_token: "PaginationToken",
701
+ # })
702
+ #
703
+ # @example Response structure
704
+ #
705
+ # resp.items #=> Array
706
+ # resp.items[0].arn #=> String
707
+ # resp.items[0].creation_date_time #=> String
708
+ # resp.items[0].end_date_time #=> String
709
+ # resp.items[0].initiated_by #=> String, one of "START_TEST", "START_CUTOVER", "DIAGNOSTIC", "TERMINATE"
710
+ # resp.items[0].job_id #=> String
711
+ # resp.items[0].participating_servers #=> Array
712
+ # resp.items[0].participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
713
+ # resp.items[0].participating_servers[0].source_server_id #=> String
714
+ # resp.items[0].status #=> String, one of "PENDING", "STARTED", "COMPLETED"
715
+ # resp.items[0].tags #=> Hash
716
+ # resp.items[0].tags["TagKey"] #=> String
717
+ # resp.items[0].type #=> String, one of "LAUNCH", "TERMINATE"
718
+ # resp.next_token #=> String
719
+ #
720
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DescribeJobs AWS API Documentation
721
+ #
722
+ # @overload describe_jobs(params = {})
723
+ # @param [Hash] params ({})
724
+ def describe_jobs(params = {}, options = {})
725
+ req = build_request(:describe_jobs, params)
726
+ req.send_request(options)
727
+ end
728
+
729
+ # Lists all ReplicationConfigurationTemplates, filtered by Source Server
730
+ # IDs.
731
+ #
732
+ # @option params [Integer] :max_results
733
+ # Request to describe Replication Configuration template by max results.
734
+ #
735
+ # @option params [String] :next_token
736
+ # Request to describe Replication Configuration template by next token.
737
+ #
738
+ # @option params [required, Array<String>] :replication_configuration_template_i_ds
739
+ # Request to describe Replication Configuration template by template
740
+ # IDs.
741
+ #
742
+ # @return [Types::DescribeReplicationConfigurationTemplatesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
743
+ #
744
+ # * {Types::DescribeReplicationConfigurationTemplatesResponse#items #items} => Array&lt;Types::ReplicationConfigurationTemplate&gt;
745
+ # * {Types::DescribeReplicationConfigurationTemplatesResponse#next_token #next_token} => String
746
+ #
747
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
748
+ #
749
+ # @example Request syntax with placeholder values
750
+ #
751
+ # resp = client.describe_replication_configuration_templates({
752
+ # max_results: 1,
753
+ # next_token: "PaginationToken",
754
+ # replication_configuration_template_i_ds: ["ReplicationConfigurationTemplateID"], # required
755
+ # })
756
+ #
757
+ # @example Response structure
758
+ #
759
+ # resp.items #=> Array
760
+ # resp.items[0].arn #=> String
761
+ # resp.items[0].associate_default_security_group #=> Boolean
762
+ # resp.items[0].bandwidth_throttling #=> Integer
763
+ # resp.items[0].create_public_ip #=> Boolean
764
+ # resp.items[0].data_plane_routing #=> String, one of "PRIVATE_IP", "PUBLIC_IP"
765
+ # resp.items[0].default_large_staging_disk_type #=> String, one of "GP2", "ST1"
766
+ # resp.items[0].ebs_encryption #=> String, one of "NONE", "DEFAULT", "CUSTOM"
767
+ # resp.items[0].ebs_encryption_key_arn #=> String
768
+ # resp.items[0].replication_configuration_template_id #=> String
769
+ # resp.items[0].replication_server_instance_type #=> String
770
+ # resp.items[0].replication_servers_security_groups_i_ds #=> Array
771
+ # resp.items[0].replication_servers_security_groups_i_ds[0] #=> String
772
+ # resp.items[0].staging_area_subnet_id #=> String
773
+ # resp.items[0].staging_area_tags #=> Hash
774
+ # resp.items[0].staging_area_tags["TagKey"] #=> String
775
+ # resp.items[0].tags #=> Hash
776
+ # resp.items[0].tags["TagKey"] #=> String
777
+ # resp.items[0].use_dedicated_replication_server #=> Boolean
778
+ # resp.next_token #=> String
779
+ #
780
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DescribeReplicationConfigurationTemplates AWS API Documentation
781
+ #
782
+ # @overload describe_replication_configuration_templates(params = {})
783
+ # @param [Hash] params ({})
784
+ def describe_replication_configuration_templates(params = {}, options = {})
785
+ req = build_request(:describe_replication_configuration_templates, params)
786
+ req.send_request(options)
787
+ end
788
+
789
+ # Retrieves all SourceServers or multiple SourceServers by ID.
790
+ #
791
+ # @option params [required, Types::DescribeSourceServersRequestFilters] :filters
792
+ # Request to filter Source Servers list.
793
+ #
794
+ # @option params [Integer] :max_results
795
+ # Request to filter Source Servers list by maximum results.
796
+ #
797
+ # @option params [String] :next_token
798
+ # Request to filter Source Servers list by next token.
799
+ #
800
+ # @return [Types::DescribeSourceServersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
801
+ #
802
+ # * {Types::DescribeSourceServersResponse#items #items} => Array&lt;Types::SourceServer&gt;
803
+ # * {Types::DescribeSourceServersResponse#next_token #next_token} => String
804
+ #
805
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
806
+ #
807
+ # @example Request syntax with placeholder values
808
+ #
809
+ # resp = client.describe_source_servers({
810
+ # filters: { # required
811
+ # is_archived: false,
812
+ # source_server_i_ds: ["SourceServerID"],
813
+ # },
814
+ # max_results: 1,
815
+ # next_token: "PaginationToken",
816
+ # })
817
+ #
818
+ # @example Response structure
819
+ #
820
+ # resp.items #=> Array
821
+ # resp.items[0].arn #=> String
822
+ # resp.items[0].data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER"
823
+ # resp.items[0].data_replication_info.data_replication_error.raw_error #=> String
824
+ # resp.items[0].data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
825
+ # resp.items[0].data_replication_info.data_replication_initiation.start_date_time #=> String
826
+ # resp.items[0].data_replication_info.data_replication_initiation.steps #=> Array
827
+ # resp.items[0].data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER"
828
+ # resp.items[0].data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
829
+ # resp.items[0].data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED"
830
+ # resp.items[0].data_replication_info.eta_date_time #=> String
831
+ # resp.items[0].data_replication_info.lag_duration #=> String
832
+ # resp.items[0].data_replication_info.replicated_disks #=> Array
833
+ # resp.items[0].data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
834
+ # resp.items[0].data_replication_info.replicated_disks[0].device_name #=> String
835
+ # resp.items[0].data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
836
+ # resp.items[0].data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
837
+ # resp.items[0].data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
838
+ # resp.items[0].is_archived #=> Boolean
839
+ # resp.items[0].launched_instance.ec2_instance_id #=> String
840
+ # resp.items[0].launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
841
+ # resp.items[0].launched_instance.job_id #=> String
842
+ # resp.items[0].life_cycle.added_to_service_date_time #=> String
843
+ # resp.items[0].life_cycle.elapsed_replication_duration #=> String
844
+ # resp.items[0].life_cycle.first_byte_date_time #=> String
845
+ # resp.items[0].life_cycle.last_cutover.finalized.api_call_date_time #=> String
846
+ # resp.items[0].life_cycle.last_cutover.initiated.api_call_date_time #=> String
847
+ # resp.items[0].life_cycle.last_cutover.initiated.job_id #=> String
848
+ # resp.items[0].life_cycle.last_cutover.reverted.api_call_date_time #=> String
849
+ # resp.items[0].life_cycle.last_seen_by_service_date_time #=> String
850
+ # resp.items[0].life_cycle.last_test.finalized.api_call_date_time #=> String
851
+ # resp.items[0].life_cycle.last_test.initiated.api_call_date_time #=> String
852
+ # resp.items[0].life_cycle.last_test.initiated.job_id #=> String
853
+ # resp.items[0].life_cycle.last_test.reverted.api_call_date_time #=> String
854
+ # resp.items[0].life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED"
855
+ # resp.items[0].source_properties.cpus #=> Array
856
+ # resp.items[0].source_properties.cpus[0].cores #=> Integer
857
+ # resp.items[0].source_properties.cpus[0].model_name #=> String
858
+ # resp.items[0].source_properties.disks #=> Array
859
+ # resp.items[0].source_properties.disks[0].bytes #=> Integer
860
+ # resp.items[0].source_properties.disks[0].device_name #=> String
861
+ # resp.items[0].source_properties.identification_hints.aws_instance_id #=> String
862
+ # resp.items[0].source_properties.identification_hints.fqdn #=> String
863
+ # resp.items[0].source_properties.identification_hints.hostname #=> String
864
+ # resp.items[0].source_properties.identification_hints.vm_ware_uuid #=> String
865
+ # resp.items[0].source_properties.last_updated_date_time #=> String
866
+ # resp.items[0].source_properties.network_interfaces #=> Array
867
+ # resp.items[0].source_properties.network_interfaces[0].ips #=> Array
868
+ # resp.items[0].source_properties.network_interfaces[0].ips[0] #=> String
869
+ # resp.items[0].source_properties.network_interfaces[0].is_primary #=> Boolean
870
+ # resp.items[0].source_properties.network_interfaces[0].mac_address #=> String
871
+ # resp.items[0].source_properties.os.full_string #=> String
872
+ # resp.items[0].source_properties.ram_bytes #=> Integer
873
+ # resp.items[0].source_properties.recommended_instance_type #=> String
874
+ # resp.items[0].source_server_id #=> String
875
+ # resp.items[0].tags #=> Hash
876
+ # resp.items[0].tags["TagKey"] #=> String
877
+ # resp.next_token #=> String
878
+ #
879
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DescribeSourceServers AWS API Documentation
880
+ #
881
+ # @overload describe_source_servers(params = {})
882
+ # @param [Hash] params ({})
883
+ def describe_source_servers(params = {}, options = {})
884
+ req = build_request(:describe_source_servers, params)
885
+ req.send_request(options)
886
+ end
887
+
888
+ # Disconnects specific Source Servers from Application Migration
889
+ # Service. Data replication is stopped immediately. All AWS resources
890
+ # created by Application Migration Service for enabling the replication
891
+ # of these source servers will be terminated / deleted within 90
892
+ # minutes. Launched Test or Cutover instances will NOT be terminated. If
893
+ # the agent on the source server has not been prevented from
894
+ # communciating with the Application Migration Service service, then it
895
+ # will receive a command to uninstall itself (within approximately 10
896
+ # minutes). The following properties of the SourceServer will be changed
897
+ # immediately: dataReplicationInfo.dataReplicationState will be set to
898
+ # DISCONNECTED; The totalStorageBytes property for each of
899
+ # dataReplicationInfo.replicatedDisks will be set to zero;
900
+ # dataReplicationInfo.lagDuration and
901
+ # dataReplicationInfo.lagDurationwill be nullified.
902
+ #
903
+ # @option params [required, String] :source_server_id
904
+ # Request to disconnect Source Server from service by Server ID.
905
+ #
906
+ # @return [Types::SourceServer] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
907
+ #
908
+ # * {Types::SourceServer#arn #arn} => String
909
+ # * {Types::SourceServer#data_replication_info #data_replication_info} => Types::DataReplicationInfo
910
+ # * {Types::SourceServer#is_archived #is_archived} => Boolean
911
+ # * {Types::SourceServer#launched_instance #launched_instance} => Types::LaunchedInstance
912
+ # * {Types::SourceServer#life_cycle #life_cycle} => Types::LifeCycle
913
+ # * {Types::SourceServer#source_properties #source_properties} => Types::SourceProperties
914
+ # * {Types::SourceServer#source_server_id #source_server_id} => String
915
+ # * {Types::SourceServer#tags #tags} => Hash&lt;String,String&gt;
916
+ #
917
+ # @example Request syntax with placeholder values
918
+ #
919
+ # resp = client.disconnect_from_service({
920
+ # source_server_id: "SourceServerID", # required
921
+ # })
922
+ #
923
+ # @example Response structure
924
+ #
925
+ # resp.arn #=> String
926
+ # resp.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER"
927
+ # resp.data_replication_info.data_replication_error.raw_error #=> String
928
+ # resp.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
929
+ # resp.data_replication_info.data_replication_initiation.start_date_time #=> String
930
+ # resp.data_replication_info.data_replication_initiation.steps #=> Array
931
+ # resp.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER"
932
+ # resp.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
933
+ # resp.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED"
934
+ # resp.data_replication_info.eta_date_time #=> String
935
+ # resp.data_replication_info.lag_duration #=> String
936
+ # resp.data_replication_info.replicated_disks #=> Array
937
+ # resp.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
938
+ # resp.data_replication_info.replicated_disks[0].device_name #=> String
939
+ # resp.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
940
+ # resp.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
941
+ # resp.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
942
+ # resp.is_archived #=> Boolean
943
+ # resp.launched_instance.ec2_instance_id #=> String
944
+ # resp.launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
945
+ # resp.launched_instance.job_id #=> String
946
+ # resp.life_cycle.added_to_service_date_time #=> String
947
+ # resp.life_cycle.elapsed_replication_duration #=> String
948
+ # resp.life_cycle.first_byte_date_time #=> String
949
+ # resp.life_cycle.last_cutover.finalized.api_call_date_time #=> String
950
+ # resp.life_cycle.last_cutover.initiated.api_call_date_time #=> String
951
+ # resp.life_cycle.last_cutover.initiated.job_id #=> String
952
+ # resp.life_cycle.last_cutover.reverted.api_call_date_time #=> String
953
+ # resp.life_cycle.last_seen_by_service_date_time #=> String
954
+ # resp.life_cycle.last_test.finalized.api_call_date_time #=> String
955
+ # resp.life_cycle.last_test.initiated.api_call_date_time #=> String
956
+ # resp.life_cycle.last_test.initiated.job_id #=> String
957
+ # resp.life_cycle.last_test.reverted.api_call_date_time #=> String
958
+ # resp.life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED"
959
+ # resp.source_properties.cpus #=> Array
960
+ # resp.source_properties.cpus[0].cores #=> Integer
961
+ # resp.source_properties.cpus[0].model_name #=> String
962
+ # resp.source_properties.disks #=> Array
963
+ # resp.source_properties.disks[0].bytes #=> Integer
964
+ # resp.source_properties.disks[0].device_name #=> String
965
+ # resp.source_properties.identification_hints.aws_instance_id #=> String
966
+ # resp.source_properties.identification_hints.fqdn #=> String
967
+ # resp.source_properties.identification_hints.hostname #=> String
968
+ # resp.source_properties.identification_hints.vm_ware_uuid #=> String
969
+ # resp.source_properties.last_updated_date_time #=> String
970
+ # resp.source_properties.network_interfaces #=> Array
971
+ # resp.source_properties.network_interfaces[0].ips #=> Array
972
+ # resp.source_properties.network_interfaces[0].ips[0] #=> String
973
+ # resp.source_properties.network_interfaces[0].is_primary #=> Boolean
974
+ # resp.source_properties.network_interfaces[0].mac_address #=> String
975
+ # resp.source_properties.os.full_string #=> String
976
+ # resp.source_properties.ram_bytes #=> Integer
977
+ # resp.source_properties.recommended_instance_type #=> String
978
+ # resp.source_server_id #=> String
979
+ # resp.tags #=> Hash
980
+ # resp.tags["TagKey"] #=> String
981
+ #
982
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/DisconnectFromService AWS API Documentation
983
+ #
984
+ # @overload disconnect_from_service(params = {})
985
+ # @param [Hash] params ({})
986
+ def disconnect_from_service(params = {}, options = {})
987
+ req = build_request(:disconnect_from_service, params)
988
+ req.send_request(options)
989
+ end
990
+
991
+ # Finalizes the cutover immediately for specific Source Servers. All AWS
992
+ # resources created by Application Migration Service for enabling the
993
+ # replication of these source servers will be terminated / deleted
994
+ # within 90 minutes. Launched Test or Cutover instances will NOT be
995
+ # terminated. The AWS Replication Agent will receive a command to
996
+ # uninstall itself (within 10 minutes). The following properties of the
997
+ # SourceServer will be changed immediately:
998
+ # dataReplicationInfo.dataReplicationState will be to DISCONNECTED; The
999
+ # SourceServer.lifeCycle.state will be changed to CUTOVER; The
1000
+ # totalStorageBytes property fo each of
1001
+ # dataReplicationInfo.replicatedDisks will be set to zero;
1002
+ # dataReplicationInfo.lagDuration and
1003
+ # dataReplicationInfo.lagDurationwill be nullified.
1004
+ #
1005
+ # @option params [required, String] :source_server_id
1006
+ # Request to finalize Cutover by Soure Server ID.
1007
+ #
1008
+ # @return [Types::SourceServer] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1009
+ #
1010
+ # * {Types::SourceServer#arn #arn} => String
1011
+ # * {Types::SourceServer#data_replication_info #data_replication_info} => Types::DataReplicationInfo
1012
+ # * {Types::SourceServer#is_archived #is_archived} => Boolean
1013
+ # * {Types::SourceServer#launched_instance #launched_instance} => Types::LaunchedInstance
1014
+ # * {Types::SourceServer#life_cycle #life_cycle} => Types::LifeCycle
1015
+ # * {Types::SourceServer#source_properties #source_properties} => Types::SourceProperties
1016
+ # * {Types::SourceServer#source_server_id #source_server_id} => String
1017
+ # * {Types::SourceServer#tags #tags} => Hash&lt;String,String&gt;
1018
+ #
1019
+ # @example Request syntax with placeholder values
1020
+ #
1021
+ # resp = client.finalize_cutover({
1022
+ # source_server_id: "SourceServerID", # required
1023
+ # })
1024
+ #
1025
+ # @example Response structure
1026
+ #
1027
+ # resp.arn #=> String
1028
+ # resp.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER"
1029
+ # resp.data_replication_info.data_replication_error.raw_error #=> String
1030
+ # resp.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
1031
+ # resp.data_replication_info.data_replication_initiation.start_date_time #=> String
1032
+ # resp.data_replication_info.data_replication_initiation.steps #=> Array
1033
+ # resp.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER"
1034
+ # resp.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
1035
+ # resp.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED"
1036
+ # resp.data_replication_info.eta_date_time #=> String
1037
+ # resp.data_replication_info.lag_duration #=> String
1038
+ # resp.data_replication_info.replicated_disks #=> Array
1039
+ # resp.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
1040
+ # resp.data_replication_info.replicated_disks[0].device_name #=> String
1041
+ # resp.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
1042
+ # resp.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
1043
+ # resp.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
1044
+ # resp.is_archived #=> Boolean
1045
+ # resp.launched_instance.ec2_instance_id #=> String
1046
+ # resp.launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
1047
+ # resp.launched_instance.job_id #=> String
1048
+ # resp.life_cycle.added_to_service_date_time #=> String
1049
+ # resp.life_cycle.elapsed_replication_duration #=> String
1050
+ # resp.life_cycle.first_byte_date_time #=> String
1051
+ # resp.life_cycle.last_cutover.finalized.api_call_date_time #=> String
1052
+ # resp.life_cycle.last_cutover.initiated.api_call_date_time #=> String
1053
+ # resp.life_cycle.last_cutover.initiated.job_id #=> String
1054
+ # resp.life_cycle.last_cutover.reverted.api_call_date_time #=> String
1055
+ # resp.life_cycle.last_seen_by_service_date_time #=> String
1056
+ # resp.life_cycle.last_test.finalized.api_call_date_time #=> String
1057
+ # resp.life_cycle.last_test.initiated.api_call_date_time #=> String
1058
+ # resp.life_cycle.last_test.initiated.job_id #=> String
1059
+ # resp.life_cycle.last_test.reverted.api_call_date_time #=> String
1060
+ # resp.life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED"
1061
+ # resp.source_properties.cpus #=> Array
1062
+ # resp.source_properties.cpus[0].cores #=> Integer
1063
+ # resp.source_properties.cpus[0].model_name #=> String
1064
+ # resp.source_properties.disks #=> Array
1065
+ # resp.source_properties.disks[0].bytes #=> Integer
1066
+ # resp.source_properties.disks[0].device_name #=> String
1067
+ # resp.source_properties.identification_hints.aws_instance_id #=> String
1068
+ # resp.source_properties.identification_hints.fqdn #=> String
1069
+ # resp.source_properties.identification_hints.hostname #=> String
1070
+ # resp.source_properties.identification_hints.vm_ware_uuid #=> String
1071
+ # resp.source_properties.last_updated_date_time #=> String
1072
+ # resp.source_properties.network_interfaces #=> Array
1073
+ # resp.source_properties.network_interfaces[0].ips #=> Array
1074
+ # resp.source_properties.network_interfaces[0].ips[0] #=> String
1075
+ # resp.source_properties.network_interfaces[0].is_primary #=> Boolean
1076
+ # resp.source_properties.network_interfaces[0].mac_address #=> String
1077
+ # resp.source_properties.os.full_string #=> String
1078
+ # resp.source_properties.ram_bytes #=> Integer
1079
+ # resp.source_properties.recommended_instance_type #=> String
1080
+ # resp.source_server_id #=> String
1081
+ # resp.tags #=> Hash
1082
+ # resp.tags["TagKey"] #=> String
1083
+ #
1084
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/FinalizeCutover AWS API Documentation
1085
+ #
1086
+ # @overload finalize_cutover(params = {})
1087
+ # @param [Hash] params ({})
1088
+ def finalize_cutover(params = {}, options = {})
1089
+ req = build_request(:finalize_cutover, params)
1090
+ req.send_request(options)
1091
+ end
1092
+
1093
+ # Lists all LaunchConfigurations available, filtered by Source Server
1094
+ # IDs.
1095
+ #
1096
+ # @option params [required, String] :source_server_id
1097
+ # Request to get Launch Configuration information by Source Server ID.
1098
+ #
1099
+ # @return [Types::LaunchConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1100
+ #
1101
+ # * {Types::LaunchConfiguration#copy_private_ip #copy_private_ip} => Boolean
1102
+ # * {Types::LaunchConfiguration#copy_tags #copy_tags} => Boolean
1103
+ # * {Types::LaunchConfiguration#ec2_launch_template_id #ec2_launch_template_id} => String
1104
+ # * {Types::LaunchConfiguration#launch_disposition #launch_disposition} => String
1105
+ # * {Types::LaunchConfiguration#licensing #licensing} => Types::Licensing
1106
+ # * {Types::LaunchConfiguration#name #name} => String
1107
+ # * {Types::LaunchConfiguration#source_server_id #source_server_id} => String
1108
+ # * {Types::LaunchConfiguration#target_instance_type_right_sizing_method #target_instance_type_right_sizing_method} => String
1109
+ #
1110
+ # @example Request syntax with placeholder values
1111
+ #
1112
+ # resp = client.get_launch_configuration({
1113
+ # source_server_id: "SourceServerID", # required
1114
+ # })
1115
+ #
1116
+ # @example Response structure
1117
+ #
1118
+ # resp.copy_private_ip #=> Boolean
1119
+ # resp.copy_tags #=> Boolean
1120
+ # resp.ec2_launch_template_id #=> String
1121
+ # resp.launch_disposition #=> String, one of "STOPPED", "STARTED"
1122
+ # resp.licensing.os_byol #=> Boolean
1123
+ # resp.name #=> String
1124
+ # resp.source_server_id #=> String
1125
+ # resp.target_instance_type_right_sizing_method #=> String, one of "NONE", "BASIC"
1126
+ #
1127
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/GetLaunchConfiguration AWS API Documentation
1128
+ #
1129
+ # @overload get_launch_configuration(params = {})
1130
+ # @param [Hash] params ({})
1131
+ def get_launch_configuration(params = {}, options = {})
1132
+ req = build_request(:get_launch_configuration, params)
1133
+ req.send_request(options)
1134
+ end
1135
+
1136
+ # Lists all ReplicationConfigurations, filtered by Source Server ID.
1137
+ #
1138
+ # @option params [required, String] :source_server_id
1139
+ # Request to get Replication Configuaration by Source Server ID.
1140
+ #
1141
+ # @return [Types::ReplicationConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1142
+ #
1143
+ # * {Types::ReplicationConfiguration#associate_default_security_group #associate_default_security_group} => Boolean
1144
+ # * {Types::ReplicationConfiguration#bandwidth_throttling #bandwidth_throttling} => Integer
1145
+ # * {Types::ReplicationConfiguration#create_public_ip #create_public_ip} => Boolean
1146
+ # * {Types::ReplicationConfiguration#data_plane_routing #data_plane_routing} => String
1147
+ # * {Types::ReplicationConfiguration#default_large_staging_disk_type #default_large_staging_disk_type} => String
1148
+ # * {Types::ReplicationConfiguration#ebs_encryption #ebs_encryption} => String
1149
+ # * {Types::ReplicationConfiguration#ebs_encryption_key_arn #ebs_encryption_key_arn} => String
1150
+ # * {Types::ReplicationConfiguration#name #name} => String
1151
+ # * {Types::ReplicationConfiguration#replicated_disks #replicated_disks} => Array&lt;Types::ReplicationConfigurationReplicatedDisk&gt;
1152
+ # * {Types::ReplicationConfiguration#replication_server_instance_type #replication_server_instance_type} => String
1153
+ # * {Types::ReplicationConfiguration#replication_servers_security_groups_i_ds #replication_servers_security_groups_i_ds} => Array&lt;String&gt;
1154
+ # * {Types::ReplicationConfiguration#source_server_id #source_server_id} => String
1155
+ # * {Types::ReplicationConfiguration#staging_area_subnet_id #staging_area_subnet_id} => String
1156
+ # * {Types::ReplicationConfiguration#staging_area_tags #staging_area_tags} => Hash&lt;String,String&gt;
1157
+ # * {Types::ReplicationConfiguration#use_dedicated_replication_server #use_dedicated_replication_server} => Boolean
1158
+ #
1159
+ # @example Request syntax with placeholder values
1160
+ #
1161
+ # resp = client.get_replication_configuration({
1162
+ # source_server_id: "SourceServerID", # required
1163
+ # })
1164
+ #
1165
+ # @example Response structure
1166
+ #
1167
+ # resp.associate_default_security_group #=> Boolean
1168
+ # resp.bandwidth_throttling #=> Integer
1169
+ # resp.create_public_ip #=> Boolean
1170
+ # resp.data_plane_routing #=> String, one of "PRIVATE_IP", "PUBLIC_IP"
1171
+ # resp.default_large_staging_disk_type #=> String, one of "GP2", "ST1"
1172
+ # resp.ebs_encryption #=> String, one of "NONE", "DEFAULT", "CUSTOM"
1173
+ # resp.ebs_encryption_key_arn #=> String
1174
+ # resp.name #=> String
1175
+ # resp.replicated_disks #=> Array
1176
+ # resp.replicated_disks[0].device_name #=> String
1177
+ # resp.replicated_disks[0].iops #=> Integer
1178
+ # resp.replicated_disks[0].is_boot_disk #=> Boolean
1179
+ # resp.replicated_disks[0].staging_disk_type #=> String, one of "AUTO", "GP2", "IO1", "SC1", "ST1", "STANDARD"
1180
+ # resp.replication_server_instance_type #=> String
1181
+ # resp.replication_servers_security_groups_i_ds #=> Array
1182
+ # resp.replication_servers_security_groups_i_ds[0] #=> String
1183
+ # resp.source_server_id #=> String
1184
+ # resp.staging_area_subnet_id #=> String
1185
+ # resp.staging_area_tags #=> Hash
1186
+ # resp.staging_area_tags["TagKey"] #=> String
1187
+ # resp.use_dedicated_replication_server #=> Boolean
1188
+ #
1189
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/GetReplicationConfiguration AWS API Documentation
1190
+ #
1191
+ # @overload get_replication_configuration(params = {})
1192
+ # @param [Hash] params ({})
1193
+ def get_replication_configuration(params = {}, options = {})
1194
+ req = build_request(:get_replication_configuration, params)
1195
+ req.send_request(options)
1196
+ end
1197
+
1198
+ # Initialize Application Migration Service.
1199
+ #
1200
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1201
+ #
1202
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/InitializeService AWS API Documentation
1203
+ #
1204
+ # @overload initialize_service(params = {})
1205
+ # @param [Hash] params ({})
1206
+ def initialize_service(params = {}, options = {})
1207
+ req = build_request(:initialize_service, params)
1208
+ req.send_request(options)
1209
+ end
1210
+
1211
+ # List all tags for your Application Migration Service resources.
1212
+ #
1213
+ # @option params [required, String] :resource_arn
1214
+ # List tags for resource request by ARN.
1215
+ #
1216
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1217
+ #
1218
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Hash&lt;String,String&gt;
1219
+ #
1220
+ # @example Request syntax with placeholder values
1221
+ #
1222
+ # resp = client.list_tags_for_resource({
1223
+ # resource_arn: "ARN", # required
1224
+ # })
1225
+ #
1226
+ # @example Response structure
1227
+ #
1228
+ # resp.tags #=> Hash
1229
+ # resp.tags["TagKey"] #=> String
1230
+ #
1231
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/ListTagsForResource AWS API Documentation
1232
+ #
1233
+ # @overload list_tags_for_resource(params = {})
1234
+ # @param [Hash] params ({})
1235
+ def list_tags_for_resource(params = {}, options = {})
1236
+ req = build_request(:list_tags_for_resource, params)
1237
+ req.send_request(options)
1238
+ end
1239
+
1240
+ # Archives specific Source Servers by setting the
1241
+ # SourceServer.isArchived property to true for specified SourceServers
1242
+ # by ID. This command only works for SourceServers with a
1243
+ # lifecycle.state which equals DISCONNECTED or CUTOVER.
1244
+ #
1245
+ # @option params [required, String] :source_server_id
1246
+ # Mark as archived by Source Server ID.
1247
+ #
1248
+ # @return [Types::SourceServer] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1249
+ #
1250
+ # * {Types::SourceServer#arn #arn} => String
1251
+ # * {Types::SourceServer#data_replication_info #data_replication_info} => Types::DataReplicationInfo
1252
+ # * {Types::SourceServer#is_archived #is_archived} => Boolean
1253
+ # * {Types::SourceServer#launched_instance #launched_instance} => Types::LaunchedInstance
1254
+ # * {Types::SourceServer#life_cycle #life_cycle} => Types::LifeCycle
1255
+ # * {Types::SourceServer#source_properties #source_properties} => Types::SourceProperties
1256
+ # * {Types::SourceServer#source_server_id #source_server_id} => String
1257
+ # * {Types::SourceServer#tags #tags} => Hash&lt;String,String&gt;
1258
+ #
1259
+ # @example Request syntax with placeholder values
1260
+ #
1261
+ # resp = client.mark_as_archived({
1262
+ # source_server_id: "SourceServerID", # required
1263
+ # })
1264
+ #
1265
+ # @example Response structure
1266
+ #
1267
+ # resp.arn #=> String
1268
+ # resp.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER"
1269
+ # resp.data_replication_info.data_replication_error.raw_error #=> String
1270
+ # resp.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
1271
+ # resp.data_replication_info.data_replication_initiation.start_date_time #=> String
1272
+ # resp.data_replication_info.data_replication_initiation.steps #=> Array
1273
+ # resp.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER"
1274
+ # resp.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
1275
+ # resp.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED"
1276
+ # resp.data_replication_info.eta_date_time #=> String
1277
+ # resp.data_replication_info.lag_duration #=> String
1278
+ # resp.data_replication_info.replicated_disks #=> Array
1279
+ # resp.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
1280
+ # resp.data_replication_info.replicated_disks[0].device_name #=> String
1281
+ # resp.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
1282
+ # resp.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
1283
+ # resp.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
1284
+ # resp.is_archived #=> Boolean
1285
+ # resp.launched_instance.ec2_instance_id #=> String
1286
+ # resp.launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
1287
+ # resp.launched_instance.job_id #=> String
1288
+ # resp.life_cycle.added_to_service_date_time #=> String
1289
+ # resp.life_cycle.elapsed_replication_duration #=> String
1290
+ # resp.life_cycle.first_byte_date_time #=> String
1291
+ # resp.life_cycle.last_cutover.finalized.api_call_date_time #=> String
1292
+ # resp.life_cycle.last_cutover.initiated.api_call_date_time #=> String
1293
+ # resp.life_cycle.last_cutover.initiated.job_id #=> String
1294
+ # resp.life_cycle.last_cutover.reverted.api_call_date_time #=> String
1295
+ # resp.life_cycle.last_seen_by_service_date_time #=> String
1296
+ # resp.life_cycle.last_test.finalized.api_call_date_time #=> String
1297
+ # resp.life_cycle.last_test.initiated.api_call_date_time #=> String
1298
+ # resp.life_cycle.last_test.initiated.job_id #=> String
1299
+ # resp.life_cycle.last_test.reverted.api_call_date_time #=> String
1300
+ # resp.life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED"
1301
+ # resp.source_properties.cpus #=> Array
1302
+ # resp.source_properties.cpus[0].cores #=> Integer
1303
+ # resp.source_properties.cpus[0].model_name #=> String
1304
+ # resp.source_properties.disks #=> Array
1305
+ # resp.source_properties.disks[0].bytes #=> Integer
1306
+ # resp.source_properties.disks[0].device_name #=> String
1307
+ # resp.source_properties.identification_hints.aws_instance_id #=> String
1308
+ # resp.source_properties.identification_hints.fqdn #=> String
1309
+ # resp.source_properties.identification_hints.hostname #=> String
1310
+ # resp.source_properties.identification_hints.vm_ware_uuid #=> String
1311
+ # resp.source_properties.last_updated_date_time #=> String
1312
+ # resp.source_properties.network_interfaces #=> Array
1313
+ # resp.source_properties.network_interfaces[0].ips #=> Array
1314
+ # resp.source_properties.network_interfaces[0].ips[0] #=> String
1315
+ # resp.source_properties.network_interfaces[0].is_primary #=> Boolean
1316
+ # resp.source_properties.network_interfaces[0].mac_address #=> String
1317
+ # resp.source_properties.os.full_string #=> String
1318
+ # resp.source_properties.ram_bytes #=> Integer
1319
+ # resp.source_properties.recommended_instance_type #=> String
1320
+ # resp.source_server_id #=> String
1321
+ # resp.tags #=> Hash
1322
+ # resp.tags["TagKey"] #=> String
1323
+ #
1324
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/MarkAsArchived AWS API Documentation
1325
+ #
1326
+ # @overload mark_as_archived(params = {})
1327
+ # @param [Hash] params ({})
1328
+ def mark_as_archived(params = {}, options = {})
1329
+ req = build_request(:mark_as_archived, params)
1330
+ req.send_request(options)
1331
+ end
1332
+
1333
+ # Causes the data replication initiation sequence to begin immediately
1334
+ # upon next Handshake for specified SourceServer IDs, regardless of when
1335
+ # the previous initiation started. This command will not work if the
1336
+ # SourceServer is not stalled or is in a DISCONNECTED or STOPPED state.
1337
+ #
1338
+ # @option params [required, String] :source_server_id
1339
+ # Retry data replication for Source Server ID.
1340
+ #
1341
+ # @return [Types::SourceServer] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1342
+ #
1343
+ # * {Types::SourceServer#arn #arn} => String
1344
+ # * {Types::SourceServer#data_replication_info #data_replication_info} => Types::DataReplicationInfo
1345
+ # * {Types::SourceServer#is_archived #is_archived} => Boolean
1346
+ # * {Types::SourceServer#launched_instance #launched_instance} => Types::LaunchedInstance
1347
+ # * {Types::SourceServer#life_cycle #life_cycle} => Types::LifeCycle
1348
+ # * {Types::SourceServer#source_properties #source_properties} => Types::SourceProperties
1349
+ # * {Types::SourceServer#source_server_id #source_server_id} => String
1350
+ # * {Types::SourceServer#tags #tags} => Hash&lt;String,String&gt;
1351
+ #
1352
+ # @example Request syntax with placeholder values
1353
+ #
1354
+ # resp = client.retry_data_replication({
1355
+ # source_server_id: "SourceServerID", # required
1356
+ # })
1357
+ #
1358
+ # @example Response structure
1359
+ #
1360
+ # resp.arn #=> String
1361
+ # resp.data_replication_info.data_replication_error.error #=> String, one of "AGENT_NOT_SEEN", "SNAPSHOTS_FAILURE", "NOT_CONVERGING", "UNSTABLE_NETWORK", "FAILED_TO_CREATE_SECURITY_GROUP", "FAILED_TO_LAUNCH_REPLICATION_SERVER", "FAILED_TO_BOOT_REPLICATION_SERVER", "FAILED_TO_AUTHENTICATE_WITH_SERVICE", "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE", "FAILED_TO_CREATE_STAGING_DISKS", "FAILED_TO_ATTACH_STAGING_DISKS", "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT", "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER", "FAILED_TO_START_DATA_TRANSFER"
1362
+ # resp.data_replication_info.data_replication_error.raw_error #=> String
1363
+ # resp.data_replication_info.data_replication_initiation.next_attempt_date_time #=> String
1364
+ # resp.data_replication_info.data_replication_initiation.start_date_time #=> String
1365
+ # resp.data_replication_info.data_replication_initiation.steps #=> Array
1366
+ # resp.data_replication_info.data_replication_initiation.steps[0].name #=> String, one of "WAIT", "CREATE_SECURITY_GROUP", "LAUNCH_REPLICATION_SERVER", "BOOT_REPLICATION_SERVER", "AUTHENTICATE_WITH_SERVICE", "DOWNLOAD_REPLICATION_SOFTWARE", "CREATE_STAGING_DISKS", "ATTACH_STAGING_DISKS", "PAIR_REPLICATION_SERVER_WITH_AGENT", "CONNECT_AGENT_TO_REPLICATION_SERVER", "START_DATA_TRANSFER"
1367
+ # resp.data_replication_info.data_replication_initiation.steps[0].status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "SUCCEEDED", "FAILED", "SKIPPED"
1368
+ # resp.data_replication_info.data_replication_state #=> String, one of "STOPPED", "INITIATING", "INITIAL_SYNC", "BACKLOG", "CREATING_SNAPSHOT", "CONTINUOUS", "PAUSED", "RESCAN", "STALLED", "DISCONNECTED"
1369
+ # resp.data_replication_info.eta_date_time #=> String
1370
+ # resp.data_replication_info.lag_duration #=> String
1371
+ # resp.data_replication_info.replicated_disks #=> Array
1372
+ # resp.data_replication_info.replicated_disks[0].backlogged_storage_bytes #=> Integer
1373
+ # resp.data_replication_info.replicated_disks[0].device_name #=> String
1374
+ # resp.data_replication_info.replicated_disks[0].replicated_storage_bytes #=> Integer
1375
+ # resp.data_replication_info.replicated_disks[0].rescanned_storage_bytes #=> Integer
1376
+ # resp.data_replication_info.replicated_disks[0].total_storage_bytes #=> Integer
1377
+ # resp.is_archived #=> Boolean
1378
+ # resp.launched_instance.ec2_instance_id #=> String
1379
+ # resp.launched_instance.first_boot #=> String, one of "WAITING", "SUCCEEDED", "UNKNOWN", "STOPPED"
1380
+ # resp.launched_instance.job_id #=> String
1381
+ # resp.life_cycle.added_to_service_date_time #=> String
1382
+ # resp.life_cycle.elapsed_replication_duration #=> String
1383
+ # resp.life_cycle.first_byte_date_time #=> String
1384
+ # resp.life_cycle.last_cutover.finalized.api_call_date_time #=> String
1385
+ # resp.life_cycle.last_cutover.initiated.api_call_date_time #=> String
1386
+ # resp.life_cycle.last_cutover.initiated.job_id #=> String
1387
+ # resp.life_cycle.last_cutover.reverted.api_call_date_time #=> String
1388
+ # resp.life_cycle.last_seen_by_service_date_time #=> String
1389
+ # resp.life_cycle.last_test.finalized.api_call_date_time #=> String
1390
+ # resp.life_cycle.last_test.initiated.api_call_date_time #=> String
1391
+ # resp.life_cycle.last_test.initiated.job_id #=> String
1392
+ # resp.life_cycle.last_test.reverted.api_call_date_time #=> String
1393
+ # resp.life_cycle.state #=> String, one of "STOPPED", "NOT_READY", "READY_FOR_TEST", "TESTING", "READY_FOR_CUTOVER", "CUTTING_OVER", "CUTOVER", "DISCONNECTED"
1394
+ # resp.source_properties.cpus #=> Array
1395
+ # resp.source_properties.cpus[0].cores #=> Integer
1396
+ # resp.source_properties.cpus[0].model_name #=> String
1397
+ # resp.source_properties.disks #=> Array
1398
+ # resp.source_properties.disks[0].bytes #=> Integer
1399
+ # resp.source_properties.disks[0].device_name #=> String
1400
+ # resp.source_properties.identification_hints.aws_instance_id #=> String
1401
+ # resp.source_properties.identification_hints.fqdn #=> String
1402
+ # resp.source_properties.identification_hints.hostname #=> String
1403
+ # resp.source_properties.identification_hints.vm_ware_uuid #=> String
1404
+ # resp.source_properties.last_updated_date_time #=> String
1405
+ # resp.source_properties.network_interfaces #=> Array
1406
+ # resp.source_properties.network_interfaces[0].ips #=> Array
1407
+ # resp.source_properties.network_interfaces[0].ips[0] #=> String
1408
+ # resp.source_properties.network_interfaces[0].is_primary #=> Boolean
1409
+ # resp.source_properties.network_interfaces[0].mac_address #=> String
1410
+ # resp.source_properties.os.full_string #=> String
1411
+ # resp.source_properties.ram_bytes #=> Integer
1412
+ # resp.source_properties.recommended_instance_type #=> String
1413
+ # resp.source_server_id #=> String
1414
+ # resp.tags #=> Hash
1415
+ # resp.tags["TagKey"] #=> String
1416
+ #
1417
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/RetryDataReplication AWS API Documentation
1418
+ #
1419
+ # @overload retry_data_replication(params = {})
1420
+ # @param [Hash] params ({})
1421
+ def retry_data_replication(params = {}, options = {})
1422
+ req = build_request(:retry_data_replication, params)
1423
+ req.send_request(options)
1424
+ end
1425
+
1426
+ # Launches a Cutover Instance for specific Source Servers. This command
1427
+ # starts a LAUNCH job whose initiatedBy property is StartCutover and
1428
+ # changes the SourceServer.lifeCycle.state property to CUTTING\_OVER.
1429
+ #
1430
+ # @option params [required, Array<String>] :source_server_i_ds
1431
+ # Start Cutover by Source Server IDs.
1432
+ #
1433
+ # @option params [Hash<String,String>] :tags
1434
+ # Start Cutover by Tags.
1435
+ #
1436
+ # @return [Types::StartCutoverResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1437
+ #
1438
+ # * {Types::StartCutoverResponse#job #job} => Types::Job
1439
+ #
1440
+ # @example Request syntax with placeholder values
1441
+ #
1442
+ # resp = client.start_cutover({
1443
+ # source_server_i_ds: ["SourceServerID"], # required
1444
+ # tags: {
1445
+ # "TagKey" => "TagValue",
1446
+ # },
1447
+ # })
1448
+ #
1449
+ # @example Response structure
1450
+ #
1451
+ # resp.job.arn #=> String
1452
+ # resp.job.creation_date_time #=> String
1453
+ # resp.job.end_date_time #=> String
1454
+ # resp.job.initiated_by #=> String, one of "START_TEST", "START_CUTOVER", "DIAGNOSTIC", "TERMINATE"
1455
+ # resp.job.job_id #=> String
1456
+ # resp.job.participating_servers #=> Array
1457
+ # resp.job.participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
1458
+ # resp.job.participating_servers[0].source_server_id #=> String
1459
+ # resp.job.status #=> String, one of "PENDING", "STARTED", "COMPLETED"
1460
+ # resp.job.tags #=> Hash
1461
+ # resp.job.tags["TagKey"] #=> String
1462
+ # resp.job.type #=> String, one of "LAUNCH", "TERMINATE"
1463
+ #
1464
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/StartCutover AWS API Documentation
1465
+ #
1466
+ # @overload start_cutover(params = {})
1467
+ # @param [Hash] params ({})
1468
+ def start_cutover(params = {}, options = {})
1469
+ req = build_request(:start_cutover, params)
1470
+ req.send_request(options)
1471
+ end
1472
+
1473
+ # Lauches a Test Instance for specific Source Servers. This command
1474
+ # starts a LAUNCH job whose initiatedBy property is StartTest and
1475
+ # changes the SourceServer.lifeCycle.state property to TESTING.
1476
+ #
1477
+ # @option params [required, Array<String>] :source_server_i_ds
1478
+ # Start Test for Source Server IDs.
1479
+ #
1480
+ # @option params [Hash<String,String>] :tags
1481
+ # Start Test by Tags.
1482
+ #
1483
+ # @return [Types::StartTestResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1484
+ #
1485
+ # * {Types::StartTestResponse#job #job} => Types::Job
1486
+ #
1487
+ # @example Request syntax with placeholder values
1488
+ #
1489
+ # resp = client.start_test({
1490
+ # source_server_i_ds: ["SourceServerID"], # required
1491
+ # tags: {
1492
+ # "TagKey" => "TagValue",
1493
+ # },
1494
+ # })
1495
+ #
1496
+ # @example Response structure
1497
+ #
1498
+ # resp.job.arn #=> String
1499
+ # resp.job.creation_date_time #=> String
1500
+ # resp.job.end_date_time #=> String
1501
+ # resp.job.initiated_by #=> String, one of "START_TEST", "START_CUTOVER", "DIAGNOSTIC", "TERMINATE"
1502
+ # resp.job.job_id #=> String
1503
+ # resp.job.participating_servers #=> Array
1504
+ # resp.job.participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
1505
+ # resp.job.participating_servers[0].source_server_id #=> String
1506
+ # resp.job.status #=> String, one of "PENDING", "STARTED", "COMPLETED"
1507
+ # resp.job.tags #=> Hash
1508
+ # resp.job.tags["TagKey"] #=> String
1509
+ # resp.job.type #=> String, one of "LAUNCH", "TERMINATE"
1510
+ #
1511
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/StartTest AWS API Documentation
1512
+ #
1513
+ # @overload start_test(params = {})
1514
+ # @param [Hash] params ({})
1515
+ def start_test(params = {}, options = {})
1516
+ req = build_request(:start_test, params)
1517
+ req.send_request(options)
1518
+ end
1519
+
1520
+ # Adds or overwrites only the specified tags for the specified
1521
+ # Application Migration Service resource or resources. When you specify
1522
+ # an existing tag key, the value is overwritten with the new value. Each
1523
+ # resource can have a maximum of 50 tags. Each tag consists of a key and
1524
+ # optional value.
1525
+ #
1526
+ # @option params [required, String] :resource_arn
1527
+ # Tag resource by ARN.
1528
+ #
1529
+ # @option params [required, Hash<String,String>] :tags
1530
+ # Tag resource by Tags.
1531
+ #
1532
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1533
+ #
1534
+ # @example Request syntax with placeholder values
1535
+ #
1536
+ # resp = client.tag_resource({
1537
+ # resource_arn: "ARN", # required
1538
+ # tags: { # required
1539
+ # "TagKey" => "TagValue",
1540
+ # },
1541
+ # })
1542
+ #
1543
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/TagResource AWS API Documentation
1544
+ #
1545
+ # @overload tag_resource(params = {})
1546
+ # @param [Hash] params ({})
1547
+ def tag_resource(params = {}, options = {})
1548
+ req = build_request(:tag_resource, params)
1549
+ req.send_request(options)
1550
+ end
1551
+
1552
+ # Starts a job that terminates specific launched EC2 Test and Cutover
1553
+ # instances. This command will not work for any Source Server with a
1554
+ # lifecycle.state of TESTING, CUTTING\_OVER, or CUTOVER.
1555
+ #
1556
+ # @option params [required, Array<String>] :source_server_i_ds
1557
+ # Terminate Target instance by Source Server IDs.
1558
+ #
1559
+ # @option params [Hash<String,String>] :tags
1560
+ # Terminate Target instance by Tags.
1561
+ #
1562
+ # @return [Types::TerminateTargetInstancesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1563
+ #
1564
+ # * {Types::TerminateTargetInstancesResponse#job #job} => Types::Job
1565
+ #
1566
+ # @example Request syntax with placeholder values
1567
+ #
1568
+ # resp = client.terminate_target_instances({
1569
+ # source_server_i_ds: ["SourceServerID"], # required
1570
+ # tags: {
1571
+ # "TagKey" => "TagValue",
1572
+ # },
1573
+ # })
1574
+ #
1575
+ # @example Response structure
1576
+ #
1577
+ # resp.job.arn #=> String
1578
+ # resp.job.creation_date_time #=> String
1579
+ # resp.job.end_date_time #=> String
1580
+ # resp.job.initiated_by #=> String, one of "START_TEST", "START_CUTOVER", "DIAGNOSTIC", "TERMINATE"
1581
+ # resp.job.job_id #=> String
1582
+ # resp.job.participating_servers #=> Array
1583
+ # resp.job.participating_servers[0].launch_status #=> String, one of "PENDING", "IN_PROGRESS", "LAUNCHED", "FAILED", "TERMINATED"
1584
+ # resp.job.participating_servers[0].source_server_id #=> String
1585
+ # resp.job.status #=> String, one of "PENDING", "STARTED", "COMPLETED"
1586
+ # resp.job.tags #=> Hash
1587
+ # resp.job.tags["TagKey"] #=> String
1588
+ # resp.job.type #=> String, one of "LAUNCH", "TERMINATE"
1589
+ #
1590
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/TerminateTargetInstances AWS API Documentation
1591
+ #
1592
+ # @overload terminate_target_instances(params = {})
1593
+ # @param [Hash] params ({})
1594
+ def terminate_target_instances(params = {}, options = {})
1595
+ req = build_request(:terminate_target_instances, params)
1596
+ req.send_request(options)
1597
+ end
1598
+
1599
+ # Deletes the specified set of tags from the specified set of
1600
+ # Application Migration Service resources.
1601
+ #
1602
+ # @option params [required, String] :resource_arn
1603
+ # Untag resource by ARN.
1604
+ #
1605
+ # @option params [required, Array<String>] :tag_keys
1606
+ # Untag resource by Keys.
1607
+ #
1608
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1609
+ #
1610
+ # @example Request syntax with placeholder values
1611
+ #
1612
+ # resp = client.untag_resource({
1613
+ # resource_arn: "ARN", # required
1614
+ # tag_keys: ["TagKey"], # required
1615
+ # })
1616
+ #
1617
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/UntagResource AWS API Documentation
1618
+ #
1619
+ # @overload untag_resource(params = {})
1620
+ # @param [Hash] params ({})
1621
+ def untag_resource(params = {}, options = {})
1622
+ req = build_request(:untag_resource, params)
1623
+ req.send_request(options)
1624
+ end
1625
+
1626
+ # Updates multiple LaunchConfigurations by Source Server ID.
1627
+ #
1628
+ # @option params [Boolean] :copy_private_ip
1629
+ # Update Launch configuration copy Private IP request.
1630
+ #
1631
+ # @option params [Boolean] :copy_tags
1632
+ # Update Launch configuration copy Tags request.
1633
+ #
1634
+ # @option params [String] :launch_disposition
1635
+ # Update Launch configuration launch disposition request.
1636
+ #
1637
+ # @option params [Types::Licensing] :licensing
1638
+ # Update Launch configuration licensing request.
1639
+ #
1640
+ # @option params [String] :name
1641
+ # Update Launch configuration name request.
1642
+ #
1643
+ # @option params [required, String] :source_server_id
1644
+ # Update Launch configuration by Source Server ID request.
1645
+ #
1646
+ # @option params [String] :target_instance_type_right_sizing_method
1647
+ # Update Launch configuration Target instance right sizing request.
1648
+ #
1649
+ # @return [Types::LaunchConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1650
+ #
1651
+ # * {Types::LaunchConfiguration#copy_private_ip #copy_private_ip} => Boolean
1652
+ # * {Types::LaunchConfiguration#copy_tags #copy_tags} => Boolean
1653
+ # * {Types::LaunchConfiguration#ec2_launch_template_id #ec2_launch_template_id} => String
1654
+ # * {Types::LaunchConfiguration#launch_disposition #launch_disposition} => String
1655
+ # * {Types::LaunchConfiguration#licensing #licensing} => Types::Licensing
1656
+ # * {Types::LaunchConfiguration#name #name} => String
1657
+ # * {Types::LaunchConfiguration#source_server_id #source_server_id} => String
1658
+ # * {Types::LaunchConfiguration#target_instance_type_right_sizing_method #target_instance_type_right_sizing_method} => String
1659
+ #
1660
+ # @example Request syntax with placeholder values
1661
+ #
1662
+ # resp = client.update_launch_configuration({
1663
+ # copy_private_ip: false,
1664
+ # copy_tags: false,
1665
+ # launch_disposition: "STOPPED", # accepts STOPPED, STARTED
1666
+ # licensing: {
1667
+ # os_byol: false,
1668
+ # },
1669
+ # name: "SmallBoundedString",
1670
+ # source_server_id: "SourceServerID", # required
1671
+ # target_instance_type_right_sizing_method: "NONE", # accepts NONE, BASIC
1672
+ # })
1673
+ #
1674
+ # @example Response structure
1675
+ #
1676
+ # resp.copy_private_ip #=> Boolean
1677
+ # resp.copy_tags #=> Boolean
1678
+ # resp.ec2_launch_template_id #=> String
1679
+ # resp.launch_disposition #=> String, one of "STOPPED", "STARTED"
1680
+ # resp.licensing.os_byol #=> Boolean
1681
+ # resp.name #=> String
1682
+ # resp.source_server_id #=> String
1683
+ # resp.target_instance_type_right_sizing_method #=> String, one of "NONE", "BASIC"
1684
+ #
1685
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/UpdateLaunchConfiguration AWS API Documentation
1686
+ #
1687
+ # @overload update_launch_configuration(params = {})
1688
+ # @param [Hash] params ({})
1689
+ def update_launch_configuration(params = {}, options = {})
1690
+ req = build_request(:update_launch_configuration, params)
1691
+ req.send_request(options)
1692
+ end
1693
+
1694
+ # Allows you to update multiple ReplicationConfigurations by Source
1695
+ # Server ID.
1696
+ #
1697
+ # @option params [Boolean] :associate_default_security_group
1698
+ # Update replication configuration associate default Application
1699
+ # Migration Service Security group request.
1700
+ #
1701
+ # @option params [Integer] :bandwidth_throttling
1702
+ # Update replication configuration bandwidth throttling request.
1703
+ #
1704
+ # @option params [Boolean] :create_public_ip
1705
+ # Update replication configuration create Public IP request.
1706
+ #
1707
+ # @option params [String] :data_plane_routing
1708
+ # Update replication configuration data plane routing request.
1709
+ #
1710
+ # @option params [String] :default_large_staging_disk_type
1711
+ # Update replication configuration use default large Staging Disk type
1712
+ # request.
1713
+ #
1714
+ # @option params [String] :ebs_encryption
1715
+ # Update replication configuration EBS encryption request.
1716
+ #
1717
+ # @option params [String] :ebs_encryption_key_arn
1718
+ # Update replication configuration EBS encryption key ARN request.
1719
+ #
1720
+ # @option params [String] :name
1721
+ # Update replication configuration name request.
1722
+ #
1723
+ # @option params [Array<Types::ReplicationConfigurationReplicatedDisk>] :replicated_disks
1724
+ # Update replication configuration replicated disks request.
1725
+ #
1726
+ # @option params [String] :replication_server_instance_type
1727
+ # Update replication configuration Replication Server instance type
1728
+ # request.
1729
+ #
1730
+ # @option params [Array<String>] :replication_servers_security_groups_i_ds
1731
+ # Update replication configuration Replication Server Security Groups
1732
+ # IDs request.
1733
+ #
1734
+ # @option params [required, String] :source_server_id
1735
+ # Update replication configuration Source Server ID request.
1736
+ #
1737
+ # @option params [String] :staging_area_subnet_id
1738
+ # Update replication configuration Staging Area subnet request.
1739
+ #
1740
+ # @option params [Hash<String,String>] :staging_area_tags
1741
+ # Update replication configuration Staging Area Tags request.
1742
+ #
1743
+ # @option params [Boolean] :use_dedicated_replication_server
1744
+ # Update replication configuration use dedicated Replication Server
1745
+ # request.
1746
+ #
1747
+ # @return [Types::ReplicationConfiguration] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1748
+ #
1749
+ # * {Types::ReplicationConfiguration#associate_default_security_group #associate_default_security_group} => Boolean
1750
+ # * {Types::ReplicationConfiguration#bandwidth_throttling #bandwidth_throttling} => Integer
1751
+ # * {Types::ReplicationConfiguration#create_public_ip #create_public_ip} => Boolean
1752
+ # * {Types::ReplicationConfiguration#data_plane_routing #data_plane_routing} => String
1753
+ # * {Types::ReplicationConfiguration#default_large_staging_disk_type #default_large_staging_disk_type} => String
1754
+ # * {Types::ReplicationConfiguration#ebs_encryption #ebs_encryption} => String
1755
+ # * {Types::ReplicationConfiguration#ebs_encryption_key_arn #ebs_encryption_key_arn} => String
1756
+ # * {Types::ReplicationConfiguration#name #name} => String
1757
+ # * {Types::ReplicationConfiguration#replicated_disks #replicated_disks} => Array&lt;Types::ReplicationConfigurationReplicatedDisk&gt;
1758
+ # * {Types::ReplicationConfiguration#replication_server_instance_type #replication_server_instance_type} => String
1759
+ # * {Types::ReplicationConfiguration#replication_servers_security_groups_i_ds #replication_servers_security_groups_i_ds} => Array&lt;String&gt;
1760
+ # * {Types::ReplicationConfiguration#source_server_id #source_server_id} => String
1761
+ # * {Types::ReplicationConfiguration#staging_area_subnet_id #staging_area_subnet_id} => String
1762
+ # * {Types::ReplicationConfiguration#staging_area_tags #staging_area_tags} => Hash&lt;String,String&gt;
1763
+ # * {Types::ReplicationConfiguration#use_dedicated_replication_server #use_dedicated_replication_server} => Boolean
1764
+ #
1765
+ # @example Request syntax with placeholder values
1766
+ #
1767
+ # resp = client.update_replication_configuration({
1768
+ # associate_default_security_group: false,
1769
+ # bandwidth_throttling: 1,
1770
+ # create_public_ip: false,
1771
+ # data_plane_routing: "PRIVATE_IP", # accepts PRIVATE_IP, PUBLIC_IP
1772
+ # default_large_staging_disk_type: "GP2", # accepts GP2, ST1
1773
+ # ebs_encryption: "NONE", # accepts NONE, DEFAULT, CUSTOM
1774
+ # ebs_encryption_key_arn: "ARN",
1775
+ # name: "SmallBoundedString",
1776
+ # replicated_disks: [
1777
+ # {
1778
+ # device_name: "BoundedString",
1779
+ # iops: 1,
1780
+ # is_boot_disk: false,
1781
+ # staging_disk_type: "AUTO", # accepts AUTO, GP2, IO1, SC1, ST1, STANDARD
1782
+ # },
1783
+ # ],
1784
+ # replication_server_instance_type: "EC2InstanceType",
1785
+ # replication_servers_security_groups_i_ds: ["SecurityGroupID"],
1786
+ # source_server_id: "SourceServerID", # required
1787
+ # staging_area_subnet_id: "SubnetID",
1788
+ # staging_area_tags: {
1789
+ # "TagKey" => "TagValue",
1790
+ # },
1791
+ # use_dedicated_replication_server: false,
1792
+ # })
1793
+ #
1794
+ # @example Response structure
1795
+ #
1796
+ # resp.associate_default_security_group #=> Boolean
1797
+ # resp.bandwidth_throttling #=> Integer
1798
+ # resp.create_public_ip #=> Boolean
1799
+ # resp.data_plane_routing #=> String, one of "PRIVATE_IP", "PUBLIC_IP"
1800
+ # resp.default_large_staging_disk_type #=> String, one of "GP2", "ST1"
1801
+ # resp.ebs_encryption #=> String, one of "NONE", "DEFAULT", "CUSTOM"
1802
+ # resp.ebs_encryption_key_arn #=> String
1803
+ # resp.name #=> String
1804
+ # resp.replicated_disks #=> Array
1805
+ # resp.replicated_disks[0].device_name #=> String
1806
+ # resp.replicated_disks[0].iops #=> Integer
1807
+ # resp.replicated_disks[0].is_boot_disk #=> Boolean
1808
+ # resp.replicated_disks[0].staging_disk_type #=> String, one of "AUTO", "GP2", "IO1", "SC1", "ST1", "STANDARD"
1809
+ # resp.replication_server_instance_type #=> String
1810
+ # resp.replication_servers_security_groups_i_ds #=> Array
1811
+ # resp.replication_servers_security_groups_i_ds[0] #=> String
1812
+ # resp.source_server_id #=> String
1813
+ # resp.staging_area_subnet_id #=> String
1814
+ # resp.staging_area_tags #=> Hash
1815
+ # resp.staging_area_tags["TagKey"] #=> String
1816
+ # resp.use_dedicated_replication_server #=> Boolean
1817
+ #
1818
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/UpdateReplicationConfiguration AWS API Documentation
1819
+ #
1820
+ # @overload update_replication_configuration(params = {})
1821
+ # @param [Hash] params ({})
1822
+ def update_replication_configuration(params = {}, options = {})
1823
+ req = build_request(:update_replication_configuration, params)
1824
+ req.send_request(options)
1825
+ end
1826
+
1827
+ # Updates multiple ReplicationConfigurationTemplates by ID.
1828
+ #
1829
+ # @option params [String] :arn
1830
+ # Update replication configuration template ARN request.
1831
+ #
1832
+ # @option params [Boolean] :associate_default_security_group
1833
+ # Update replication configuration template associate default
1834
+ # Application Migration Service Security group request.
1835
+ #
1836
+ # @option params [Integer] :bandwidth_throttling
1837
+ # Update replication configuration template bandwidth throttling
1838
+ # request.
1839
+ #
1840
+ # @option params [Boolean] :create_public_ip
1841
+ # Update replication configuration template create Public IP request.
1842
+ #
1843
+ # @option params [String] :data_plane_routing
1844
+ # Update replication configuration template data plane routing request.
1845
+ #
1846
+ # @option params [String] :default_large_staging_disk_type
1847
+ # Update replication configuration template use default large Staging
1848
+ # Disk type request.
1849
+ #
1850
+ # @option params [String] :ebs_encryption
1851
+ # Update replication configuration template EBS encryption request.
1852
+ #
1853
+ # @option params [String] :ebs_encryption_key_arn
1854
+ # Update replication configuration template EBS encryption key ARN
1855
+ # request.
1856
+ #
1857
+ # @option params [required, String] :replication_configuration_template_id
1858
+ # Update replication configuration template template ID request.
1859
+ #
1860
+ # @option params [String] :replication_server_instance_type
1861
+ # Update replication configuration template Replication Server instance
1862
+ # type request.
1863
+ #
1864
+ # @option params [Array<String>] :replication_servers_security_groups_i_ds
1865
+ # Update replication configuration template Replication Server Security
1866
+ # groups IDs request.
1867
+ #
1868
+ # @option params [String] :staging_area_subnet_id
1869
+ # Update replication configuration template Staging Area subnet ID
1870
+ # request.
1871
+ #
1872
+ # @option params [Hash<String,String>] :staging_area_tags
1873
+ # Update replication configuration template Staging Area Tags request.
1874
+ #
1875
+ # @option params [Boolean] :use_dedicated_replication_server
1876
+ # Update replication configuration template use dedicated Replication
1877
+ # Server request.
1878
+ #
1879
+ # @return [Types::ReplicationConfigurationTemplate] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1880
+ #
1881
+ # * {Types::ReplicationConfigurationTemplate#arn #arn} => String
1882
+ # * {Types::ReplicationConfigurationTemplate#associate_default_security_group #associate_default_security_group} => Boolean
1883
+ # * {Types::ReplicationConfigurationTemplate#bandwidth_throttling #bandwidth_throttling} => Integer
1884
+ # * {Types::ReplicationConfigurationTemplate#create_public_ip #create_public_ip} => Boolean
1885
+ # * {Types::ReplicationConfigurationTemplate#data_plane_routing #data_plane_routing} => String
1886
+ # * {Types::ReplicationConfigurationTemplate#default_large_staging_disk_type #default_large_staging_disk_type} => String
1887
+ # * {Types::ReplicationConfigurationTemplate#ebs_encryption #ebs_encryption} => String
1888
+ # * {Types::ReplicationConfigurationTemplate#ebs_encryption_key_arn #ebs_encryption_key_arn} => String
1889
+ # * {Types::ReplicationConfigurationTemplate#replication_configuration_template_id #replication_configuration_template_id} => String
1890
+ # * {Types::ReplicationConfigurationTemplate#replication_server_instance_type #replication_server_instance_type} => String
1891
+ # * {Types::ReplicationConfigurationTemplate#replication_servers_security_groups_i_ds #replication_servers_security_groups_i_ds} => Array&lt;String&gt;
1892
+ # * {Types::ReplicationConfigurationTemplate#staging_area_subnet_id #staging_area_subnet_id} => String
1893
+ # * {Types::ReplicationConfigurationTemplate#staging_area_tags #staging_area_tags} => Hash&lt;String,String&gt;
1894
+ # * {Types::ReplicationConfigurationTemplate#tags #tags} => Hash&lt;String,String&gt;
1895
+ # * {Types::ReplicationConfigurationTemplate#use_dedicated_replication_server #use_dedicated_replication_server} => Boolean
1896
+ #
1897
+ # @example Request syntax with placeholder values
1898
+ #
1899
+ # resp = client.update_replication_configuration_template({
1900
+ # arn: "ARN",
1901
+ # associate_default_security_group: false,
1902
+ # bandwidth_throttling: 1,
1903
+ # create_public_ip: false,
1904
+ # data_plane_routing: "PRIVATE_IP", # accepts PRIVATE_IP, PUBLIC_IP
1905
+ # default_large_staging_disk_type: "GP2", # accepts GP2, ST1
1906
+ # ebs_encryption: "NONE", # accepts NONE, DEFAULT, CUSTOM
1907
+ # ebs_encryption_key_arn: "ARN",
1908
+ # replication_configuration_template_id: "ReplicationConfigurationTemplateID", # required
1909
+ # replication_server_instance_type: "EC2InstanceType",
1910
+ # replication_servers_security_groups_i_ds: ["SecurityGroupID"],
1911
+ # staging_area_subnet_id: "SubnetID",
1912
+ # staging_area_tags: {
1913
+ # "TagKey" => "TagValue",
1914
+ # },
1915
+ # use_dedicated_replication_server: false,
1916
+ # })
1917
+ #
1918
+ # @example Response structure
1919
+ #
1920
+ # resp.arn #=> String
1921
+ # resp.associate_default_security_group #=> Boolean
1922
+ # resp.bandwidth_throttling #=> Integer
1923
+ # resp.create_public_ip #=> Boolean
1924
+ # resp.data_plane_routing #=> String, one of "PRIVATE_IP", "PUBLIC_IP"
1925
+ # resp.default_large_staging_disk_type #=> String, one of "GP2", "ST1"
1926
+ # resp.ebs_encryption #=> String, one of "NONE", "DEFAULT", "CUSTOM"
1927
+ # resp.ebs_encryption_key_arn #=> String
1928
+ # resp.replication_configuration_template_id #=> String
1929
+ # resp.replication_server_instance_type #=> String
1930
+ # resp.replication_servers_security_groups_i_ds #=> Array
1931
+ # resp.replication_servers_security_groups_i_ds[0] #=> String
1932
+ # resp.staging_area_subnet_id #=> String
1933
+ # resp.staging_area_tags #=> Hash
1934
+ # resp.staging_area_tags["TagKey"] #=> String
1935
+ # resp.tags #=> Hash
1936
+ # resp.tags["TagKey"] #=> String
1937
+ # resp.use_dedicated_replication_server #=> Boolean
1938
+ #
1939
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mgn-2020-02-26/UpdateReplicationConfigurationTemplate AWS API Documentation
1940
+ #
1941
+ # @overload update_replication_configuration_template(params = {})
1942
+ # @param [Hash] params ({})
1943
+ def update_replication_configuration_template(params = {}, options = {})
1944
+ req = build_request(:update_replication_configuration_template, params)
1945
+ req.send_request(options)
1946
+ end
1947
+
1948
+ # @!endgroup
1949
+
1950
+ # @param params ({})
1951
+ # @api private
1952
+ def build_request(operation_name, params = {})
1953
+ handlers = @handlers.for(operation_name)
1954
+ context = Seahorse::Client::RequestContext.new(
1955
+ operation_name: operation_name,
1956
+ operation: config.api.operation(operation_name),
1957
+ client: self,
1958
+ params: params,
1959
+ config: config)
1960
+ context[:gem_name] = 'aws-sdk-mgn'
1961
+ context[:gem_version] = '1.0.0'
1962
+ Seahorse::Client::Request.new(handlers, context)
1963
+ end
1964
+
1965
+ # @api private
1966
+ # @deprecated
1967
+ def waiter_names
1968
+ []
1969
+ end
1970
+
1971
+ class << self
1972
+
1973
+ # @api private
1974
+ attr_reader :identifier
1975
+
1976
+ # @api private
1977
+ def errors_module
1978
+ Errors
1979
+ end
1980
+
1981
+ end
1982
+ end
1983
+ end