aws-sdk-efs 1.23.0 → 1.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,6 +10,74 @@ module Aws::EFS
10
10
 
11
11
  extend Aws::Errors::DynamicErrors
12
12
 
13
+ class AccessPointAlreadyExists < ServiceError
14
+
15
+ # @param [Seahorse::Client::RequestContext] context
16
+ # @param [String] message
17
+ # @param [Aws::EFS::Types::AccessPointAlreadyExists] data
18
+ def initialize(context, message, data = Aws::EmptyStructure.new)
19
+ super(context, message, data)
20
+ end
21
+
22
+ # @return [String]
23
+ def error_code
24
+ @data[:error_code]
25
+ end
26
+
27
+ # @return [String]
28
+ def message
29
+ @message || @data[:message]
30
+ end
31
+
32
+ # @return [String]
33
+ def access_point_id
34
+ @data[:access_point_id]
35
+ end
36
+
37
+ end
38
+
39
+ class AccessPointLimitExceeded < ServiceError
40
+
41
+ # @param [Seahorse::Client::RequestContext] context
42
+ # @param [String] message
43
+ # @param [Aws::EFS::Types::AccessPointLimitExceeded] data
44
+ def initialize(context, message, data = Aws::EmptyStructure.new)
45
+ super(context, message, data)
46
+ end
47
+
48
+ # @return [String]
49
+ def error_code
50
+ @data[:error_code]
51
+ end
52
+
53
+ # @return [String]
54
+ def message
55
+ @message || @data[:message]
56
+ end
57
+
58
+ end
59
+
60
+ class AccessPointNotFound < ServiceError
61
+
62
+ # @param [Seahorse::Client::RequestContext] context
63
+ # @param [String] message
64
+ # @param [Aws::EFS::Types::AccessPointNotFound] data
65
+ def initialize(context, message, data = Aws::EmptyStructure.new)
66
+ super(context, message, data)
67
+ end
68
+
69
+ # @return [String]
70
+ def error_code
71
+ @data[:error_code]
72
+ end
73
+
74
+ # @return [String]
75
+ def message
76
+ @message || @data[:message]
77
+ end
78
+
79
+ end
80
+
13
81
  class BadRequest < ServiceError
14
82
 
15
83
  # @param [Seahorse::Client::RequestContext] context
@@ -225,6 +293,27 @@ module Aws::EFS
225
293
 
226
294
  end
227
295
 
296
+ class InvalidPolicyException < ServiceError
297
+
298
+ # @param [Seahorse::Client::RequestContext] context
299
+ # @param [String] message
300
+ # @param [Aws::EFS::Types::InvalidPolicyException] data
301
+ def initialize(context, message, data = Aws::EmptyStructure.new)
302
+ super(context, message, data)
303
+ end
304
+
305
+ # @return [String]
306
+ def error_code
307
+ @data[:error_code]
308
+ end
309
+
310
+ # @return [String]
311
+ def message
312
+ @message || @data[:message]
313
+ end
314
+
315
+ end
316
+
228
317
  class IpAddressInUse < ServiceError
229
318
 
230
319
  # @param [Seahorse::Client::RequestContext] context
@@ -330,6 +419,27 @@ module Aws::EFS
330
419
 
331
420
  end
332
421
 
422
+ class PolicyNotFound < ServiceError
423
+
424
+ # @param [Seahorse::Client::RequestContext] context
425
+ # @param [String] message
426
+ # @param [Aws::EFS::Types::PolicyNotFound] data
427
+ def initialize(context, message, data = Aws::EmptyStructure.new)
428
+ super(context, message, data)
429
+ end
430
+
431
+ # @return [String]
432
+ def error_code
433
+ @data[:error_code]
434
+ end
435
+
436
+ # @return [String]
437
+ def message
438
+ @message || @data[:message]
439
+ end
440
+
441
+ end
442
+
333
443
  class SecurityGroupLimitExceeded < ServiceError
334
444
 
335
445
  # @param [Seahorse::Client::RequestContext] context
@@ -8,6 +8,125 @@
8
8
  module Aws::EFS
9
9
  module Types
10
10
 
