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 +4 -4
- data/lib/aws-sdk-efs.rb +1 -1
- data/lib/aws-sdk-efs/client.rb +847 -770
- data/lib/aws-sdk-efs/client_api.rb +323 -325
- data/lib/aws-sdk-efs/errors.rb +4 -13
- data/lib/aws-sdk-efs/resource.rb +12 -14
- data/lib/aws-sdk-efs/types.rb +523 -490
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 482469d307f45f3914c2355edbab99fdce1d61d0
|
4
|
+
data.tar.gz: f29d09e12970bccdf43f8517608d9cbd52be66bc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 304ff7cc2d7209384b7cb044a6eeada0c5aa27749898c3a8de3f8a9e9157ae358292189546e539e69f6e79eb26f9616acefc6bf99891af1bef8462e2551d7870
|
7
|
+
data.tar.gz: a38c6b0f352c90d18ac79d49e65b2911c0c71a6e61448b549d6fa3e4fb50d901c8d33d6bedbaac6e3cd59460e37f8212118cff303da629b6043bff79e184e10e
|
data/lib/aws-sdk-efs.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# WARNING ABOUT GENERATED CODE
|
2
2
|
#
|
3
|
-
# This file is generated. See the contributing for
|
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
|
data/lib/aws-sdk-efs/client.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# WARNING ABOUT GENERATED CODE
|
2
2
|
#
|
3
|
-
# This file is generated. See the contributing for
|
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
|
-
|
28
|
-
class Client < Seahorse::Client::Base
|
26
|
+
module Aws::EFS
|
27
|
+
class Client < Seahorse::Client::Base
|
29
28
|
|
30
|
-
|
29
|
+
include Aws::ClientStubs
|
31
30
|
|
32
|
-
|
31
|
+
@identifier = :efs
|
33
32
|
|
34
|
-
|
33
|
+
set_api(ClientApi::API)
|
35
34
|
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
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
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
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
|
-
|
144
|
+
# @!group API Operations
|
132
145
|
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
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
|
-
|
396
|
-
|
397
|
-
|
398
|
-
|
399
|
-
|
400
|
-
|
401
|
-
|
402
|
-
|
403
|
-
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
|
411
|
-
|
412
|
-
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
|
420
|
-
|
421
|
-
|
422
|
-
|
423
|
-
|
424
|
-
|
425
|
-
|
426
|
-
|
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
|
-
|
429
|
-
|
430
|
-
|
431
|
-
|
432
|
-
|
433
|
-
|
434
|
-
|
435
|
-
|
436
|
-
|
437
|
-
|
438
|
-
|
439
|
-
|
440
|
-
|
441
|
-
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
|
446
|
-
|
447
|
-
|
448
|
-
|
449
|
-
|
450
|
-
|
451
|
-
|
452
|
-
|
453
|
-
|
454
|
-
|
455
|
-
|
456
|
-
|
457
|
-
|
458
|
-
|
459
|
-
|
460
|
-
|
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
|
-
|
463
|
-
|
464
|
-
|
465
|
-
|
466
|
-
|
467
|
-
|
468
|
-
|
469
|
-
|
470
|
-
|
471
|
-
|
472
|
-
|
473
|
-
|
474
|
-
|
475
|
-
|
476
|
-
|
477
|
-
|
478
|
-
|
479
|
-
|
480
|
-
|
481
|
-
|
482
|
-
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
495
|
-
|
496
|
-
|
497
|
-
|
498
|
-
|
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
|
-
|
510
|
-
|
511
|
-
|
512
|
-
|
513
|
-
|
514
|
-
|
515
|
-
|
516
|
-
|
517
|
-
|
518
|
-
|
519
|
-
|
520
|
-
|
521
|
-
|
522
|
-
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
|
527
|
-
|
528
|
-
|
529
|
-
|
530
|
-
|
531
|
-
|
532
|
-
|
533
|
-
|
534
|
-
|
535
|
-
|
536
|
-
|
537
|
-
|
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
|
-
|
540
|
-
|
541
|
-
|
542
|
-
|
543
|
-
|
544
|
-
|
545
|
-
|
546
|
-
|
547
|
-
|
548
|
-
|
549
|
-
|
550
|
-
|
551
|
-
|
552
|
-
|
553
|
-
|
554
|
-
|
555
|
-
|
556
|
-
|
557
|
-
|
558
|
-
|
559
|
-
|
560
|
-
|
561
|
-
|
562
|
-
|
563
|
-
|
564
|
-
|
565
|
-
|
566
|
-
|
567
|
-
|
568
|
-
|
569
|
-
|
570
|
-
|
571
|
-
|
572
|
-
|
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<Types::FileSystemDescription>
|
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
|
-
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
625
|
-
|
626
|
-
|
627
|
-
|
628
|
-
|
629
|
-
|
630
|
-
|
631
|
-
|
632
|
-
|
633
|
-
|
634
|
-
|
635
|
-
|
636
|
-
|
637
|
-
|
638
|
-
|
639
|
-
|
640
|
-
|
641
|
-
|
642
|
-
|
643
|
-
|
644
|
-
|
645
|
-
|
646
|
-
|
647
|
-
|
648
|
-
|
649
|
-
|
650
|
-
|
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<Types::FileSystemDescription>
|
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
|
-
|
653
|
-
|
654
|
-
|
655
|
-
|
656
|
-
|
657
|
-
|
658
|
-
|
659
|
-
|
660
|
-
|
661
|
-
|
662
|
-
|
663
|
-
|
664
|
-
|
665
|
-
|
666
|
-
|
667
|
-
|
668
|
-
|
669
|
-
|
670
|
-
|
671
|
-
|
672
|
-
|
673
|
-
|
674
|
-
|
675
|
-
|
676
|
-
|
677
|
-
|
678
|
-
|
679
|
-
|
680
|
-
|
681
|
-
|
682
|
-
|
683
|
-
|
684
|
-
|
685
|
-
|
686
|
-
|
687
|
-
|
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<String>
|
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
|
-
|
709
|
-
|
710
|
-
|
711
|
-
|
712
|
-
|
713
|
-
|
714
|
-
|
715
|
-
|
716
|
-
|
717
|
-
|
718
|
-
|
719
|
-
|
720
|
-
|
721
|
-
|
722
|
-
|
723
|
-
|
724
|
-
|
725
|
-
|
726
|
-
|
727
|
-
|
728
|
-
|
729
|
-
|
730
|
-
|
731
|
-
|
732
|
-
|
733
|
-
|
734
|
-
|
735
|
-
|
736
|
-
|
737
|
-
|
738
|
-
|
739
|
-
|
740
|
-
|
741
|
-
|
742
|
-
|
743
|
-
|
744
|
-
|
745
|
-
|
746
|
-
|
747
|
-
|
748
|
-
|
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<Types::MountTargetDescription>
|
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
|
-
|
751
|
-
|
752
|
-
|
753
|
-
|
754
|
-
|
755
|
-
|
756
|
-
|
757
|
-
|
758
|
-
|
759
|
-
|
760
|
-
|
761
|
-
|
762
|
-
|
763
|
-
|
764
|
-
|
765
|
-
|
766
|
-
|
767
|
-
|
768
|
-
|
769
|
-
|
770
|
-
|
771
|
-
|
772
|
-
|
773
|
-
|
774
|
-
|
775
|
-
|
776
|
-
|
777
|
-
|
778
|
-
|
779
|
-
|
780
|
-
|
781
|
-
|
782
|
-
|
783
|
-
|
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<Types::Tag>
|
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
|
-
|
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
|
-
|
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
|
-
|
803
|
-
|
804
|
-
|
805
|
-
|
806
|
-
|
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
|
-
|
880
|
+
# @api private
|
881
|
+
# @deprecated
|
882
|
+
def waiter_names
|
883
|
+
[]
|
884
|
+
end
|
809
885
|
|
810
|
-
|
811
|
-
attr_reader :identifier
|
886
|
+
class << self
|
812
887
|
|
813
|
-
|
814
|
-
|
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
|