aws-sdk-efs 1.0.0.rc1 → 1.0.0.rc2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ee82353887fcfd4287415a7af156c504bebd04ec
4
- data.tar.gz: f7ad57e4b23e883598a7867304ba701fc09e0551
3
+ metadata.gz: 482469d307f45f3914c2355edbab99fdce1d61d0
4
+ data.tar.gz: f29d09e12970bccdf43f8517608d9cbd52be66bc
5
5
  SHA512:
6
- metadata.gz: 37f99e3f2872b491984af946fe2cf1ea769e37de9212115b403d224f81f2fd08bff75d5610663a8088d0d01dceb64aa39bd87a9467c8a0409b4e178e66e56c60
7
- data.tar.gz: 43a8da4af13bb8c68ce478da6b84b10080977a8f1566cfb3baf857605395bc1e98814fe805b57242c581c0c9fc6b454ac1832da14f4d0aa6c12c8894b9796d99
6
+ metadata.gz: 304ff7cc2d7209384b7cb044a6eeada0c5aa27749898c3a8de3f8a9e9157ae358292189546e539e69f6e79eb26f9616acefc6bf99891af1bef8462e2551d7870
7
+ data.tar.gz: a38c6b0f352c90d18ac79d49e65b2911c0c71a6e61448b549d6fa3e4fb50d901c8d33d6bedbaac6e3cd59460e37f8212118cff303da629b6043bff79e184e10e
@@ -1,6 +1,6 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
@@ -1,6 +1,6 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
@@ -23,799 +23,876 @@ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
23
23
 
24
24
  Aws::Plugins::GlobalConfiguration.add_identifier(:efs)
25
25
 
26
- module Aws
27
- module EFS
28
- class Client < Seahorse::Client::Base
26
+ module Aws::EFS
27
+ class Client < Seahorse::Client::Base
29
28
 
30
- include Aws::ClientStubs
29
+ include Aws::ClientStubs
31
30
 
32
- @identifier = :efs
31
+ @identifier = :efs
33
32
 
34
- set_api(ClientApi::API)
33
+ set_api(ClientApi::API)
35
34
 
36
- add_plugin(Seahorse::Client::Plugins::ContentLength)
37
- add_plugin(Aws::Plugins::CredentialsConfiguration)
38
- add_plugin(Aws::Plugins::Logging)
39
- add_plugin(Aws::Plugins::ParamConverter)
40
- add_plugin(Aws::Plugins::ParamValidator)
41
- add_plugin(Aws::Plugins::UserAgent)
42
- add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
- add_plugin(Aws::Plugins::RetryErrors)
44
- add_plugin(Aws::Plugins::GlobalConfiguration)
45
- add_plugin(Aws::Plugins::RegionalEndpoint)
46
- add_plugin(Aws::Plugins::ResponsePaging)
47
- add_plugin(Aws::Plugins::StubResponses)
48
- add_plugin(Aws::Plugins::IdempotencyToken)
49
- add_plugin(Aws::Plugins::SignatureV4)
50
- add_plugin(Aws::Plugins::Protocols::RestJson)
35
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
36
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
37
+ add_plugin(Aws::Plugins::Logging)
38
+ add_plugin(Aws::Plugins::ParamConverter)
39
+ add_plugin(Aws::Plugins::ParamValidator)
40
+ add_plugin(Aws::Plugins::UserAgent)
41
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
42
+ add_plugin(Aws::Plugins::RetryErrors)
43
+ add_plugin(Aws::Plugins::GlobalConfiguration)
44
+ add_plugin(Aws::Plugins::RegionalEndpoint)
45
+ add_plugin(Aws::Plugins::ResponsePaging)
46
+ add_plugin(Aws::Plugins::StubResponses)
47
+ add_plugin(Aws::Plugins::IdempotencyToken)
48
+ add_plugin(Aws::Plugins::SignatureV4)
49
+ add_plugin(Aws::Plugins::Protocols::RestJson)
51
50
 
52
- # @option options [required, Aws::CredentialProvider] :credentials
53
- # Your AWS credentials. This can be an instance of any one of the
54
- # following classes:
55
- #
56
- # * `Aws::Credentials` - Used for configuring static, non-refreshing
57
- # credentials.
58
- #
59
- # * `Aws::InstanceProfileCredentials` - Used for loading credentials
60
- # from an EC2 IMDS on an EC2 instance.
61
- #
62
- # * `Aws::SharedCredentials` - Used for loading credentials from a
63
- # shared file, such as `~/.aws/config`.
64
- #
65
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
66
- #
67
- # When `:credentials` are not configured directly, the following
68
- # locations will be searched for credentials:
69
- #
70
- # * `Aws.config[:credentials]`
71
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
72
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
73
- # * `~/.aws/credentials`
74
- # * `~/.aws/config`
75
- # * EC2 IMDS instance profile - When used by default, the timeouts are
76
- # very aggressive. Construct and pass an instance of
77
- # `Aws::InstanceProfileCredentails` to enable retries and extended
78
- # timeouts.
79
- # @option options [required, String] :region
80
- # The AWS region to connect to. The configured `:region` is
81
- # used to determine the service `:endpoint`. When not passed,
82
- # a default `:region` is search for in the following locations:
83
- #
84
- # * `Aws.config[:region]`
85
- # * `ENV['AWS_REGION']`
86
- # * `ENV['AMAZON_REGION']`
87
- # * `ENV['AWS_DEFAULT_REGION']`
88
- # * `~/.aws/credentials`
89
- # * `~/.aws/config`
90
- # @option options [String] :access_key_id
91
- # @option options [Boolean] :convert_params (true)
92
- # When `true`, an attempt is made to coerce request parameters into
93
- # the required types.
94
- # @option options [String] :endpoint
95
- # The client endpoint is normally constructed from the `:region`
96
- # option. You should only configure an `:endpoint` when connecting
97
- # to test endpoints. This should be avalid HTTP(S) URI.
98
- # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
99
- # The log formatter.
100
- # @option options [Symbol] :log_level (:info)
101
- # The log level to send messages to the `:logger` at.
102
- # @option options [Logger] :logger
103
- # The Logger instance to send log messages to. If this option
104
- # is not set, logging will be disabled.
105
- # @option options [String] :profile ("default")
106
- # Used when loading credentials from the shared credentials file
107
- # at HOME/.aws/credentials. When not specified, 'default' is used.
108
- # @option options [Integer] :retry_limit (3)
109
- # The maximum number of times to retry failed requests. Only
110
- # ~ 500 level server errors and certain ~ 400 level client errors
111
- # are retried. Generally, these are throttling errors, data
112
- # checksum errors, networking errors, timeout errors and auth
113
- # errors from expired credentials.
114
- # @option options [String] :secret_access_key
115
- # @option options [String] :session_token
116
- # @option options [Boolean] :stub_responses (false)
117
- # Causes the client to return stubbed responses. By default
118
- # fake responses are generated and returned. You can specify
119
- # the response data to return or errors to raise by calling
120
- # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
121
- #
122
- # ** Please note ** When response stubbing is enabled, no HTTP
123
- # requests are made, and retries are disabled.
124
- # @option options [Boolean] :validate_params (true)
125
- # When `true`, request parameters are validated before
126
- # sending the request.
127
- def initialize(*args)
128
- super
129
- end
51
+ # @option options [required, Aws::CredentialProvider] :credentials
52
+ # Your AWS credentials. This can be an instance of any one of the
53
+ # following classes:
54
+ #
55
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
56
+ # credentials.
57
+ #
58
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
59
+ # from an EC2 IMDS on an EC2 instance.
60
+ #
61
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
62
+ # shared file, such as `~/.aws/config`.
63
+ #
64
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
65
+ #
66
+ # When `:credentials` are not configured directly, the following
67
+ # locations will be searched for credentials:
68
+ #
69
+ # * `Aws.config[:credentials]`
70
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
71
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
72
+ # * `~/.aws/credentials`
73
+ # * `~/.aws/config`
74
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
75
+ # very aggressive. Construct and pass an instance of
76
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
77
+ # timeouts.
78
+ #
79
+ # @option options [required, String] :region
80
+ # The AWS region to connect to. The configured `:region` is
81
+ # used to determine the service `:endpoint`. When not passed,
82
+ # a default `:region` is search for in the following locations:
83
+ #
84
+ # * `Aws.config[:region]`
85
+ # * `ENV['AWS_REGION']`
86
+ # * `ENV['AMAZON_REGION']`
87
+ # * `ENV['AWS_DEFAULT_REGION']`
88
+ # * `~/.aws/credentials`
89
+ # * `~/.aws/config`
90
+ #
91
+ # @option options [String] :access_key_id
92
+ #
93
+ # @option options [Boolean] :convert_params (true)
94
+ # When `true`, an attempt is made to coerce request parameters into
95
+ # the required types.
96
+ #
97
+ # @option options [String] :endpoint
98
+ # The client endpoint is normally constructed from the `:region`
99
+ # option. You should only configure an `:endpoint` when connecting
100
+ # to test endpoints. This should be avalid HTTP(S) URI.
101
+ #
102
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
103
+ # The log formatter.
104
+ #
105
+ # @option options [Symbol] :log_level (:info)
106
+ # The log level to send messages to the `:logger` at.
107
+ #
108
+ # @option options [Logger] :logger
109
+ # The Logger instance to send log messages to. If this option
110
+ # is not set, logging will be disabled.
111
+ #
112
+ # @option options [String] :profile ("default")
113
+ # Used when loading credentials from the shared credentials file
114
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
115
+ #
116
+ # @option options [Integer] :retry_limit (3)
117
+ # The maximum number of times to retry failed requests. Only
118
+ # ~ 500 level server errors and certain ~ 400 level client errors
119
+ # are retried. Generally, these are throttling errors, data
120
+ # checksum errors, networking errors, timeout errors and auth
121
+ # errors from expired credentials.
122
+ #
123
+ # @option options [String] :secret_access_key
124
+ #
125
+ # @option options [String] :session_token
126
+ #
127
+ # @option options [Boolean] :stub_responses (false)
128
+ # Causes the client to return stubbed responses. By default
129
+ # fake responses are generated and returned. You can specify
130
+ # the response data to return or errors to raise by calling
131
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
132
+ #
133
+ # ** Please note ** When response stubbing is enabled, no HTTP
134
+ # requests are made, and retries are disabled.
135
+ #
136
+ # @option options [Boolean] :validate_params (true)
137
+ # When `true`, request parameters are validated before
138
+ # sending the request.
139
+ #
140
+ def initialize(*args)
141
+ super
142
+ end
130
143
 