11
+ # Returned if the access point you are trying to create already exists,
12
+ # with the creation token you provided in the request.
13
+ #
14
+ # @!attribute [rw] error_code
15
+ # @return [String]
16
+ #
17
+ # @!attribute [rw] message
18
+ # @return [String]
19
+ #
20
+ # @!attribute [rw] access_point_id
21
+ # @return [String]
22
+ #
23
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/AccessPointAlreadyExists AWS API Documentation
24
+ #
25
+ class AccessPointAlreadyExists < Struct.new(
26
+ :error_code,
27
+ :message,
28
+ :access_point_id)
29
+ include Aws::Structure
30
+ end
31
+
32
+ # Provides a description of an EFS file system access point.
33
+ #
34
+ # @!attribute [rw] client_token
35
+ # The opaque string specified in the request to ensure idempotent
36
+ # creation.
37
+ # @return [String]
38
+ #
39
+ # @!attribute [rw] name
40
+ # The name of the access point. This is the value of the `Name` tag.
41
+ # @return [String]
42
+ #
43
+ # @!attribute [rw] tags
44
+ # The tags associated with the access point, presented as an array of
45
+ # Tag objects.
46
+ # @return [Array<Types::Tag>]
47
+ #
48
+ # @!attribute [rw] access_point_id
49
+ # The ID of the access point, assigned by Amazon EFS.
50
+ # @return [String]
51
+ #
52
+ # @!attribute [rw] access_point_arn
53
+ # The unique Amazon Resource Name (ARN) associated with the access
54
+ # point.
55
+ # @return [String]
56
+ #
57
+ # @!attribute [rw] file_system_id
58
+ # The ID of the EFS file system that the access point applies to.
59
+ # @return [String]
60
+ #
61
+ # @!attribute [rw] posix_user
62
+ # The full POSIX identity, including the user ID, group ID, and
63
+ # secondary group IDs on the access point that is used for all file
64
+ # operations by NFS clients using the access point.
65
+ # @return [Types::PosixUser]
66
+ #
67
+ # @!attribute [rw] root_directory
68
+ # The directory on the Amazon EFS file system that the access point
69
+ # exposes as the root directory to NFS clients using the access point.
70
+ # @return [Types::RootDirectory]
71
+ #
72
+ # @!attribute [rw] owner_id
73
+ # Identified the AWS account that owns the access point resource.
74
+ # @return [String]
75
+ #
76
+ # @!attribute [rw] life_cycle_state
77
+ # Identifies the lifecycle phase of the access point.
78
+ # @return [String]
79
+ #
80
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/AccessPointDescription AWS API Documentation
81
+ #
82
+ class AccessPointDescription < Struct.new(
83
+ :client_token,
84
+ :name,
85
+ :tags,
86
+ :access_point_id,
87
+ :access_point_arn,
88
+ :file_system_id,
89
+ :posix_user,
90
+ :root_directory,
91
+ :owner_id,
92
+ :life_cycle_state)
93
+ include Aws::Structure
94
+ end
95
+
96
+ # Returned if the AWS account has already created the maximum number of
97
+ # access points allowed per file system.
98
+ #
99
+ # @!attribute [rw] error_code
100
+ # @return [String]
101
+ #
102
+ # @!attribute [rw] message
103
+ # @return [String]
104
+ #
105
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/AccessPointLimitExceeded AWS API Documentation
106
+ #
107
+ class AccessPointLimitExceeded < Struct.new(
108
+ :error_code,
109
+ :message)
110
+ include Aws::Structure
111
+ end
112
+
113
+ # Returned if the specified `AccessPointId` value doesn't exist in the
114
+ # requester's AWS account.
115
+ #
116
+ # @!attribute [rw] error_code
117
+ # @return [String]
118
+ #
119
+ # @!attribute [rw] message
120
+ # @return [String]
121
+ #
122
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/AccessPointNotFound AWS API Documentation
123
+ #
124
+ class AccessPointNotFound < Struct.new(
125
+ :error_code,
126
+ :message)
127
+ include Aws::Structure
128
+ end
129
+
11
130
  # Returned if the request is malformed or contains an error such as an
12
131
  # invalid parameter value or a missing required parameter.
13
132
  #
@@ -25,6 +144,78 @@ module Aws::EFS
25
144
  include Aws::Structure
26
145
  end
27
146
 
147
+ # @note When making an API call, you may pass CreateAccessPointRequest
148
+ # data as a hash:
149
+ #
150
+ # {
151
+ # client_token: "ClientToken", # required
152
+ # tags: [
153
+ # {
154
+ # key: "TagKey", # required
155
+ # value: "TagValue", # required
156
+ # },
157
+ # ],
158
+ # file_system_id: "FileSystemId", # required
159
+ # posix_user: {
160
+ # uid: 1, # required
161
+ # gid: 1, # required
162
+ # secondary_gids: [1],
163
+ # },
164
+ # root_directory: {
165
+ # path: "Path",
166
+ # creation_info: {
167
+ # owner_uid: 1, # required
168
+ # owner_gid: 1, # required
169
+ # permissions: "Permissions", # required
170
+ # },
171
+ # },
172
+ # }
173
+ #
174
+ # @!attribute [rw] client_token
175
+ # A string of up to 64 ASCII characters that Amazon EFS uses to ensure
176
+ # idempotent creation.
177
+ #
178
+ # **A suitable default value is auto-generated.** You should normally
179
+ # not need to pass this option.
180
+ # @return [String]
181
+ #
182
+ # @!attribute [rw] tags
183
+ # Creates tags associated with the access point. Each tag is a
184
+ # key-value pair.
185
+ # @return [Array<Types::Tag>]
186
+ #
187
+ # @!attribute [rw] file_system_id
188
+ # The ID of the EFS file system that the access point provides access
189
+ # to.
190
+ # @return [String]
191
+ #
192
+ # @!attribute [rw] posix_user
193
+ # The operating system user and group applied to all file system
194
+ # requests made using the access point.
195
+ # @return [Types::PosixUser]
196
+ #
197
+ # @!attribute [rw] root_directory
198
+ # Specifies the directory on the Amazon EFS file system that the
199
+ # access point exposes as the root directory of your file system to
200
+ # NFS clients using the access point. The clients using the access
201
+ # point can only access the root directory and below. If the
202
+ # `RootDirectory` &gt; `Path` specified does not exist, EFS creates it
203
+ # and applies the `CreationInfo` settings when a client connects to an
204
+ # access point. When specifying a `RootDirectory`, you need to provide
205
+ # the `Path`, and the `CreationInfo` is optional.
206
+ # @return [Types::RootDirectory]
207
+ #
208
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/CreateAccessPointRequest AWS API Documentation
209
+ #
210
+ class CreateAccessPointRequest < Struct.new(
211
+ :client_token,
212
+ :tags,
213
+ :file_system_id,
214
+ :posix_user,
215
+ :root_directory)
216
+ include Aws::Structure
217
+ end
218
+
28
219
  # @note When making an API call, you may pass CreateFileSystemRequest
29
220
  # data as a hash:
30
221
  #
@@ -46,6 +237,9 @@ module Aws::EFS
46
237
  # @!attribute [rw] creation_token
47
238
  # A string of up to 64 ASCII characters. Amazon EFS uses this to
48
239
  # ensure idempotent creation.
240
+ #
241
+ # **A suitable default value is auto-generated.** You should normally
242
+ # not need to pass this option.
49
243
  # @return [String]
50
244
  #
51
245
  # @!attribute [rw] performance_mode
@@ -208,6 +402,87 @@ module Aws::EFS
208
402
  include Aws::Structure
209
403
  end
210
404
 
405
+ # Required if the `RootDirectory` &gt; `Path` specified does not exist.
406
+ # Specifies the POSIX IDs and permissions to apply to the access
407
+ # point's `RootDirectory` &gt; `Path`. If the access point root
408
+ # directory does not exist, EFS creates it with these settings when a
409
+ # client connects to the access point. When specifying `CreationInfo`,
410
+ # you must include values for all properties.
411
+ #
412
+ # If you do not provide `CreationInfo` and the specified `RootDirectory`
413
+ # does not exist, attempts to mount the file system using the access
414
+ # point will fail.
415
+ #
416
+ # @note When making an API call, you may pass CreationInfo
417
+ # data as a hash:
418
+ #
419
+ # {
420
+ # owner_uid: 1, # required
421
+ # owner_gid: 1, # required
422
+ # permissions: "Permissions", # required
423
+ # }
424
+ #
425
+ # @!attribute [rw] owner_uid
426
+ # Specifies the POSIX user ID to apply to the `RootDirectory`. Accepts
427
+ # values from 0 to 2^32 (4294967295).
428
+ # @return [Integer]
429
+ #
430
+ # @!attribute [rw] owner_gid
431
+ # Specifies the POSIX group ID to apply to the `RootDirectory`.
432
+ # Accepts values from 0 to 2^32 (4294967295).
433
+ # @return [Integer]
434
+ #
435
+ # @!attribute [rw] permissions
436
+ # Specifies the POSIX permissions to apply to the `RootDirectory`, in
437
+ # the format of an octal number representing the file's mode bits.
438
+ # @return [String]
439
+ #
440
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/CreationInfo AWS API Documentation
441
+ #
442
+ class CreationInfo < Struct.new(
443
+ :owner_uid,
444
+ :owner_gid,
445
+ :permissions)
446
+ include Aws::Structure
447
+ end
448
+
449
+ # @note When making an API call, you may pass DeleteAccessPointRequest
450
+ # data as a hash:
451
+ #
452
+ # {
453
+ # access_point_id: "AccessPointId", # required
454
+ # }
455
+ #
456
+ # @!attribute [rw] access_point_id
457
+ # The ID of the access point that you want to delete.
458
+ # @return [String]
459
+ #
460
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DeleteAccessPointRequest AWS API Documentation
461
+ #
462
+ class DeleteAccessPointRequest < Struct.new(
463
+ :access_point_id)
464
+ include Aws::Structure
465
+ end
466
+
467
+ # @note When making an API call, you may pass DeleteFileSystemPolicyRequest
468
+ # data as a hash:
469
+ #
470
+ # {
471
+ # file_system_id: "FileSystemId", # required
472
+ # }
473
+ #
474
+ # @!attribute [rw] file_system_id
475
+ # Specifies the EFS file system for which to delete the
476
+ # `FileSystemPolicy`.
477
+ # @return [String]
478
+ #
479
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DeleteFileSystemPolicyRequest AWS API Documentation
480
+ #
481
+ class DeleteFileSystemPolicyRequest < Struct.new(
482
+ :file_system_id)
483
+ include Aws::Structure
484
+ end
485
+
211
486
  # @note When making an API call, you may pass DeleteFileSystemRequest