131
- # @!group API Operations
144
+ # @!group API Operations
132
145
 
133
- # Creates a new, empty file system. The operation requires a creation
134
- # token in the request that Amazon EFS uses to ensure idempotent
135
- # creation (calling the operation with same creation token has no
136
- # effect). If a file system does not currently exist that is owned by
137
- # the caller's AWS account with the specified creation token, this
138
- # operation does the following:
139
- #
140
- # * Creates a new, empty file system. The file system will have an
141
- # Amazon EFS assigned ID, and an initial lifecycle state `creating`.
142
- #
143
- # * Returns with the description of the created file system.
144
- #
145
- # Otherwise, this operation returns a `FileSystemAlreadyExists` error
146
- # with the ID of the existing file system.
147
- #
148
- # <note markdown="1"> For basic use cases, you can use a randomly generated UUID for the
149
- # creation token.
150
- #
151
- # </note>
152
- #
153
- # The idempotent operation allows you to retry a `CreateFileSystem` call
154
- # without risk of creating an extra file system. This can happen when an
155
- # initial call fails in a way that leaves it uncertain whether or not a
156
- # file system was actually created. An example might be that a transport
157
- # level timeout occurred or your connection was reset. As long as you
158
- # use the same creation token, if the initial call had succeeded in
159
- # creating a file system, the client can learn of its existence from the
160
- # `FileSystemAlreadyExists` error.
161
- #
162
- # <note markdown="1"> The `CreateFileSystem` call returns while the file system's lifecycle
163
- # state is still `creating`. You can check the file system creation
164
- # status by calling the DescribeFileSystems operation, which among other
165
- # things returns the file system state.
166
- #
167
- # </note>
168
- #
169
- # This operation also takes an optional `PerformanceMode` parameter that
170
- # you choose for your file system. We recommend `generalPurpose`
171
- # performance mode for most file systems. File systems using the `maxIO`
172
- # performance mode can scale to higher levels of aggregate throughput
173
- # and operations per second with a tradeoff of slightly higher latencies
174
- # for most file operations. The performance mode can't be changed after
175
- # the file system has been created. For more information, see [Amazon
176
- # EFS: Performance Modes][1].
177
- #
178
- # After the file system is fully created, Amazon EFS sets its lifecycle
179
- # state to `available`, at which point you can create one or more mount
180
- # targets for the file system in your VPC. For more information, see
181
- # CreateMountTarget. You mount your Amazon EFS file system on an EC2
182
- # instances in your VPC via the mount target. For more information, see
183
- # [Amazon EFS: How it Works][2].
184
- #
185
- # This operation requires permissions for the
186
- # `elasticfilesystem:CreateFileSystem` action.
187
- #
188
- #
189
- #
190
- # [1]: http://docs.aws.amazon.com/efs/latest/ug/performance.html#performancemodes.html
191
- # [2]: http://docs.aws.amazon.com/efs/latest/ug/how-it-works.html
192
- # @option params [required, String] :creation_token
193
- # String of up to 64 ASCII characters. Amazon EFS uses this to ensure
194
- # idempotent creation.
195
- # @option params [String] :performance_mode
196
- # The `PerformanceMode` of the file system. We recommend
197
- # `generalPurpose` performance mode for most file systems. File systems
198
- # using the `maxIO` performance mode can scale to higher levels of
199
- # aggregate throughput and operations per second with a tradeoff of
200
- # slightly higher latencies for most file operations. This can't be
201
- # changed after the file system has been created.
202
- # @return [Types::FileSystemDescription] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
203
- #
204
- # * {Types::FileSystemDescription#owner_id #OwnerId} => String
205
- # * {Types::FileSystemDescription#creation_token #CreationToken} => String
206
- # * {Types::FileSystemDescription#file_system_id #FileSystemId} => String
207
- # * {Types::FileSystemDescription#creation_time #CreationTime} => Time
208
- # * {Types::FileSystemDescription#life_cycle_state #LifeCycleState} => String
209
- # * {Types::FileSystemDescription#name #Name} => String
210
- # * {Types::FileSystemDescription#number_of_mount_targets #NumberOfMountTargets} => Integer
211
- # * {Types::FileSystemDescription#size_in_bytes #SizeInBytes} => Types::FileSystemSize
212
- # * {Types::FileSystemDescription#performance_mode #PerformanceMode} => String
213
- #
214
- # @example Request syntax with placeholder values
215
- # resp = client.create_file_system({
216
- # creation_token: "CreationToken", # required
217
- # performance_mode: "generalPurpose", # accepts generalPurpose, maxIO
218
- # })
219
- #
220
- # @example Response structure
221
- # resp.owner_id #=> String
222
- # resp.creation_token #=> String
223
- # resp.file_system_id #=> String
224
- # resp.creation_time #=> Time
225
- # resp.life_cycle_state #=> String, one of "creating", "available", "deleting", "deleted"
226
- # resp.name #=> String
227
- # resp.number_of_mount_targets #=> Integer
228
- # resp.size_in_bytes.value #=> Integer
229
- # resp.size_in_bytes.timestamp #=> Time
230
- # resp.performance_mode #=> String, one of "generalPurpose", "maxIO"
231
- # @overload create_file_system(params = {})
232
- # @param [Hash] params ({})
233
- def create_file_system(params = {}, options = {})
234
- req = build_request(:create_file_system, params)
235
- req.send_request(options)
236
- end
237
-
238
- # Creates a mount target for a file system. You can then mount the file
239
- # system on EC2 instances via the mount target.
240
- #
241
- # You can create one mount target in each Availability Zone in your VPC.
242
- # All EC2 instances in a VPC within a given Availability Zone share a
243
- # single mount target for a given file system. If you have multiple
244
- # subnets in an Availability Zone, you create a mount target in one of
245
- # the subnets. EC2 instances do not need to be in the same subnet as the
246
- # mount target in order to access their file system. For more
247
- # information, see [Amazon EFS: How it Works][1].
248
- #
249
- # In the request, you also specify a file system ID for which you are
250
- # creating the mount target and the file system's lifecycle state must
251
- # be `available`. For more information, see DescribeFileSystems.
252
- #
253
- # In the request, you also provide a subnet ID, which determines the
254
- # following:
255
- #
256
- # * VPC in which Amazon EFS creates the mount target
257
- #
258
- # * Availability Zone in which Amazon EFS creates the mount target
259
- #
260
- # * IP address range from which Amazon EFS selects the IP address of the
261
- # mount target (if you don't specify an IP address in the request)
262
- #
263
- # After creating the mount target, Amazon EFS returns a response that
264
- # includes, a `MountTargetId` and an `IpAddress`. You use this IP
265
- # address when mounting the file system in an EC2 instance. You can also
266
- # use the mount target's DNS name when mounting the file system. The
267
- # EC2 instance on which you mount the file system via the mount target
268
- # can resolve the mount target's DNS name to its IP address. For more
269
- # information, see [How it Works: Implementation Overview][2].
270
- #
271
- # Note that you can create mount targets for a file system in only one
272
- # VPC, and there can be only one mount target per Availability Zone.
273
- # That is, if the file system already has one or more mount targets
274
- # created for it, the subnet specified in the request to add another
275
- # mount target must meet the following requirements:
276
- #
277
- # * Must belong to the same VPC as the subnets of the existing mount
278
- # targets
279
- #
280
- # * Must not be in the same Availability Zone as any of the subnets of
281
- # the existing mount targets
282
- #
283
- # If the request satisfies the requirements, Amazon EFS does the
284
- # following:
285
- #
286
- # * Creates a new mount target in the specified subnet.
287
- #
288
- # * Also creates a new network interface in the subnet as follows:
289
- #
290
- # * If the request provides an `IpAddress`, Amazon EFS assigns that IP
291
- # address to the network interface. Otherwise, Amazon EFS assigns a
292
- # free address in the subnet (in the same way that the Amazon EC2
293
- # `CreateNetworkInterface` call does when a request does not specify
294
- # a primary private IP address).
295
- #
296
- # * If the request provides `SecurityGroups`, this network interface
297
- # is associated with those security groups. Otherwise, it belongs to
298
- # the default security group for the subnet's VPC.
299
- #
300
- # * Assigns the description `Mount target fsmt-id for file system
301
- # fs-id ` where ` fsmt-id ` is the mount target ID, and ` fs-id ` is
302
- # the `FileSystemId`.
303
- #
304
- # * Sets the `requesterManaged` property of the network interface to
305
- # `true`, and the `requesterId` value to `EFS`.
306
- #
307
- # Each Amazon EFS mount target has one corresponding requestor-managed
308
- # EC2 network interface. After the network interface is created,
309
- # Amazon EFS sets the `NetworkInterfaceId` field in the mount
310
- # target's description to the network interface ID, and the
311
- # `IpAddress` field to its address. If network interface creation
312
- # fails, the entire `CreateMountTarget` operation fails.
313
- #
314
- # <note markdown="1"> The `CreateMountTarget` call returns only after creating the network
315
- # interface, but while the mount target state is still `creating`. You
316
- # can check the mount target creation status by calling the
317
- # DescribeFileSystems operation, which among other things returns the
318
- # mount target state.
319
- #
320
- # </note>
321
- #
322
- # We recommend you create a mount target in each of the Availability
323
- # Zones. There are cost considerations for using a file system in an
324
- # Availability Zone through a mount target created in another
325
- # Availability Zone. For more information, see [Amazon EFS][3]. In
326
- # addition, by always using a mount target local to the instance's
327
- # Availability Zone, you eliminate a partial failure scenario. If the
328
- # Availability Zone in which your mount target is created goes down,
329
- # then you won't be able to access your file system through that mount
330
- # target.
331
- #
332
- # This operation requires permissions for the following action on the
333
- # file system:
334
- #
335
- # * `elasticfilesystem:CreateMountTarget`
336
- #
337
- # ^
338
- #
339
- # This operation also requires permissions for the following Amazon EC2
340
- # actions:
341
- #
342
- # * `ec2:DescribeSubnets`
343
- #
344
- # * `ec2:DescribeNetworkInterfaces`
345
- #
346
- # * `ec2:CreateNetworkInterface`
347
- #
348
- #
349
- #
350
- # [1]: http://docs.aws.amazon.com/efs/latest/ug/how-it-works.html
351
- # [2]: http://docs.aws.amazon.com/efs/latest/ug/how-it-works.html#how-it-works-implementation
352
- # [3]: http://aws.amazon.com/efs/
353
- # @option params [required, String] :file_system_id
354
- # ID of the file system for which to create the mount target.
355
- # @option params [required, String] :subnet_id
356
- # ID of the subnet to add the mount target in.
357
- # @option params [String] :ip_address
358
- # Valid IPv4 address within the address range of the specified subnet.
359
- # @option params [Array<String>] :security_groups
360
- # Up to five VPC security group IDs, of the form `sg-xxxxxxxx`. These
361
- # must be for the same VPC as subnet specified.
362
- # @return [Types::MountTargetDescription] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
363
- #
364
- # * {Types::MountTargetDescription#owner_id #OwnerId} => String
365
- # * {Types::MountTargetDescription#mount_target_id #MountTargetId} => String
366
- # * {Types::MountTargetDescription#file_system_id #FileSystemId} => String
367
- # * {Types::MountTargetDescription#subnet_id #SubnetId} => String
368
- # * {Types::MountTargetDescription#life_cycle_state #LifeCycleState} => String
369
- # * {Types::MountTargetDescription#ip_address #IpAddress} => String
370
- # * {Types::MountTargetDescription#network_interface_id #NetworkInterfaceId} => String
371
- #
372
- # @example Request syntax with placeholder values
373
- # resp = client.create_mount_target({
374
- # file_system_id: "FileSystemId", # required
375
- # subnet_id: "SubnetId", # required
376
- # ip_address: "IpAddress",
377
- # security_groups: ["SecurityGroup"],
378
- # })
379
- #
380
- # @example Response structure
381
- # resp.owner_id #=> String
382
- # resp.mount_target_id #=> String
383
- # resp.file_system_id #=> String
384
- # resp.subnet_id #=> String
385
- # resp.life_cycle_state #=> String, one of "creating", "available", "deleting", "deleted"
386
- # resp.ip_address #=> String
387
- # resp.network_interface_id #=> String
388
- # @overload create_mount_target(params = {})
389
- # @param [Hash] params ({})
390
- def create_mount_target(params = {}, options = {})
391
- req = build_request(:create_mount_target, params)
392
- req.send_request(options)
393
- end
146
+ # Creates a new, empty file system. The operation requires a creation
147
+ # token in the request that Amazon EFS uses to ensure idempotent
148
+ # creation (calling the operation with same creation token has no
149
+ # effect). If a file system does not currently exist that is owned by
150
+ # the caller's AWS account with the specified creation token, this
151
+ # operation does the following:
152
+ #
153
+ # * Creates a new, empty file system. The file system will have an
154
+ # Amazon EFS assigned ID, and an initial lifecycle state `creating`.
155
+ #
156
+ # * Returns with the description of the created file system.
157
+ #
158
+ # Otherwise, this operation returns a `FileSystemAlreadyExists` error
159
+ # with the ID of the existing file system.
160
+ #
161
+ # <note markdown="1"> For basic use cases, you can use a randomly generated UUID for the
162
+ # creation token.
163
+ #
164
+ # </note>
165
+ #
166
+ # The idempotent operation allows you to retry a `CreateFileSystem` call
167
+ # without risk of creating an extra file system. This can happen when an
168
+ # initial call fails in a way that leaves it uncertain whether or not a
169
+ # file system was actually created. An example might be that a transport
170
+ # level timeout occurred or your connection was reset. As long as you
171
+ # use the same creation token, if the initial call had succeeded in
172
+ # creating a file system, the client can learn of its existence from the
173
+ # `FileSystemAlreadyExists` error.
174
+ #
175
+ # <note markdown="1"> The `CreateFileSystem` call returns while the file system's lifecycle
176
+ # state is still `creating`. You can check the file system creation
177
+ # status by calling the DescribeFileSystems operation, which among other
178
+ # things returns the file system state.
179
+ #
180
+ # </note>
181
+ #
182
+ # This operation also takes an optional `PerformanceMode` parameter that
183
+ # you choose for your file system. We recommend `generalPurpose`
184
+ # performance mode for most file systems. File systems using the `maxIO`
185
+ # performance mode can scale to higher levels of aggregate throughput
186
+ # and operations per second with a tradeoff of slightly higher latencies
187
+ # for most file operations. The performance mode can't be changed after
188
+ # the file system has been created. For more information, see [Amazon
189
+ # EFS: Performance Modes][1].
190
+ #
191
+ # After the file system is fully created, Amazon EFS sets its lifecycle
192
+ # state to `available`, at which point you can create one or more mount
193
+ # targets for the file system in your VPC. For more information, see
194
+ # CreateMountTarget. You mount your Amazon EFS file system on an EC2
195
+ # instances in your VPC via the mount target. For more information, see
196
+ # [Amazon EFS: How it Works][2].
197
+ #
198
+ # This operation requires permissions for the
199
+ # `elasticfilesystem:CreateFileSystem` action.
200
+ #
201
+ #
202
+ #
203
+ # [1]: http://docs.aws.amazon.com/efs/latest/ug/performance.html#performancemodes.html
204
+ # [2]: http://docs.aws.amazon.com/efs/latest/ug/how-it-works.html
205
+ #
206
+ # @option params [required, String] :creation_token
207
+ # String of up to 64 ASCII characters. Amazon EFS uses this to ensure
208
+ # idempotent creation.
209
+ #
210
+ # @option params [String] :performance_mode
211
+ # The `PerformanceMode` of the file system. We recommend
212
+ # `generalPurpose` performance mode for most file systems. File systems
213
+ # using the `maxIO` performance mode can scale to higher levels of
214
+ # aggregate throughput and operations per second with a tradeoff of
215
+ # slightly higher latencies for most file operations. This can't be
216
+ # changed after the file system has been created.
217
+ #
218
+ # @return [Types::FileSystemDescription] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
219
+ #
220
+ # * {Types::FileSystemDescription#owner_id #owner_id} => String
221
+ # * {Types::FileSystemDescription#creation_token #creation_token} => String
222
+ # * {Types::FileSystemDescription#file_system_id #file_system_id} => String
223
+ # * {Types::FileSystemDescription#creation_time #creation_time} => Time
224
+ # * {Types::FileSystemDescription#life_cycle_state #life_cycle_state} => String
225
+ # * {Types::FileSystemDescription#name #name} => String
226
+ # * {Types::FileSystemDescription#number_of_mount_targets #number_of_mount_targets} => Integer
227
+ # * {Types::FileSystemDescription#size_in_bytes #size_in_bytes} => Types::FileSystemSize
228
+ # * {Types::FileSystemDescription#performance_mode #performance_mode} => String
229
+ #
230
+ # @example Request syntax with placeholder values
231
+ #
232
+ # resp = client.create_file_system({
233
+ # creation_token: "CreationToken", # required
234
+ # performance_mode: "generalPurpose", # accepts generalPurpose, maxIO
235
+ # })
236
+ #
237
+ # @example Response structure
238
+ #
239
+ # resp.owner_id #=> String
240
+ # resp.creation_token #=> String
241
+ # resp.file_system_id #=> String
242
+ # resp.creation_time #=> Time
243
+ # resp.life_cycle_state #=> String, one of "creating", "available", "deleting", "deleted"
244
+ # resp.name #=> String
245
+ # resp.number_of_mount_targets #=> Integer
246
+ # resp.size_in_bytes.value #=> Integer
247
+ # resp.size_in_bytes.timestamp #=> Time
248
+ # resp.performance_mode #=> String, one of "generalPurpose", "maxIO"
249
+ #
250
+ # @overload create_file_system(params = {})
251
+ # @param [Hash] params ({})
252
+ def create_file_system(params = {}, options = {})
253
+ req = build_request(:create_file_system, params)
254
+ req.send_request(options)
255
+ end
394
256
 