212
487
  # data as a hash:
213
488
  #
@@ -285,6 +560,86 @@ module Aws::EFS
285
560
  include Aws::Structure
286
561
  end
287
562
 
563
+ # @note When making an API call, you may pass DescribeAccessPointsRequest
564
+ # data as a hash:
565
+ #
566
+ # {
567
+ # max_results: 1,
568
+ # next_token: "Token",
569
+ # access_point_id: "AccessPointId",
570
+ # file_system_id: "FileSystemId",
571
+ # }
572
+ #
573
+ # @!attribute [rw] max_results
574
+ # (Optional) When retrieving all access points for a file system, you
575
+ # can optionally specify the `MaxItems` parameter to limit the number
576
+ # of objects returned in a response. The default value is 100.
577
+ # @return [Integer]
578
+ #
579
+ # @!attribute [rw] next_token
580
+ # `NextToken` is present if the response is paginated. You can use
581
+ # `NextMarker` in the subsequent request to fetch the next page of
582
+ # access point descriptions.
583
+ # @return [String]
584
+ #
585
+ # @!attribute [rw] access_point_id
586
+ # (Optional) Specifies an EFS access point to describe in the
587
+ # response; mutually exclusive with `FileSystemId`.
588
+ # @return [String]
589
+ #
590
+ # @!attribute [rw] file_system_id
591
+ # (Optional) If you provide a `FileSystemId`, EFS returns all access
592
+ # points for that file system; mutually exclusive with
593
+ # `AccessPointId`.
594
+ # @return [String]
595
+ #
596
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeAccessPointsRequest AWS API Documentation
597
+ #
598
+ class DescribeAccessPointsRequest < Struct.new(
599
+ :max_results,
600
+ :next_token,
601
+ :access_point_id,
602
+ :file_system_id)
603
+ include Aws::Structure
604
+ end
605
+
606
+ # @!attribute [rw] access_points
607
+ # An array of access point descriptions.
608
+ # @return [Array<Types::AccessPointDescription>]
609
+ #
610
+ # @!attribute [rw] next_token
611
+ # Present if there are more access points than returned in the
612
+ # response. You can use the NextMarker in the subsequent request to
613
+ # fetch the additional descriptions.
614
+ # @return [String]
615
+ #
616
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeAccessPointsResponse AWS API Documentation
617
+ #
618
+ class DescribeAccessPointsResponse < Struct.new(
619
+ :access_points,
620
+ :next_token)
621
+ include Aws::Structure
622
+ end
623
+
624
+ # @note When making an API call, you may pass DescribeFileSystemPolicyRequest
625
+ # data as a hash:
626
+ #
627
+ # {
628
+ # file_system_id: "FileSystemId", # required
629
+ # }
630
+ #
631
+ # @!attribute [rw] file_system_id
632
+ # Specifies which EFS file system to retrieve the `FileSystemPolicy`
633
+ # for.
634
+ # @return [String]
635
+ #
636
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeFileSystemPolicyRequest AWS API Documentation
637
+ #
638
+ class DescribeFileSystemPolicyRequest < Struct.new(
639
+ :file_system_id)
640
+ include Aws::Structure
641
+ end
642
+
288
643
  # @note When making an API call, you may pass DescribeFileSystemsRequest
289
644
  # data as a hash:
290
645
  #
@@ -297,9 +652,9 @@ module Aws::EFS
297
652
  #
298
653
  # @!attribute [rw] max_items