395
- # Creates or overwrites tags associated with a file system. Each tag is
396
- # a key-value pair. If a tag key specified in the request already exists
397
- # on the file system, this operation overwrites its value with the value
398
- # provided in the request. If you add the `Name` tag to your file
399
- # system, Amazon EFS returns it in the response to the
400
- # DescribeFileSystems operation.
401
- #
402
- # This operation requires permission for the
403
- # `elasticfilesystem:CreateTags` action.
404
- # @option params [required, String] :file_system_id
405
- # ID of the file system whose tags you want to modify (String). This
406
- # operation modifies the tags only, not the file system.
407
- # @option params [required, Array<Types::Tag>] :tags
408
- # Array of `Tag` objects to add. Each `Tag` object is a key-value pair.
409
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
410
- #
411
- # @example Request syntax with placeholder values
412
- # resp = client.create_tags({
413
- # file_system_id: "FileSystemId", # required
414
- # tags: [ # required
415
- # {
416
- # key: "TagKey", # required
417
- # value: "TagValue", # required
418
- # },
419
- # ],
420
- # })
421
- # @overload create_tags(params = {})
422
- # @param [Hash] params ({})
423
- def create_tags(params = {}, options = {})
424
- req = build_request(:create_tags, params)
425
- req.send_request(options)
426
- end
257
+ # Creates a mount target for a file system. You can then mount the file
258
+ # system on EC2 instances via the mount target.
259
+ #
260
+ # You can create one mount target in each Availability Zone in your VPC.
261
+ # All EC2 instances in a VPC within a given Availability Zone share a
262
+ # single mount target for a given file system. If you have multiple
263
+ # subnets in an Availability Zone, you create a mount target in one of
264
+ # the subnets. EC2 instances do not need to be in the same subnet as the
265
+ # mount target in order to access their file system. For more
266
+ # information, see [Amazon EFS: How it Works][1].
267
+ #
268
+ # In the request, you also specify a file system ID for which you are
269
+ # creating the mount target and the file system's lifecycle state must
270
+ # be `available`. For more information, see DescribeFileSystems.
271
+ #
272
+ # In the request, you also provide a subnet ID, which determines the
273
+ # following:
274
+ #
275
+ # * VPC in which Amazon EFS creates the mount target
276
+ #
277
+ # * Availability Zone in which Amazon EFS creates the mount target
278
+ #
279
+ # * IP address range from which Amazon EFS selects the IP address of the
280
+ # mount target (if you don't specify an IP address in the request)
281
+ #
282
+ # After creating the mount target, Amazon EFS returns a response that
283
+ # includes, a `MountTargetId` and an `IpAddress`. You use this IP
284
+ # address when mounting the file system in an EC2 instance. You can also
285
+ # use the mount target's DNS name when mounting the file system. The
286
+ # EC2 instance on which you mount the file system via the mount target
287
+ # can resolve the mount target's DNS name to its IP address. For more
288
+ # information, see [How it Works: Implementation Overview][2].
289
+ #
290
+ # Note that you can create mount targets for a file system in only one
291
+ # VPC, and there can be only one mount target per Availability Zone.
292
+ # That is, if the file system already has one or more mount targets
293
+ # created for it, the subnet specified in the request to add another
294
+ # mount target must meet the following requirements:
295
+ #
296
+ # * Must belong to the same VPC as the subnets of the existing mount
297
+ # targets
298
+ #
299
+ # * Must not be in the same Availability Zone as any of the subnets of
300
+ # the existing mount targets
301
+ #
302
+ # If the request satisfies the requirements, Amazon EFS does the
303
+ # following:
304
+ #
305
+ # * Creates a new mount target in the specified subnet.
306
+ #
307
+ # * Also creates a new network interface in the subnet as follows:
308
+ #
309
+ # * If the request provides an `IpAddress`, Amazon EFS assigns that IP
310
+ # address to the network interface. Otherwise, Amazon EFS assigns a
311
+ # free address in the subnet (in the same way that the Amazon EC2
312
+ # `CreateNetworkInterface` call does when a request does not specify
313
+ # a primary private IP address).
314
+ #
315
+ # * If the request provides `SecurityGroups`, this network interface
316
+ # is associated with those security groups. Otherwise, it belongs to
317
+ # the default security group for the subnet's VPC.
318
+ #
319
+ # * Assigns the description `Mount target fsmt-id for file system
320
+ # fs-id ` where ` fsmt-id ` is the mount target ID, and ` fs-id ` is
321
+ # the `FileSystemId`.
322
+ #
323
+ # * Sets the `requesterManaged` property of the network interface to
324
+ # `true`, and the `requesterId` value to `EFS`.
325
+ #
326
+ # Each Amazon EFS mount target has one corresponding requester-managed
327
+ # EC2 network interface. After the network interface is created,
328
+ # Amazon EFS sets the `NetworkInterfaceId` field in the mount
329
+ # target's description to the network interface ID, and the
330
+ # `IpAddress` field to its address. If network interface creation
331
+ # fails, the entire `CreateMountTarget` operation fails.
332
+ #
333
+ # <note markdown="1"> The `CreateMountTarget` call returns only after creating the network
334
+ # interface, but while the mount target state is still `creating`, you
335
+ # can check the mount target creation status by calling the
336
+ # DescribeMountTargets operation, which among other things returns the
337
+ # mount target state.
338
+ #
339
+ # </note>
340
+ #
341
+ # We recommend you create a mount target in each of the Availability
342
+ # Zones. There are cost considerations for using a file system in an
343
+ # Availability Zone through a mount target created in another
344
+ # Availability Zone. For more information, see [Amazon EFS][3]. In
345
+ # addition, by always using a mount target local to the instance's
346
+ # Availability Zone, you eliminate a partial failure scenario. If the
347
+ # Availability Zone in which your mount target is created goes down,
348
+ # then you won't be able to access your file system through that mount
349
+ # target.
350
+ #
351
+ # This operation requires permissions for the following action on the
352
+ # file system:
353
+ #
354
+ # * `elasticfilesystem:CreateMountTarget`
355
+ #
356
+ # ^
357
+ #
358
+ # This operation also requires permissions for the following Amazon EC2
359
+ # actions:
360
+ #
361
+ # * `ec2:DescribeSubnets`
362
+ #
363
+ # * `ec2:DescribeNetworkInterfaces`
364
+ #
365
+ # * `ec2:CreateNetworkInterface`
366
+ #
367
+ #
368
+ #
369
+ # [1]: http://docs.aws.amazon.com/efs/latest/ug/how-it-works.html
370
+ # [2]: http://docs.aws.amazon.com/efs/latest/ug/how-it-works.html#how-it-works-implementation
371
+ # [3]: http://aws.amazon.com/efs/
372
+ #
373
+ # @option params [required, String] :file_system_id
374
+ # ID of the file system for which to create the mount target.
375
+ #
376
+ # @option params [required, String] :subnet_id
377
+ # ID of the subnet to add the mount target in.
378
+ #
379
+ # @option params [String] :ip_address
380
+ # Valid IPv4 address within the address range of the specified subnet.
381
+ #
382
+ # @option params [Array<String>] :security_groups
383
+ # Up to five VPC security group IDs, of the form `sg-xxxxxxxx`. These
384
+ # must be for the same VPC as subnet specified.
385
+ #
386
+ # @return [Types::MountTargetDescription] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
387
+ #
388
+ # * {Types::MountTargetDescription#owner_id #owner_id} => String
389
+ # * {Types::MountTargetDescription#mount_target_id #mount_target_id} => String
390
+ # * {Types::MountTargetDescription#file_system_id #file_system_id} => String
391
+ # * {Types::MountTargetDescription#subnet_id #subnet_id} => String
392
+ # * {Types::MountTargetDescription#life_cycle_state #life_cycle_state} => String
393
+ # * {Types::MountTargetDescription#ip_address #ip_address} => String
394
+ # * {Types::MountTargetDescription#network_interface_id #network_interface_id} => String
395
+ #
396
+ # @example Request syntax with placeholder values
397
+ #
398
+ # resp = client.create_mount_target({
399
+ # file_system_id: "FileSystemId", # required
400
+ # subnet_id: "SubnetId", # required
401
+ # ip_address: "IpAddress",
402
+ # security_groups: ["SecurityGroup"],
403
+ # })
404
+ #
405
+ # @example Response structure
406
+ #
407
+ # resp.owner_id #=> String
408
+ # resp.mount_target_id #=> String
409
+ # resp.file_system_id #=> String
410
+ # resp.subnet_id #=> String
411
+ # resp.life_cycle_state #=> String, one of "creating", "available", "deleting", "deleted"
412
+ # resp.ip_address #=> String
413
+ # resp.network_interface_id #=> String
414
+ #
415
+ # @overload create_mount_target(params = {})
416
+ # @param [Hash] params ({})
417
+ def create_mount_target(params = {}, options = {})
418
+ req = build_request(:create_mount_target, params)
419
+ req.send_request(options)
420
+ end
427
421
 
428
- # Deletes a file system, permanently severing access to its contents.
429
- # Upon return, the file system no longer exists and you can't access
430
- # any contents of the deleted file system.
431
- #
432
- # You can't delete a file system that is in use. That is, if the file
433
- # system has any mount targets, you must first delete them. For more
434
- # information, see DescribeMountTargets and DeleteMountTarget.
435
- #
436
- # <note markdown="1"> The `DeleteFileSystem` call returns while the file system state is
437
- # still `deleting`. You can check the file system deletion status by
438
- # calling the DescribeFileSystems operation, which returns a list of
439
- # file systems in your account. If you pass file system ID or creation
440
- # token for the deleted file system, the DescribeFileSystems returns a
441
- # `404 FileSystemNotFound` error.
442
- #
443
- # </note>
444
- #
445
- # This operation requires permissions for the
446
- # `elasticfilesystem:DeleteFileSystem` action.
447
- # @option params [required, String] :file_system_id
448
- # ID of the file system you want to delete.
449
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
450
- #
451
- # @example Request syntax with placeholder values
452
- # resp = client.delete_file_system({
453
- # file_system_id: "FileSystemId", # required
454
- # })
455
- # @overload delete_file_system(params = {})
456
- # @param [Hash] params ({})
457
- def delete_file_system(params = {}, options = {})
458
- req = build_request(:delete_file_system, params)
459
- req.send_request(options)
460
- end
422
+ # Creates or overwrites tags associated with a file system. Each tag is
423
+ # a key-value pair. If a tag key specified in the request already exists
424
+ # on the file system, this operation overwrites its value with the value
425
+ # provided in the request. If you add the `Name` tag to your file
426
+ # system, Amazon EFS returns it in the response to the
427
+ # DescribeFileSystems operation.
428
+ #
429
+ # This operation requires permission for the
430
+ # `elasticfilesystem:CreateTags` action.
431
+ #
432
+ # @option params [required, String] :file_system_id
433
+ # ID of the file system whose tags you want to modify (String). This
434
+ # operation modifies the tags only, not the file system.
435
+ #
436
+ # @option params [required, Array<Types::Tag>] :tags
437
+ # Array of `Tag` objects to add. Each `Tag` object is a key-value pair.
438
+ #
439
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
440
+ #
441
+ # @example Request syntax with placeholder values
442
+ #
443
+ # resp = client.create_tags({
444
+ # file_system_id: "FileSystemId", # required
445
+ # tags: [ # required
446
+ # {
447
+ # key: "TagKey", # required
448
+ # value: "TagValue", # required
449
+ # },
450
+ # ],
451
+ # })
452
+ #
453
+ # @overload create_tags(params = {})
454
+ # @param [Hash] params ({})
455
+ def create_tags(params = {}, options = {})
456
+ req = build_request(:create_tags, params)
457
+ req.send_request(options)
458
+ end
461
459
 