299
654
  # (Optional) Specifies the maximum number of file systems to return in
300
- # the response (integer). Currently, this number is automatically set
301
- # to 10, and other values are ignored. The response is paginated at 10
302
- # per page if you have more than 10 file systems.
655
+ # the response (integer). This number is automatically set to 100. The
656
+ # response is paginated at 100 per page if you have more than 100 file
657
+ # systems.
303
658
  # @return [Integer]
304
659
  #
305
660
  # @!attribute [rw] marker
@@ -409,13 +764,14 @@ module Aws::EFS
409
764
  # marker: "Marker",
410
765
  # file_system_id: "FileSystemId",
411
766
  # mount_target_id: "MountTargetId",
767
+ # access_point_id: "AccessPointId",
412
768
  # }
413
769
  #
414
770
  # @!attribute [rw] max_items
415
771
  # (Optional) Maximum number of mount targets to return in the
416
772
  # response. Currently, this number is automatically set to 10, and
417
- # other values are ignored. The response is paginated at 10 per page
418
- # if you have more than 10 mount targets.
773
+ # other values are ignored. The response is paginated at 100 per page
774
+ # if you have more than 100 mount targets.
419
775
  # @return [Integer]
420
776
  #
421
777
  # @!attribute [rw] marker
@@ -427,14 +783,22 @@ module Aws::EFS
427
783
  #
428
784
  # @!attribute [rw] file_system_id
429
785
  # (Optional) ID of the file system whose mount targets you want to
430
- # list (String). It must be included in your request if
431
- # `MountTargetId` is not included.
786
+ # list (String). It must be included in your request if an
787
+ # `AccessPointId` or `MountTargetId` is not included. Accepts either a
788
+ # file system ID or ARN as input.
432
789
  # @return [String]
433
790
  #
434
791
  # @!attribute [rw] mount_target_id
435
792
  # (Optional) ID of the mount target that you want to have described
436
793
  # (String). It must be included in your request if `FileSystemId` is
437
- # not included.
794
+ # not included. Accepts either a mount target ID or ARN as input.
795
+ # @return [String]
796
+ #
797
+ # @!attribute [rw] access_point_id
798
+ # (Optional) The ID of the access point whose mount targets that you
799
+ # want to list. It must be included in your request if a
800
+ # `FileSystemId` or `MountTargetId` is not included in your request.
801
+ # Accepts either an access point ID or ARN as input.
438
802
  # @return [String]
439
803
  #
440
804
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeMountTargetsRequest AWS API Documentation
@@ -443,7 +807,8 @@ module Aws::EFS
443
807
  :max_items,
444
808
  :marker,
445
809
  :file_system_id,
446
- :mount_target_id)
810
+ :mount_target_id,
811
+ :access_point_id)
447
812
  include Aws::Structure
448
813
  end
449
814
 
@@ -483,9 +848,9 @@ module Aws::EFS
483
848
  #
484
849
  # @!attribute [rw] max_items
485
850
  # (Optional) The maximum number of file system tags to return in the
486
- # response. Currently, this number is automatically set to 10, and
487
- # other values are ignored. The response is paginated at 10 per page
488
- # if you have more than 10 tags.
851
+ # response. Currently, this number is automatically set to 100, and
852
+ # other values are ignored. The response is paginated at 100 per page
853
+ # if you have more than 100 tags.
489
854
  # @return [Integer]
490
855
  #
491
856
  # @!attribute [rw] marker
@@ -716,6 +1081,23 @@ module Aws::EFS
716
1081
  include Aws::Structure
717
1082
  end
718
1083
 
1084
+ # @!attribute [rw] file_system_id
1085
+ # Specifies the EFS file system to which the `FileSystemPolicy`
1086
+ # applies.
1087
+ # @return [String]
1088
+ #
1089
+ # @!attribute [rw] policy
1090
+ # The JSON formatted `FileSystemPolicy` for the EFS file system.
1091
+ # @return [String]
1092
+ #
1093
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/FileSystemPolicyDescription AWS API Documentation
1094
+ #
1095
+ class FileSystemPolicyDescription < Struct.new(
1096
+ :file_system_id,
1097
+ :policy)
1098
+ include Aws::Structure
1099
+ end
1100
+
719
1101
  # The latest known metered size (in bytes) of data stored in the file
720
1102
  # system, in its `Value` field, and the time at which that size was
721
1103
  # determined in its `Timestamp` field. The value doesn't represent the
@@ -827,6 +1209,25 @@ module Aws::EFS
827
1209
  include Aws::Structure
828
1210
  end
829
1211
 