462
- # Deletes the specified mount target.
463
- #
464
- # This operation forcibly breaks any mounts of the file system via the
465
- # mount target that is being deleted, which might disrupt instances or
466
- # applications using those mounts. To avoid applications getting cut off
467
- # abruptly, you might consider unmounting any mounts of the mount
468
- # target, if feasible. The operation also deletes the associated network
469
- # interface. Uncommitted writes may be lost, but breaking a mount target
470
- # using this operation does not corrupt the file system itself. The file
471
- # system you created remains. You can mount an EC2 instance in your VPC
472
- # via another mount target.
473
- #
474
- # This operation requires permissions for the following action on the
475
- # file system:
476
- #
477
- # * `elasticfilesystem:DeleteMountTarget`
478
- #
479
- # ^
480
- #
481
- # <note markdown="1"> The `DeleteMountTarget` call returns while the mount target state is
482
- # still `deleting`. You can check the mount target deletion by calling
483
- # the DescribeMountTargets operation, which returns a list of mount
484
- # target descriptions for the given file system.
485
- #
486
- # </note>
487
- #
488
- # The operation also requires permissions for the following Amazon EC2
489
- # action on the mount target's network interface:
490
- #
491
- # * `ec2:DeleteNetworkInterface`
492
- #
493
- # ^
494
- # @option params [required, String] :mount_target_id
495
- # ID of the mount target to delete (String).
496
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
497
- #
498
- # @example Request syntax with placeholder values
499
- # resp = client.delete_mount_target({
500
- # mount_target_id: "MountTargetId", # required
501
- # })
502
- # @overload delete_mount_target(params = {})
503
- # @param [Hash] params ({})
504
- def delete_mount_target(params = {}, options = {})
505
- req = build_request(:delete_mount_target, params)
506
- req.send_request(options)
507
- end
460
+ # Deletes a file system, permanently severing access to its contents.
461
+ # Upon return, the file system no longer exists and you can't access
462
+ # any contents of the deleted file system.
463
+ #
464
+ # You can't delete a file system that is in use. That is, if the file
465
+ # system has any mount targets, you must first delete them. For more
466
+ # information, see DescribeMountTargets and DeleteMountTarget.
467
+ #
468
+ # <note markdown="1"> The `DeleteFileSystem` call returns while the file system state is
469
+ # still `deleting`. You can check the file system deletion status by
470
+ # calling the DescribeFileSystems operation, which returns a list of
471
+ # file systems in your account. If you pass file system ID or creation
472
+ # token for the deleted file system, the DescribeFileSystems returns a
473
+ # `404 FileSystemNotFound` error.
474
+ #
475
+ # </note>
476
+ #
477
+ # This operation requires permissions for the
478
+ # `elasticfilesystem:DeleteFileSystem` action.
479
+ #
480
+ # @option params [required, String] :file_system_id
481
+ # ID of the file system you want to delete.
482
+ #
483
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
484
+ #
485
+ # @example Request syntax with placeholder values
486
+ #
487
+ # resp = client.delete_file_system({
488
+ # file_system_id: "FileSystemId", # required
489
+ # })
490
+ #
491
+ # @overload delete_file_system(params = {})
492
+ # @param [Hash] params ({})
493
+ def delete_file_system(params = {}, options = {})
494
+ req = build_request(:delete_file_system, params)
495
+ req.send_request(options)
496
+ end
508
497
 
509
- # Deletes the specified tags from a file system. If the `DeleteTags`
510
- # request includes a tag key that does not exist, Amazon EFS ignores it
511
- # and doesn't cause an error. For more information about tags and
512
- # related restrictions, see [Tag Restrictions][1] in the *AWS Billing
513
- # and Cost Management User Guide*.
514
- #
515
- # This operation requires permissions for the
516
- # `elasticfilesystem:DeleteTags` action.
517
- #
518
- #
519
- #
520
- # [1]: http://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html
521
- # @option params [required, String] :file_system_id
522
- # ID of the file system whose tags you want to delete (String).
523
- # @option params [required, Array<String>] :tag_keys
524
- # List of tag keys to delete.
525
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
526
- #
527
- # @example Request syntax with placeholder values
528
- # resp = client.delete_tags({
529
- # file_system_id: "FileSystemId", # required
530
- # tag_keys: ["TagKey"], # required
531
- # })
532
- # @overload delete_tags(params = {})
533
- # @param [Hash] params ({})
534
- def delete_tags(params = {}, options = {})
535
- req = build_request(:delete_tags, params)
536
- req.send_request(options)
537
- end
498
+ # Deletes the specified mount target.
499
+ #
500
+ # This operation forcibly breaks any mounts of the file system via the
501
+ # mount target that is being deleted, which might disrupt instances or
502
+ # applications using those mounts. To avoid applications getting cut off
503
+ # abruptly, you might consider unmounting any mounts of the mount
504
+ # target, if feasible. The operation also deletes the associated network
505
+ # interface. Uncommitted writes may be lost, but breaking a mount target
506
+ # using this operation does not corrupt the file system itself. The file
507
+ # system you created remains. You can mount an EC2 instance in your VPC
508
+ # via another mount target.
509
+ #
510
+ # This operation requires permissions for the following action on the
511
+ # file system:
512
+ #
513
+ # * `elasticfilesystem:DeleteMountTarget`
514
+ #
515
+ # ^
516
+ #
517
+ # <note markdown="1"> The `DeleteMountTarget` call returns while the mount target state is
518
+ # still `deleting`. You can check the mount target deletion by calling
519
+ # the DescribeMountTargets operation, which returns a list of mount
520
+ # target descriptions for the given file system.
521
+ #
522
+ # </note>
523
+ #
524
+ # The operation also requires permissions for the following Amazon EC2
525
+ # action on the mount target's network interface:
526
+ #
527
+ # * `ec2:DeleteNetworkInterface`
528
+ #
529
+ # ^
530
+ #
531
+ # @option params [required, String] :mount_target_id
532
+ # ID of the mount target to delete (String).
533
+ #
534
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
535
+ #
536
+ # @example Request syntax with placeholder values
537
+ #
538
+ # resp = client.delete_mount_target({
539
+ # mount_target_id: "MountTargetId", # required
540
+ # })
541
+ #
542
+ # @overload delete_mount_target(params = {})
543
+ # @param [Hash] params ({})
544
+ def delete_mount_target(params = {}, options = {})
545
+ req = build_request(:delete_mount_target, params)
546
+ req.send_request(options)
547
+ end
538
548
 