1212
+ # Returned if the `FileSystemPolicy` is is malformed or contains an
1213
+ # error such as an invalid parameter value or a missing required
1214
+ # parameter. Returned in the case of a policy lockout safety check
1215
+ # error.
1216
+ #
1217
+ # @!attribute [rw] error_code
1218
+ # @return [String]
1219
+ #
1220
+ # @!attribute [rw] message
1221
+ # @return [String]
1222
+ #
1223
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/InvalidPolicyException AWS API Documentation
1224
+ #
1225
+ class InvalidPolicyException < Struct.new(
1226
+ :error_code,
1227
+ :message)
1228
+ include Aws::Structure
1229
+ end
1230
+
830
1231
  # Returned if the request specified an `IpAddress` that is already in
831
1232
  # use in the subnet.
832
1233
  #
@@ -880,6 +1281,59 @@ module Aws::EFS
880
1281
  include Aws::Structure
881
1282
  end
882
1283
 
1284
+ # @note When making an API call, you may pass ListTagsForResourceRequest
1285
+ # data as a hash:
1286
+ #
1287
+ # {
1288
+ # resource_id: "ResourceId", # required
1289
+ # max_results: 1,
1290
+ # next_token: "Token",
1291
+ # }
1292
+ #
1293
+ # @!attribute [rw] resource_id
1294
+ # Specifies the EFS resource you want to retrieve tags for. You can
1295
+ # retrieve tags for EFS file systems and access points using this API
1296
+ # endpoint.
1297
+ # @return [String]
1298
+ #
1299
+ # @!attribute [rw] max_results
1300
+ # (Optional) Specifies the maximum number of tag objects to return in
1301
+ # the response. The default value is 100.
1302
+ # @return [Integer]
1303
+ #
1304
+ # @!attribute [rw] next_token
1305
+ # You can use `NextToken` in a subsequent request to fetch the next
1306
+ # page of access point descriptions if the response payload was
1307
+ # paginated.
1308
+ # @return [String]
1309
+ #
1310
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/ListTagsForResourceRequest AWS API Documentation
1311
+ #
1312
+ class ListTagsForResourceRequest < Struct.new(
1313
+ :resource_id,
1314
+ :max_results,
1315
+ :next_token)
1316
+ include Aws::Structure
1317
+ end
1318
+
1319
+ # @!attribute [rw] tags
1320
+ # An array of the tags for the specified EFS resource.
1321
+ # @return [Array<Types::Tag>]
1322
+ #
1323
+ # @!attribute [rw] next_token
1324
+ # `NextToken` is present if the response payload is paginated. You can
1325
+ # use `NextToken` in a subsequent request to fetch the next page of
1326
+ # access point descriptions.
1327
+ # @return [String]
1328
+ #
1329
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/ListTagsForResourceResponse AWS API Documentation
1330
+ #
1331
+ class ListTagsForResourceResponse < Struct.new(
1332
+ :tags,
1333
+ :next_token)
1334
+ include Aws::Structure
1335
+ end
1336
+
883
1337
  # @note When making an API call, you may pass ModifyMountTargetSecurityGroupsRequest
884
1338
  # data as a hash:
885
1339
  #
@@ -953,6 +1407,21 @@ module Aws::EFS
953
1407
  # created the mount target.
954
1408
  # @return [String]
955
1409
  #
1410
+ # @!attribute [rw] availability_zone_id
1411
+ # The unique and consistent identifier of the Availability Zone (AZ)
1412
+ # that the mount target resides in. For example, `use1-az1` is an AZ
1413
+ # ID for the us-east-1 Region and it has the same location in every
1414
+ # AWS account.
1415
+ # @return [String]
1416
+ #
1417
+ # @!attribute [rw] availability_zone_name
1418
+ # The name of the Availability Zone (AZ) that the mount target resides
1419
+ # in. AZs are independently mapped to names for each AWS account. For
1420
+ # example, the Availability Zone `us-east-1a` for your AWS account
1421
+ # might not be the same location as `us-east-1a` for another AWS
1422
+ # account.
1423
+ # @return [String]
1424
+ #
956
1425
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/MountTargetDescription AWS API Documentation
957
1426
  #
958
1427
  class MountTargetDescription < Struct.new(
@@ -962,7 +1431,9 @@ module Aws::EFS
962
1431
  :subnet_id,
963
1432
  :life_cycle_state,
964
1433
  :ip_address,
965
- :network_interface_id)
1434
+ :network_interface_id,
1435
+ :availability_zone_id,
1436
+ :availability_zone_name)
966
1437
  include Aws::Structure
967
1438
  end
968
1439
 
@@ -1025,6 +1496,106 @@ module Aws::EFS
1025
1496
  include Aws::Structure
1026
1497
  end
1027
1498
 
1499
+ # Returned if the default file system policy is in effect for the EFS
1500
+ # file system specified.
1501
+ #
1502
+ # @!attribute [rw] error_code
1503
+ # @return [String]
1504
+ #
1505
+ # @!attribute [rw] message
1506
+ # @return [String]
1507
+ #
1508
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/PolicyNotFound AWS API Documentation
1509
+ #
1510
+ class PolicyNotFound < Struct.new(
1511
+ :error_code,
1512
+ :message)
1513
+ include Aws::Structure
1514
+ end
1515
+
1516
+ # The full POSIX identity, including the user ID, group ID, and any
1517
+ # secondary group IDs, on the access point that is used for all file
1518
+ # system operations performed by NFS clients using the access point.
1519
+ #
1520
+ # @note When making an API call, you may pass PosixUser
1521
+ # data as a hash:
1522
+ #
1523
+ # {
1524
+ # uid: 1, # required
1525
+ # gid: 1, # required
1526
+ # secondary_gids: [1],
1527
+ # }
1528
+ #
1529
+ # @!attribute [rw] uid
1530
+ # The POSIX user ID used for all file system operations using this
1531
+ # access point.
1532
+ # @return [Integer]
1533
+ #
1534
+ # @!attribute [rw] gid
1535
+ # The POSIX group ID used for all file system operations using this
1536
+ # access point.
1537
+ # @return [Integer]
1538
+ #
1539
+ # @!attribute [rw] secondary_gids
1540
+ # Secondary POSIX group IDs used for all file system operations using
1541
+ # this access point.
1542
+ # @return [Array<Integer>]
1543
+ #
1544
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/PosixUser AWS API Documentation
1545
+ #
1546
+ class PosixUser < Struct.new(
1547
+ :uid,
1548
+ :gid,
1549
+ :secondary_gids)
1550
+ include Aws::Structure
1551
+ end
1552
+
1553
+ # @note When making an API call, you may pass PutFileSystemPolicyRequest
1554
+ # data as a hash:
1555
+ #
1556
+ # {
1557
+ # file_system_id: "FileSystemId", # required
1558
+ # policy: "Policy", # required
1559
+ # bypass_policy_lockout_safety_check: false,
1560
+ # }
1561
+ #
1562
+ # @!attribute [rw] file_system_id
1563
+ # The ID of the EFS file system that you want to create or update the
1564
+ # `FileSystemPolicy` for.
1565
+ # @return [String]
1566
+ #
1567
+ # @!attribute [rw] policy
1568
+ # The `FileSystemPolicy` that you're creating. Accepts a JSON
1569
+ # formatted policy definition. To find out more about the elements
1570
+ # that make up a file system policy, see [EFS Resource-based
1571
+ # Policies][1].
1572
+ #
1573
+ #
1574
+ #
1575
+ # [1]: https://docs.aws.amazon.com/efs/latest/ug/access-control-overview.html#access-control-manage-access-intro-resource-policies
1576
+ # @return [String]
1577
+ #
1578
+ # @!attribute [rw] bypass_policy_lockout_safety_check
1579
+ # (Optional) A flag to indicate whether to bypass the
1580
+ # `FileSystemPolicy` lockout safety check. The policy lockout safety
1581
+ # check determines whether the policy in the request will prevent the
1582
+ # principal making the request will be locked out from making future
1583
+ # `PutFileSystemPolicy` requests on the file system. Set
1584
+ # `BypassPolicyLockoutSafetyCheck` to `True` only when you intend to
1585
+ # prevent the principal that is making the request from making a
1586
+ # subsequent `PutFileSystemPolicy` request on the file system. The
1587
+ # default value is False.
1588
+ # @return [Boolean]
1589
+ #
1590
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/PutFileSystemPolicyRequest AWS API Documentation
1591
+ #
1592
+ class PutFileSystemPolicyRequest < Struct.new(
1593
+ :file_system_id,
1594
+ :policy,
1595
+ :bypass_policy_lockout_safety_check)
1596
+ include Aws::Structure
1597
+ end
1598
+
1028
1599
  # @note When making an API call, you may pass PutLifecycleConfigurationRequest
1029
1600
  # data as a hash:
1030
1601
  #
@@ -1057,6 +1628,54 @@ module Aws::EFS
1057
1628
  include Aws::Structure
1058
1629
  end
1059
1630
 