539
- # Returns the description of a specific Amazon EFS file system if either
540
- # the file system `CreationToken` or the `FileSystemId` is provided.
541
- # Otherwise, it returns descriptions of all file systems owned by the
542
- # caller's AWS account in the AWS Region of the endpoint that you're
543
- # calling.
544
- #
545
- # When retrieving all file system descriptions, you can optionally
546
- # specify the `MaxItems` parameter to limit the number of descriptions
547
- # in a response. If more file system descriptions remain, Amazon EFS
548
- # returns a `NextMarker`, an opaque token, in the response. In this
549
- # case, you should send a subsequent request with the `Marker` request
550
- # parameter set to the value of `NextMarker`.
551
- #
552
- # To retrieve a list of your file system descriptions, this operation is
553
- # used in an iterative process, where `DescribeFileSystems` is called
554
- # first without the `Marker` and then the operation continues to call it
555
- # with the `Marker` parameter set to the value of the `NextMarker` from
556
- # the previous response until the response has no `NextMarker`.
557
- #
558
- # The implementation may return fewer than `MaxItems` file system
559
- # descriptions while still including a `NextMarker` value.
560
- #
561
- # The order of file systems returned in the response of one
562
- # `DescribeFileSystems` call and the order of file systems returned
563
- # across the responses of a multi-call iteration is unspecified.
564
- #
565
- # This operation requires permissions for the
566
- # `elasticfilesystem:DescribeFileSystems` action.
567
- # @option params [Integer] :max_items
568
- # (Optional) Specifies the maximum number of file systems to return in
569
- # the response (integer). This parameter value must be greater than 0.
570
- # The number of items that Amazon EFS returns is the minimum of the
571
- # `MaxItems` parameter specified in the request and the service's
572
- # internal maximum number of items per page.
573
- # @option params [String] :marker
574
- # (Optional) Opaque pagination token returned from a previous
575
- # `DescribeFileSystems` operation (String). If present, specifies to
576
- # continue the list from where the returning call had left off.
577
- # @option params [String] :creation_token
578
- # (Optional) Restricts the list to the file system with this creation
579
- # token (String). You specify a creation token when you create an Amazon
580
- # EFS file system.
581
- # @option params [String] :file_system_id
582
- # (Optional) ID of the file system whose description you want to
583
- # retrieve (String).
584
- # @return [Types::DescribeFileSystemsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
585
- #
586
- # * {Types::DescribeFileSystemsResponse#marker #Marker} => String
587
- # * {Types::DescribeFileSystemsResponse#file_systems #FileSystems} => Array&lt;Types::FileSystemDescription&gt;
588
- # * {Types::DescribeFileSystemsResponse#next_marker #NextMarker} => String
589
- #
590
- # @example Request syntax with placeholder values
591
- # resp = client.describe_file_systems({
592
- # max_items: 1,
593
- # marker: "Marker",
594
- # creation_token: "CreationToken",
595
- # file_system_id: "FileSystemId",
596
- # })
597
- #
598
- # @example Response structure
599
- # resp.marker #=> String
600
- # resp.file_systems #=> Array
601
- # resp.file_systems[0].owner_id #=> String
602
- # resp.file_systems[0].creation_token #=> String
603
- # resp.file_systems[0].file_system_id #=> String
604
- # resp.file_systems[0].creation_time #=> Time
605
- # resp.file_systems[0].life_cycle_state #=> String, one of "creating", "available", "deleting", "deleted"
606
- # resp.file_systems[0].name #=> String
607
- # resp.file_systems[0].number_of_mount_targets #=> Integer
608
- # resp.file_systems[0].size_in_bytes.value #=> Integer
609
- # resp.file_systems[0].size_in_bytes.timestamp #=> Time
610
- # resp.file_systems[0].performance_mode #=> String, one of "generalPurpose", "maxIO"
611
- # resp.next_marker #=> String
612
- # @overload describe_file_systems(params = {})
613
- # @param [Hash] params ({})
614
- def describe_file_systems(params = {}, options = {})
615
- req = build_request(:describe_file_systems, params)
616
- req.send_request(options)
617
- end
549
+ # Deletes the specified tags from a file system. If the `DeleteTags`
550
+ # request includes a tag key that does not exist, Amazon EFS ignores it
551
+ # and doesn't cause an error. For more information about tags and
552
+ # related restrictions, see [Tag Restrictions][1] in the *AWS Billing
553
+ # and Cost Management User Guide*.
554
+ #
555
+ # This operation requires permissions for the
556
+ # `elasticfilesystem:DeleteTags` action.
557
+ #
558
+ #
559
+ #
560
+ # [1]: http://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html
561
+ #
562
+ # @option params [required, String] :file_system_id
563
+ # ID of the file system whose tags you want to delete (String).
564
+ #
565
+ # @option params [required, Array<String>] :tag_keys
566
+ # List of tag keys to delete.
567
+ #
568
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
569
+ #
570
+ # @example Request syntax with placeholder values
571
+ #
572
+ # resp = client.delete_tags({
573
+ # file_system_id: "FileSystemId", # required
574
+ # tag_keys: ["TagKey"], # required
575
+ # })
576
+ #
577
+ # @overload delete_tags(params = {})
578
+ # @param [Hash] params ({})
579
+ def delete_tags(params = {}, options = {})
580
+ req = build_request(:delete_tags, params)
581
+ req.send_request(options)
582
+ end
618
583
 
619
- # Returns the security groups currently in effect for a mount target.
620
- # This operation requires that the network interface of the mount target
621
- # has been created and the lifecycle state of the mount target is not
622
- # `deleted`.
623
- #
624
- # This operation requires permissions for the following actions:
625
- #
626
- # * `elasticfilesystem:DescribeMountTargetSecurityGroups` action on the
627
- # mount target's file system.
628
- #
629
- # * `ec2:DescribeNetworkInterfaceAttribute` action on the mount
630
- # target's network interface.
631
- # @option params [required, String] :mount_target_id
632
- # ID of the mount target whose security groups you want to retrieve.
633
- # @return [Types::DescribeMountTargetSecurityGroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
634
- #
635
- # * {Types::DescribeMountTargetSecurityGroupsResponse#security_groups #SecurityGroups} => Array&lt;String&gt;
636
- #
637
- # @example Request syntax with placeholder values
638
- # resp = client.describe_mount_target_security_groups({
639
- # mount_target_id: "MountTargetId", # required
640
- # })
641
- #
642
- # @example Response structure
643
- # resp.security_groups #=> Array
644
- # resp.security_groups[0] #=> String
645
- # @overload describe_mount_target_security_groups(params = {})
646
- # @param [Hash] params ({})
647
- def describe_mount_target_security_groups(params = {}, options = {})
648
- req = build_request(:describe_mount_target_security_groups, params)
649
- req.send_request(options)
650
- end
584
+ # Returns the description of a specific Amazon EFS file system if either
585
+ # the file system `CreationToken` or the `FileSystemId` is provided.
586
+ # Otherwise, it returns descriptions of all file systems owned by the
587
+ # caller's AWS account in the AWS Region of the endpoint that you're
588
+ # calling.
589
+ #
590
+ # When retrieving all file system descriptions, you can optionally
591
+ # specify the `MaxItems` parameter to limit the number of descriptions
592
+ # in a response. If more file system descriptions remain, Amazon EFS
593
+ # returns a `NextMarker`, an opaque token, in the response. In this
594
+ # case, you should send a subsequent request with the `Marker` request
595
+ # parameter set to the value of `NextMarker`.
596
+ #
597
+ # To retrieve a list of your file system descriptions, this operation is
598
+ # used in an iterative process, where `DescribeFileSystems` is called
599
+ # first without the `Marker` and then the operation continues to call it
600
+ # with the `Marker` parameter set to the value of the `NextMarker` from
601
+ # the previous response until the response has no `NextMarker`.
602
+ #
603
+ # The implementation may return fewer than `MaxItems` file system
604
+ # descriptions while still including a `NextMarker` value.
605
+ #
606
+ # The order of file systems returned in the response of one
607
+ # `DescribeFileSystems` call and the order of file systems returned
608
+ # across the responses of a multi-call iteration is unspecified.
609
+ #
610
+ # This operation requires permissions for the
611
+ # `elasticfilesystem:DescribeFileSystems` action.
612
+ #
613
+ # @option params [Integer] :max_items
614
+ # (Optional) Specifies the maximum number of file systems to return in
615
+ # the response (integer). This parameter value must be greater than 0.
616
+ # The number of items that Amazon EFS returns is the minimum of the
617
+ # `MaxItems` parameter specified in the request and the service's
618
+ # internal maximum number of items per page.
619
+ #
620
+ # @option params [String] :marker
621
+ # (Optional) Opaque pagination token returned from a previous
622
+ # `DescribeFileSystems` operation (String). If present, specifies to
623
+ # continue the list from where the returning call had left off.
624
+ #
625
+ # @option params [String] :creation_token
626
+ # (Optional) Restricts the list to the file system with this creation
627
+ # token (String). You specify a creation token when you create an Amazon
628
+ # EFS file system.
629
+ #
630
+ # @option params [String] :file_system_id
631
+ # (Optional) ID of the file system whose description you want to
632
+ # retrieve (String).
633
+ #
634
+ # @return [Types::DescribeFileSystemsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
635
+ #
636
+ # * {Types::DescribeFileSystemsResponse#marker #marker} => String
637
+ # * {Types::DescribeFileSystemsResponse#file_systems #file_systems} => Array&lt;Types::FileSystemDescription&gt;
638
+ # * {Types::DescribeFileSystemsResponse#next_marker #next_marker} => String
639
+ #
640
+ # @example Request syntax with placeholder values
641
+ #
642
+ # resp = client.describe_file_systems({
643
+ # max_items: 1,
644
+ # marker: "Marker",
645
+ # creation_token: "CreationToken",
646
+ # file_system_id: "FileSystemId",
647
+ # })
648
+ #
649
+ # @example Response structure
650
+ #
651
+ # resp.marker #=> String
652
+ # resp.file_systems #=> Array
653
+ # resp.file_systems[0].owner_id #=> String
654
+ # resp.file_systems[0].creation_token #=> String
655
+ # resp.file_systems[0].file_system_id #=> String
656
+ # resp.file_systems[0].creation_time #=> Time
657
+ # resp.file_systems[0].life_cycle_state #=> String, one of "creating", "available", "deleting", "deleted"
658
+ # resp.file_systems[0].name #=> String
659
+ # resp.file_systems[0].number_of_mount_targets #=> Integer
660
+ # resp.file_systems[0].size_in_bytes.value #=> Integer
661
+ # resp.file_systems[0].size_in_bytes.timestamp #=> Time
662
+ # resp.file_systems[0].performance_mode #=> String, one of "generalPurpose", "maxIO"
663
+ # resp.next_marker #=> String
664
+ #
665
+ # @overload describe_file_systems(params = {})
666
+ # @param [Hash] params ({})
667
+ def describe_file_systems(params = {}, options = {})
668
+ req = build_request(:describe_file_systems, params)
669
+ req.send_request(options)
670
+ end
651
671
 
652
- # Returns the descriptions of all the current mount targets, or a
653
- # specific mount target, for a file system. When requesting all of the
654
- # current mount targets, the order of mount targets returned in the
655
- # response is unspecified.
656
- #
657
- # This operation requires permissions for the
658
- # `elasticfilesystem:DescribeMountTargets` action, on either the file
659
- # system ID that you specify in `FileSystemId`, or on the file system of
660
- # the mount target that you specify in `MountTargetId`.
661
- # @option params [Integer] :max_items
662
- # (Optional) Maximum number of mount targets to return in the response.
663
- # It must be an integer with a value greater than zero.
664
- # @option params [String] :marker
665
- # (Optional) Opaque pagination token returned from a previous
666
- # `DescribeMountTargets` operation (String). If present, it specifies to
667
- # continue the list from where the previous returning call left off.
668
- # @option params [String] :file_system_id
669
- # (Optional) ID of the file system whose mount targets you want to list
670
- # (String). It must be included in your request if `MountTargetId` is
671
- # not included.
672
- # @option params [String] :mount_target_id
673
- # (Optional) ID of the mount target that you want to have described
674
- # (String). It must be included in your request if `FileSystemId` is not
675
- # included.
676
- # @return [Types::DescribeMountTargetsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
677
- #
678
- # * {Types::DescribeMountTargetsResponse#marker #Marker} => String
679
- # * {Types::DescribeMountTargetsResponse#mount_targets #MountTargets} => Array&lt;Types::MountTargetDescription&gt;
680
- # * {Types::DescribeMountTargetsResponse#next_marker #NextMarker} => String
681
- #
682
- # @example Request syntax with placeholder values
683
- # resp = client.describe_mount_targets({
684
- # max_items: 1,
685
- # marker: "Marker",
686
- # file_system_id: "FileSystemId",
687
- # mount_target_id: "MountTargetId",
688
- # })
689
- #
690
- # @example Response structure
691
- # resp.marker #=> String
692
- # resp.mount_targets #=> Array
693
- # resp.mount_targets[0].owner_id #=> String
694
- # resp.mount_targets[0].mount_target_id #=> String
695
- # resp.mount_targets[0].file_system_id #=> String
696
- # resp.mount_targets[0].subnet_id #=> String
697
- # resp.mount_targets[0].life_cycle_state #=> String, one of "creating", "available", "deleting", "deleted"
698
- # resp.mount_targets[0].ip_address #=> String
699
- # resp.mount_targets[0].network_interface_id #=> String
700
- # resp.next_marker #=> String
701
- # @overload describe_mount_targets(params = {})
702
- # @param [Hash] params ({})
703
- def describe_mount_targets(params = {}, options = {})
704
- req = build_request(:describe_mount_targets, params)
705
- req.send_request(options)
706
- end
672
+ # Returns the security groups currently in effect for a mount target.
673
+ # This operation requires that the network interface of the mount target
674
+ # has been created and the lifecycle state of the mount target is not
675
+ # `deleted`.
676
+ #
677
+ # This operation requires permissions for the following actions:
678
+ #
679
+ # * `elasticfilesystem:DescribeMountTargetSecurityGroups` action on the
680
+ # mount target's file system.
681
+ #
682
+ # * `ec2:DescribeNetworkInterfaceAttribute` action on the mount
683
+ # target's network interface.
684
+ #
685
+ # @option params [required, String] :mount_target_id
686
+ # ID of the mount target whose security groups you want to retrieve.
687
+ #
688
+ # @return [Types::DescribeMountTargetSecurityGroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
689
+ #
690
+ # * {Types::DescribeMountTargetSecurityGroupsResponse#security_groups #security_groups} => Array&lt;String&gt;
691
+ #
692
+ # @example Request syntax with placeholder values
693
+ #
694
+ # resp = client.describe_mount_target_security_groups({
695
+ # mount_target_id: "MountTargetId", # required
696
+ # })
697
+ #
698
+ # @example Response structure
699
+ #
700
+ # resp.security_groups #=> Array
701
+ # resp.security_groups[0] #=> String
702
+ #
703
+ # @overload describe_mount_target_security_groups(params = {})
704
+ # @param [Hash] params ({})
705
+ def describe_mount_target_security_groups(params = {}, options = {})
706
+ req = build_request(:describe_mount_target_security_groups, params)
707
+ req.send_request(options)
708
+ end
707
709
 
708
- # Returns the tags associated with a file system. The order of tags
709
- # returned in the response of one `DescribeTags` call and the order of
710
- # tags returned across the responses of a multi-call iteration (when
711
- # using pagination) is unspecified.
712
- #
713
- # This operation requires permissions for the
714
- # `elasticfilesystem:DescribeTags` action.
715
- # @option params [Integer] :max_items
716
- # (Optional) Maximum number of file system tags to return in the
717
- # response. It must be an integer with a value greater than zero.
718
- # @option params [String] :marker
719
- # (Optional) Opaque pagination token returned from a previous
720
- # `DescribeTags` operation (String). If present, it specifies to
721
- # continue the list from where the previous call left off.
722
- # @option params [required, String] :file_system_id
723
- # ID of the file system whose tag set you want to retrieve.
724
- # @return [Types::DescribeTagsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
725
- #
726
- # * {Types::DescribeTagsResponse#marker #Marker} => String
727
- # * {Types::DescribeTagsResponse#tags #Tags} => Array&lt;Types::Tag&gt;
728
- # * {Types::DescribeTagsResponse#next_marker #NextMarker} => String
729
- #
730
- # @example Request syntax with placeholder values
731
- # resp = client.describe_tags({
732
- # max_items: 1,
733
- # marker: "Marker",
734
- # file_system_id: "FileSystemId", # required
735
- # })
736
- #
737
- # @example Response structure
738
- # resp.marker #=> String
739
- # resp.tags #=> Array
740
- # resp.tags[0].key #=> String
741
- # resp.tags[0].value #=> String
742
- # resp.next_marker #=> String
743
- # @overload describe_tags(params = {})
744
- # @param [Hash] params ({})
745
- def describe_tags(params = {}, options = {})
746
- req = build_request(:describe_tags, params)
747
- req.send_request(options)
748
- end
710
+ # Returns the descriptions of all the current mount targets, or a
711
+ # specific mount target, for a file system. When requesting all of the
712
+ # current mount targets, the order of mount targets returned in the
713
+ # response is unspecified.
714
+ #
715
+ # This operation requires permissions for the
716
+ # `elasticfilesystem:DescribeMountTargets` action, on either the file
717
+ # system ID that you specify in `FileSystemId`, or on the file system of
718
+ # the mount target that you specify in `MountTargetId`.
719
+ #
720
+ # @option params [Integer] :max_items
721
+ # (Optional) Maximum number of mount targets to return in the response.
722
+ # It must be an integer with a value greater than zero.
723
+ #
724
+ # @option params [String] :marker
725
+ # (Optional) Opaque pagination token returned from a previous
726
+ # `DescribeMountTargets` operation (String). If present, it specifies to
727
+ # continue the list from where the previous returning call left off.
728
+ #
729
+ # @option params [String] :file_system_id
730
+ # (Optional) ID of the file system whose mount targets you want to list
731
+ # (String). It must be included in your request if `MountTargetId` is
732
+ # not included.
733
+ #
734
+ # @option params [String] :mount_target_id
735
+ # (Optional) ID of the mount target that you want to have described
736
+ # (String). It must be included in your request if `FileSystemId` is not
737
+ # included.
738
+ #
739
+ # @return [Types::DescribeMountTargetsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
740
+ #
741
+ # * {Types::DescribeMountTargetsResponse#marker #marker} => String
742
+ # * {Types::DescribeMountTargetsResponse#mount_targets #mount_targets} => Array&lt;Types::MountTargetDescription&gt;
743
+ # * {Types::DescribeMountTargetsResponse#next_marker #next_marker} => String
744
+ #
745
+ # @example Request syntax with placeholder values
746
+ #
747
+ # resp = client.describe_mount_targets({
748
+ # max_items: 1,
749
+ # marker: "Marker",
750
+ # file_system_id: "FileSystemId",
751
+ # mount_target_id: "MountTargetId",
752
+ # })
753
+ #
754
+ # @example Response structure
755
+ #
756
+ # resp.marker #=> String
757
+ # resp.mount_targets #=> Array
758
+ # resp.mount_targets[0].owner_id #=> String
759
+ # resp.mount_targets[0].mount_target_id #=> String
760
+ # resp.mount_targets[0].file_system_id #=> String
761
+ # resp.mount_targets[0].subnet_id #=> String
762
+ # resp.mount_targets[0].life_cycle_state #=> String, one of "creating", "available", "deleting", "deleted"
763
+ # resp.mount_targets[0].ip_address #=> String
764
+ # resp.mount_targets[0].network_interface_id #=> String
765
+ # resp.next_marker #=> String
766
+ #
767
+ # @overload describe_mount_targets(params = {})
768
+ # @param [Hash] params ({})
769
+ def describe_mount_targets(params = {}, options = {})
770
+ req = build_request(:describe_mount_targets, params)
771
+ req.send_request(options)
772
+ end
749
773
 