1631
+ # Specifies the directory on the Amazon EFS file system that the access
1632
+ # point provides access to. The access point exposes the specified file
1633
+ # system path as the root directory of your file system to applications
1634
+ # using the access point. NFS clients using the access point can only
1635
+ # access data in the access point's `RootDirectory` and it's
1636
+ # subdirectories.
1637
+ #
1638
+ # @note When making an API call, you may pass RootDirectory
1639
+ # data as a hash:
1640
+ #
1641
+ # {
1642
+ # path: "Path",
1643
+ # creation_info: {
1644
+ # owner_uid: 1, # required
1645
+ # owner_gid: 1, # required
1646
+ # permissions: "Permissions", # required
1647
+ # },
1648
+ # }
1649
+ #
1650
+ # @!attribute [rw] path
1651
+ # Specifies the path on the EFS file system to expose as the root
1652
+ # directory to NFS clients using the access point to access the EFS
1653
+ # file system. A path can have up to four subdirectories. If the
1654
+ # specified path does not exist, you are required to provide the
1655
+ # `CreationInfo`.
1656
+ # @return [String]
1657
+ #
1658
+ # @!attribute [rw] creation_info
1659
+ # (Optional) Specifies the POSIX IDs and permissions to apply to the
1660
+ # access point's `RootDirectory`. If the `RootDirectory` &gt; `Path`
1661
+ # specified does not exist, EFS creates the root directory using the
1662
+ # `CreationInfo` settings when a client connects to an access point.
1663
+ # When specifying the `CreationInfo`, you must provide values for all
1664
+ # properties.
1665
+ #
1666
+ # If you do not provide `CreationInfo` and the specified
1667
+ # `RootDirectory` &gt; `Path` does not exist, attempts to mount the
1668
+ # file system using the access point will fail.
1669
+ # @return [Types::CreationInfo]
1670
+ #
1671
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/RootDirectory AWS API Documentation
1672
+ #
1673
+ class RootDirectory < Struct.new(
1674
+ :path,
1675
+ :creation_info)
1676
+ include Aws::Structure
1677
+ end
1678
+
1060
1679
  # Returned if the size of `SecurityGroups` specified in the request is
1061
1680
  # greater than five.
1062
1681
  #
@@ -1136,6 +1755,35 @@ module Aws::EFS
1136
1755
  include Aws::Structure
1137
1756
  end
1138
1757
 
1758
+ # @note When making an API call, you may pass TagResourceRequest
1759
+ # data as a hash:
1760
+ #
1761
+ # {
1762
+ # resource_id: "ResourceId", # required
1763
+ # tags: [ # required
1764
+ # {
1765
+ # key: "TagKey", # required
1766
+ # value: "TagValue", # required
1767
+ # },
1768
+ # ],
1769
+ # }
1770
+ #
1771
+ # @!attribute [rw] resource_id
1772
+ # The ID specifying the EFS resource that you want to create a tag
1773
+ # for.
1774
+ # @return [String]
1775
+ #
1776
+ # @!attribute [rw] tags
1777
+ # @return [Array<Types::Tag>]
1778
+ #
1779
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/TagResourceRequest AWS API Documentation
1780
+ #
1781
+ class TagResourceRequest < Struct.new(
1782
+ :resource_id,
1783
+ :tags)
1784
+ include Aws::Structure
1785
+ end
1786
+
1139
1787
  # Returned if the throughput mode or amount of provisioned throughput
1140
1788
  # can't be changed because the throughput limit of 1024 MiB/s has been
1141
1789
  # reached.
@@ -1185,6 +1833,31 @@ module Aws::EFS
1185
1833
  include Aws::Structure
1186
1834
  end
1187
1835
 
1836
+ # @note When making an API call, you may pass UntagResourceRequest
1837
+ # data as a hash:
1838
+ #
1839
+ # {
1840
+ # resource_id: "ResourceId", # required
1841
+ # tag_keys: ["TagKey"],
1842
+ # }
1843
+ #
1844
+ # @!attribute [rw] resource_id
1845
+ # Specifies the EFS resource that you want to remove tags from.
1846
+ # @return [String]
1847
+ #
1848
+ # @!attribute [rw] tag_keys
1849
+ # The keys of the key:value tag pairs that you want to remove from the
1850
+ # specified EFS resource.
1851
+ # @return [Array<String>]
1852
+ #
1853
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/UntagResourceRequest AWS API Documentation
1854
+ #
1855
+ class UntagResourceRequest < Struct.new(
1856
+ :resource_id,
1857
+ :tag_keys)
1858
+ include Aws::Structure
1859
+ end
1860
+
1188
1861
  # @note When making an API call, you may pass UpdateFileSystemRequest
1189
1862
  # data as a hash:
1190
1863
  #