750
- # Modifies the set of security groups in effect for a mount target.
751
- #
752
- # When you create a mount target, Amazon EFS also creates a new network
753
- # interface. For more information, see CreateMountTarget. This operation
754
- # replaces the security groups in effect for the network interface
755
- # associated with a mount target, with the `SecurityGroups` provided in
756
- # the request. This operation requires that the network interface of the
757
- # mount target has been created and the lifecycle state of the mount
758
- # target is not `deleted`.
759
- #
760
- # The operation requires permissions for the following actions:
761
- #
762
- # * `elasticfilesystem:ModifyMountTargetSecurityGroups` action on the
763
- # mount target's file system.
764
- #
765
- # * `ec2:ModifyNetworkInterfaceAttribute` action on the mount target's
766
- # network interface.
767
- # @option params [required, String] :mount_target_id
768
- # ID of the mount target whose security groups you want to modify.
769
- # @option params [Array<String>] :security_groups
770
- # Array of up to five VPC security group IDs.
771
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
772
- #
773
- # @example Request syntax with placeholder values
774
- # resp = client.modify_mount_target_security_groups({
775
- # mount_target_id: "MountTargetId", # required
776
- # security_groups: ["SecurityGroup"],
777
- # })
778
- # @overload modify_mount_target_security_groups(params = {})
779
- # @param [Hash] params ({})
780
- def modify_mount_target_security_groups(params = {}, options = {})
781
- req = build_request(:modify_mount_target_security_groups, params)
782
- req.send_request(options)
783
- end
774
+ # Returns the tags associated with a file system. The order of tags
775
+ # returned in the response of one `DescribeTags` call and the order of
776
+ # tags returned across the responses of a multi-call iteration (when
777
+ # using pagination) is unspecified.
778
+ #
779
+ # This operation requires permissions for the
780
+ # `elasticfilesystem:DescribeTags` action.
781
+ #
782
+ # @option params [Integer] :max_items
783
+ # (Optional) Maximum number of file system tags to return in the
784
+ # response. It must be an integer with a value greater than zero.
785
+ #
786
+ # @option params [String] :marker
787
+ # (Optional) Opaque pagination token returned from a previous
788
+ # `DescribeTags` operation (String). If present, it specifies to
789
+ # continue the list from where the previous call left off.
790
+ #
791
+ # @option params [required, String] :file_system_id
792
+ # ID of the file system whose tag set you want to retrieve.
793
+ #
794
+ # @return [Types::DescribeTagsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
795
+ #
796
+ # * {Types::DescribeTagsResponse#marker #marker} => String
797
+ # * {Types::DescribeTagsResponse#tags #tags} => Array&lt;Types::Tag&gt;
798
+ # * {Types::DescribeTagsResponse#next_marker #next_marker} => String
799
+ #
800
+ # @example Request syntax with placeholder values
801
+ #
802
+ # resp = client.describe_tags({
803
+ # max_items: 1,
804
+ # marker: "Marker",
805
+ # file_system_id: "FileSystemId", # required
806
+ # })
807
+ #
808
+ # @example Response structure
809
+ #
810
+ # resp.marker #=> String
811
+ # resp.tags #=> Array
812
+ # resp.tags[0].key #=> String
813
+ # resp.tags[0].value #=> String
814
+ # resp.next_marker #=> String
815
+ #
816
+ # @overload describe_tags(params = {})
817
+ # @param [Hash] params ({})
818
+ def describe_tags(params = {}, options = {})
819
+ req = build_request(:describe_tags, params)
820
+ req.send_request(options)
821
+ end
784
822
 
785
- # @!endgroup
823
+ # Modifies the set of security groups in effect for a mount target.
824
+ #
825
+ # When you create a mount target, Amazon EFS also creates a new network
826
+ # interface. For more information, see CreateMountTarget. This operation
827
+ # replaces the security groups in effect for the network interface
828
+ # associated with a mount target, with the `SecurityGroups` provided in
829
+ # the request. This operation requires that the network interface of the
830
+ # mount target has been created and the lifecycle state of the mount
831
+ # target is not `deleted`.
832
+ #
833
+ # The operation requires permissions for the following actions:
834
+ #
835
+ # * `elasticfilesystem:ModifyMountTargetSecurityGroups` action on the
836
+ # mount target's file system.
837
+ #
838
+ # * `ec2:ModifyNetworkInterfaceAttribute` action on the mount target's
839
+ # network interface.
840
+ #
841
+ # @option params [required, String] :mount_target_id
842
+ # ID of the mount target whose security groups you want to modify.
843
+ #
844
+ # @option params [Array<String>] :security_groups
845
+ # Array of up to five VPC security group IDs.
846
+ #
847
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
848
+ #
849
+ # @example Request syntax with placeholder values
850
+ #
851
+ # resp = client.modify_mount_target_security_groups({
852
+ # mount_target_id: "MountTargetId", # required
853
+ # security_groups: ["SecurityGroup"],
854
+ # })
855
+ #
856
+ # @overload modify_mount_target_security_groups(params = {})
857
+ # @param [Hash] params ({})
858
+ def modify_mount_target_security_groups(params = {}, options = {})
859
+ req = build_request(:modify_mount_target_security_groups, params)
860
+ req.send_request(options)
861
+ end
786
862
 
787
- # @param params ({})
788
- # @api private
789
- def build_request(operation_name, params = {})
790
- handlers = @handlers.for(operation_name)
791
- context = Seahorse::Client::RequestContext.new(
792
- operation_name: operation_name,
793
- operation: config.api.operation(operation_name),
794
- client: self,
795
- params: params,
796
- config: config)
797
- context[:gem_name] = 'aws-sdk-efs'
798
- context[:gem_version] = '1.0.0.rc1'
799
- Seahorse::Client::Request.new(handlers, context)
800
- end
863
+ # @!endgroup
801
864
 
802
- # @api private
803
- # @deprecated
804
- def waiter_names
805
- []
806
- end
865
+ # @param params ({})
866
+ # @api private
867
+ def build_request(operation_name, params = {})
868
+ handlers = @handlers.for(operation_name)
869
+ context = Seahorse::Client::RequestContext.new(
870
+ operation_name: operation_name,
871
+ operation: config.api.operation(operation_name),
872
+ client: self,
873
+ params: params,
874
+ config: config)
875
+ context[:gem_name] = 'aws-sdk-efs'
876
+ context[:gem_version] = '1.0.0.rc1'
877
+ Seahorse::Client::Request.new(handlers, context)
878
+ end
807
879
 
808
- class << self
880
+ # @api private
881
+ # @deprecated
882
+ def waiter_names
883
+ []
884
+ end
809
885
 
810
- # @api private
811
- attr_reader :identifier
886
+ class << self
812
887
 
813
- # @api private
814
- def errors_module
815
- Errors
816
- end
888
+ # @api private
889
+ attr_reader :identifier
817
890
 
891
+ # @api private
892
+ def errors_module
893
+ Errors
818
894
  end
895
+
819
896
  end
820
897
  end
821
898
  end