aws-sdk-efs 1.35.0 → 1.40.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -22,7 +22,9 @@ module Aws::EFS
22
22
  AccessPointNotFound = Shapes::StructureShape.new(name: 'AccessPointNotFound')
23
23
  AvailabilityZoneId = Shapes::StringShape.new(name: 'AvailabilityZoneId')
24
24
  AvailabilityZoneName = Shapes::StringShape.new(name: 'AvailabilityZoneName')
25
+ AvailabilityZonesMismatch = Shapes::StructureShape.new(name: 'AvailabilityZonesMismatch')
25
26
  AwsAccountId = Shapes::StringShape.new(name: 'AwsAccountId')
27
+ Backup = Shapes::BooleanShape.new(name: 'Backup')
26
28
  BackupPolicy = Shapes::StructureShape.new(name: 'BackupPolicy')
27
29
  BackupPolicyDescription = Shapes::StructureShape.new(name: 'BackupPolicyDescription')
28
30
  BadRequest = Shapes::StructureShape.new(name: 'BadRequest')
@@ -42,6 +44,8 @@ module Aws::EFS
42
44
  DependencyTimeout = Shapes::StructureShape.new(name: 'DependencyTimeout')
43
45
  DescribeAccessPointsRequest = Shapes::StructureShape.new(name: 'DescribeAccessPointsRequest')
44
46
  DescribeAccessPointsResponse = Shapes::StructureShape.new(name: 'DescribeAccessPointsResponse')
47
+ DescribeAccountPreferencesRequest = Shapes::StructureShape.new(name: 'DescribeAccountPreferencesRequest')
48
+ DescribeAccountPreferencesResponse = Shapes::StructureShape.new(name: 'DescribeAccountPreferencesResponse')
45
49
  DescribeBackupPolicyRequest = Shapes::StructureShape.new(name: 'DescribeBackupPolicyRequest')
46
50
  DescribeFileSystemPolicyRequest = Shapes::StructureShape.new(name: 'DescribeFileSystemPolicyRequest')
47
51
  DescribeFileSystemsRequest = Shapes::StructureShape.new(name: 'DescribeFileSystemsRequest')
@@ -106,10 +110,16 @@ module Aws::EFS
106
110
  PolicyNotFound = Shapes::StructureShape.new(name: 'PolicyNotFound')
107
111
  PosixUser = Shapes::StructureShape.new(name: 'PosixUser')
108
112
  ProvisionedThroughputInMibps = Shapes::FloatShape.new(name: 'ProvisionedThroughputInMibps')
113
+ PutAccountPreferencesRequest = Shapes::StructureShape.new(name: 'PutAccountPreferencesRequest')
114
+ PutAccountPreferencesResponse = Shapes::StructureShape.new(name: 'PutAccountPreferencesResponse')
109
115
  PutBackupPolicyRequest = Shapes::StructureShape.new(name: 'PutBackupPolicyRequest')
110
116
  PutFileSystemPolicyRequest = Shapes::StructureShape.new(name: 'PutFileSystemPolicyRequest')
111
117
  PutLifecycleConfigurationRequest = Shapes::StructureShape.new(name: 'PutLifecycleConfigurationRequest')
118
+ Resource = Shapes::StringShape.new(name: 'Resource')
112
119
  ResourceId = Shapes::StringShape.new(name: 'ResourceId')
120
+ ResourceIdPreference = Shapes::StructureShape.new(name: 'ResourceIdPreference')
121
+ ResourceIdType = Shapes::StringShape.new(name: 'ResourceIdType')
122
+ Resources = Shapes::ListShape.new(name: 'Resources')
113
123
  RootDirectory = Shapes::StructureShape.new(name: 'RootDirectory')
114
124
  SecondaryGids = Shapes::ListShape.new(name: 'SecondaryGids')
115
125
  SecurityGroup = Shapes::StringShape.new(name: 'SecurityGroup')
@@ -165,6 +175,10 @@ module Aws::EFS
165
175
  AccessPointNotFound.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
166
176
  AccessPointNotFound.struct_class = Types::AccessPointNotFound
167
177
 
178
+ AvailabilityZonesMismatch.add_member(:error_code, Shapes::ShapeRef.new(shape: ErrorCode, location_name: "ErrorCode"))
179
+ AvailabilityZonesMismatch.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
180
+ AvailabilityZonesMismatch.struct_class = Types::AvailabilityZonesMismatch
181
+
168
182
  BackupPolicy.add_member(:status, Shapes::ShapeRef.new(shape: Status, required: true, location_name: "Status"))
169
183
  BackupPolicy.struct_class = Types::BackupPolicy
170
184
 
@@ -188,6 +202,8 @@ module Aws::EFS
188
202
  CreateFileSystemRequest.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: KmsKeyId, location_name: "KmsKeyId"))
189
203
  CreateFileSystemRequest.add_member(:throughput_mode, Shapes::ShapeRef.new(shape: ThroughputMode, location_name: "ThroughputMode"))
190
204
  CreateFileSystemRequest.add_member(:provisioned_throughput_in_mibps, Shapes::ShapeRef.new(shape: ProvisionedThroughputInMibps, location_name: "ProvisionedThroughputInMibps"))
205
+ CreateFileSystemRequest.add_member(:availability_zone_name, Shapes::ShapeRef.new(shape: AvailabilityZoneName, location_name: "AvailabilityZoneName"))
206
+ CreateFileSystemRequest.add_member(:backup, Shapes::ShapeRef.new(shape: Backup, location_name: "Backup"))
191
207
  CreateFileSystemRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
192
208
  CreateFileSystemRequest.struct_class = Types::CreateFileSystemRequest
193
209
 
@@ -236,6 +252,14 @@ module Aws::EFS
236
252
  DescribeAccessPointsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
237
253
  DescribeAccessPointsResponse.struct_class = Types::DescribeAccessPointsResponse
238
254
 
255
+ DescribeAccountPreferencesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
256
+ DescribeAccountPreferencesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
257
+ DescribeAccountPreferencesRequest.struct_class = Types::DescribeAccountPreferencesRequest
258
+
259
+ DescribeAccountPreferencesResponse.add_member(:resource_id_preference, Shapes::ShapeRef.new(shape: ResourceIdPreference, location_name: "ResourceIdPreference"))
260
+ DescribeAccountPreferencesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
261
+ DescribeAccountPreferencesResponse.struct_class = Types::DescribeAccountPreferencesResponse
262
+
239
263
  DescribeBackupPolicyRequest.add_member(:file_system_id, Shapes::ShapeRef.new(shape: FileSystemId, required: true, location: "uri", location_name: "FileSystemId"))
240
264
  DescribeBackupPolicyRequest.struct_class = Types::DescribeBackupPolicyRequest
241
265
 
@@ -303,6 +327,8 @@ module Aws::EFS
303
327
  FileSystemDescription.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: KmsKeyId, location_name: "KmsKeyId"))
304
328
  FileSystemDescription.add_member(:throughput_mode, Shapes::ShapeRef.new(shape: ThroughputMode, location_name: "ThroughputMode"))
305
329
  FileSystemDescription.add_member(:provisioned_throughput_in_mibps, Shapes::ShapeRef.new(shape: ProvisionedThroughputInMibps, location_name: "ProvisionedThroughputInMibps"))
330
+ FileSystemDescription.add_member(:availability_zone_name, Shapes::ShapeRef.new(shape: AvailabilityZoneName, location_name: "AvailabilityZoneName"))
331
+ FileSystemDescription.add_member(:availability_zone_id, Shapes::ShapeRef.new(shape: AvailabilityZoneId, location_name: "AvailabilityZoneId"))
306
332
  FileSystemDescription.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, required: true, location_name: "Tags"))
307
333
  FileSystemDescription.struct_class = Types::FileSystemDescription
308
334
 
@@ -414,6 +440,12 @@ module Aws::EFS
414
440
  PosixUser.add_member(:secondary_gids, Shapes::ShapeRef.new(shape: SecondaryGids, location_name: "SecondaryGids"))
415
441
  PosixUser.struct_class = Types::PosixUser
416
442
 
443
+ PutAccountPreferencesRequest.add_member(:resource_id_type, Shapes::ShapeRef.new(shape: ResourceIdType, required: true, location_name: "ResourceIdType"))
444
+ PutAccountPreferencesRequest.struct_class = Types::PutAccountPreferencesRequest
445
+
446
+ PutAccountPreferencesResponse.add_member(:resource_id_preference, Shapes::ShapeRef.new(shape: ResourceIdPreference, location_name: "ResourceIdPreference"))
447
+ PutAccountPreferencesResponse.struct_class = Types::PutAccountPreferencesResponse
448
+
417
449
  PutBackupPolicyRequest.add_member(:file_system_id, Shapes::ShapeRef.new(shape: FileSystemId, required: true, location: "uri", location_name: "FileSystemId"))
418
450
  PutBackupPolicyRequest.add_member(:backup_policy, Shapes::ShapeRef.new(shape: BackupPolicy, required: true, location_name: "BackupPolicy"))
419
451
  PutBackupPolicyRequest.struct_class = Types::PutBackupPolicyRequest
@@ -427,6 +459,12 @@ module Aws::EFS
427
459
  PutLifecycleConfigurationRequest.add_member(:lifecycle_policies, Shapes::ShapeRef.new(shape: LifecyclePolicies, required: true, location_name: "LifecyclePolicies"))
428
460
  PutLifecycleConfigurationRequest.struct_class = Types::PutLifecycleConfigurationRequest
429
461
 
462
+ ResourceIdPreference.add_member(:resource_id_type, Shapes::ShapeRef.new(shape: ResourceIdType, location_name: "ResourceIdType"))
463
+ ResourceIdPreference.add_member(:resources, Shapes::ShapeRef.new(shape: Resources, location_name: "Resources"))
464
+ ResourceIdPreference.struct_class = Types::ResourceIdPreference
465
+
466
+ Resources.member = Shapes::ShapeRef.new(shape: Resource)
467
+
430
468
  RootDirectory.add_member(:path, Shapes::ShapeRef.new(shape: Path, location_name: "Path"))
431
469
  RootDirectory.add_member(:creation_info, Shapes::ShapeRef.new(shape: CreationInfo, location_name: "CreationInfo"))
432
470
  RootDirectory.struct_class = Types::RootDirectory
@@ -527,6 +565,7 @@ module Aws::EFS
527
565
  o.errors << Shapes::ShapeRef.new(shape: FileSystemLimitExceeded)
528
566
  o.errors << Shapes::ShapeRef.new(shape: InsufficientThroughputCapacity)
529
567
  o.errors << Shapes::ShapeRef.new(shape: ThroughputLimitExceeded)
568
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedAvailabilityZone)
530
569
  end)
531
570
 
532
571
  api.add_operation(:create_mount_target, Seahorse::Model::Operation.new.tap do |o|
@@ -547,6 +586,7 @@ module Aws::EFS
547
586
  o.errors << Shapes::ShapeRef.new(shape: SecurityGroupLimitExceeded)
548
587
  o.errors << Shapes::ShapeRef.new(shape: SecurityGroupNotFound)
549
588
  o.errors << Shapes::ShapeRef.new(shape: UnsupportedAvailabilityZone)
589
+ o.errors << Shapes::ShapeRef.new(shape: AvailabilityZonesMismatch)
550
590
  end)
551
591
 
552
592
  api.add_operation(:create_tags, Seahorse::Model::Operation.new.tap do |o|
@@ -637,6 +677,15 @@ module Aws::EFS
637
677
  )
638
678
  end)
639
679
 
680
+ api.add_operation(:describe_account_preferences, Seahorse::Model::Operation.new.tap do |o|
681
+ o.name = "DescribeAccountPreferences"
682
+ o.http_method = "GET"
683
+ o.http_request_uri = "/2015-02-01/account-preferences"
684
+ o.input = Shapes::ShapeRef.new(shape: DescribeAccountPreferencesRequest)
685
+ o.output = Shapes::ShapeRef.new(shape: DescribeAccountPreferencesResponse)
686
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
687
+ end)
688
+
640
689
  api.add_operation(:describe_backup_policy, Seahorse::Model::Operation.new.tap do |o|
641
690
  o.name = "DescribeBackupPolicy"
642
691
  o.http_method = "GET"
@@ -764,6 +813,15 @@ module Aws::EFS
764
813
  o.errors << Shapes::ShapeRef.new(shape: SecurityGroupNotFound)
765
814
  end)
766
815
 
816
+ api.add_operation(:put_account_preferences, Seahorse::Model::Operation.new.tap do |o|
817
+ o.name = "PutAccountPreferences"
818
+ o.http_method = "PUT"
819
+ o.http_request_uri = "/2015-02-01/account-preferences"
820
+ o.input = Shapes::ShapeRef.new(shape: PutAccountPreferencesRequest)
821
+ o.output = Shapes::ShapeRef.new(shape: PutAccountPreferencesResponse)
822
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
823
+ end)
824
+
767
825
  api.add_operation(:put_backup_policy, Seahorse::Model::Operation.new.tap do |o|
768
826
  o.name = "PutBackupPolicy"
769
827
  o.http_method = "PUT"
@@ -2,7 +2,7 @@
2
2
  # WARNING ABOUT GENERATED CODE
3
3
  #
4
4
  # This file is generated. See the contributing for info on making contributions:
5
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
6
6
  #
7
7
  # WARNING ABOUT GENERATED CODE
8
8
 
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -30,6 +30,7 @@ module Aws::EFS
30
30
  # * {AccessPointAlreadyExists}
31
31
  # * {AccessPointLimitExceeded}
32
32
  # * {AccessPointNotFound}
33
+ # * {AvailabilityZonesMismatch}
33
34
  # * {BadRequest}
34
35
  # * {DependencyTimeout}
35
36
  # * {FileSystemAlreadyExists}
@@ -126,6 +127,26 @@ module Aws::EFS
126
127
  end
127
128
  end
128
129
 
130
+ class AvailabilityZonesMismatch < ServiceError
131
+
132
+ # @param [Seahorse::Client::RequestContext] context
133
+ # @param [String] message
134
+ # @param [Aws::EFS::Types::AvailabilityZonesMismatch] data
135
+ def initialize(context, message, data = Aws::EmptyStructure.new)
136
+ super(context, message, data)
137
+ end
138
+
139
+ # @return [String]
140
+ def error_code
141
+ @data[:error_code]
142
+ end
143
+
144
+ # @return [String]
145
+ def message
146
+ @message || @data[:message]
147
+ end
148
+ end
149
+
129
150
  class BadRequest < ServiceError
130
151
 
131
152
  # @param [Seahorse::Client::RequestContext] context
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -133,8 +133,38 @@ module Aws::EFS
133
133
  include Aws::Structure
134
134
  end
135
135
 
136
- # The backup policy for the file system, showing the curent status. If
137
- # `ENABLED`, the file system is being backed up.
136
+ # Returned if the Availability Zone that was specified for a mount
137
+ # target is different from the Availability Zone that was specified for
138
+ # One Zone storage classes. For more information, see [Regional and One
139
+ # Zone storage redundancy][1].
140
+ #
141
+ #
142
+ #
143
+ # [1]: https://docs.aws.amazon.com/efs/latest/ug/availability-durability.html
144
+ #
145
+ # @!attribute [rw] error_code
146
+ # @return [String]
147
+ #
148
+ # @!attribute [rw] message
149
+ # @return [String]
150
+ #
151
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/AvailabilityZonesMismatch AWS API Documentation
152
+ #
153
+ class AvailabilityZonesMismatch < Struct.new(
154
+ :error_code,
155
+ :message)
156
+ SENSITIVE = []
157
+ include Aws::Structure
158
+ end
159
+
160
+ # The backup policy for the file system used to create automatic daily
161
+ # backups. If status has a value of `ENABLED`, the file system is being
162
+ # automatically backed up. For more information, see [Automatic
163
+ # backups][1].
164
+ #
165
+ #
166
+ #
167
+ # [1]: https://docs.aws.amazon.com/efs/latest/ug/awsbackup.html#automatic-backups
138
168
  #
139
169
  # @note When making an API call, you may pass BackupPolicy
140
170
  # data as a hash:
@@ -146,17 +176,17 @@ module Aws::EFS
146
176
  # @!attribute [rw] status
147
177
  # Describes the status of the file system's backup policy.
148
178
  #
149
- # * <i> <code>ENABLED</code> - EFS is automatically backing up the
150
- # file system.</i>
179
+ # * <b> <code>ENABLED</code> </b> - EFS is automatically backing up
180
+ # the file system.
151
181
  #
152
- # * <i> <code>ENABLING</code> - EFS is turning on automatic backups
153
- # for the file system.</i>
182
+ # * <b> <code>ENABLING</code> </b> - EFS is turning on automatic
183
+ # backups for the file system.
154
184
  #
155
- # * <i> <code>DISABLED</code> - automatic back ups are turned off for
156
- # the file system.</i>
185
+ # * <b> <code>DISABLED</code> </b> - automatic back ups are turned off
186
+ # for the file system.
157
187
  #
158
- # * <i> <code>DISABLED</code> - EFS is turning off automatic backups
159
- # for the file system.</i>
188
+ # * <b> <code>DISABLING</code> </b> - EFS is turning off automatic
189
+ # backups for the file system.
160
190
  # @return [String]
161
191
  #
162
192
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/BackupPolicy AWS API Documentation
@@ -256,7 +286,13 @@ module Aws::EFS
256
286
  # `RootDirectory` &gt; `Path` specified does not exist, EFS creates it
257
287
  # and applies the `CreationInfo` settings when a client connects to an
258
288
  # access point. When specifying a `RootDirectory`, you need to provide
259
- # the `Path`, and the `CreationInfo` is optional.
289
+ # the `Path`, and the `CreationInfo`.
290
+ #
291
+ # Amazon EFS creates a root directory only if you have provided the
292
+ # CreationInfo: OwnUid, OwnGID, and permissions for the directory. If
293
+ # you do not provide this information, Amazon EFS does not create the
294
+ # root directory. If the root directory does not exist, attempts to
295
+ # mount using the access point will fail.
260
296
  # @return [Types::RootDirectory]
261
297
  #
262
298
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/CreateAccessPointRequest AWS API Documentation
@@ -281,6 +317,8 @@ module Aws::EFS
281
317
  # kms_key_id: "KmsKeyId",
282
318
  # throughput_mode: "bursting", # accepts bursting, provisioned
283
319
  # provisioned_throughput_in_mibps: 1.0,
320
+ # availability_zone_name: "AvailabilityZoneName",
321
+ # backup: false,
284
322
  # tags: [
285
323
  # {
286
324
  # key: "TagKey", # required
@@ -305,6 +343,11 @@ module Aws::EFS
305
343
  # tradeoff of slightly higher latencies for most file operations. The
306
344
  # performance mode can't be changed after the file system has been
307
345
  # created.
346
+ #
347
+ # <note markdown="1"> The `maxIO` mode is not supported on file systems using One Zone
348
+ # storage classes.
349
+ #
350
+ # </note>
308
351
  # @return [String]
309
352
  #
310
353
  # @!attribute [rw] encrypted
@@ -318,11 +361,11 @@ module Aws::EFS
318
361
  # @return [Boolean]
319
362
  #
320
363
  # @!attribute [rw] kms_key_id
321
- # The ID of the AWS KMS CMK to be used to protect the encrypted file
322
- # system. This parameter is only required if you want to use a
323
- # nondefault CMK. If this parameter is not specified, the default CMK
324
- # for Amazon EFS is used. This ID can be in one of the following
325
- # formats:
364
+ # The ID of the AWS KMS CMK that you want to use to protect the
365
+ # encrypted file system. This parameter is only required if you want
366
+ # to use a non-default KMS key. If this parameter is not specified,
367
+ # the default CMK for Amazon EFS is used. This ID can be in one of the
368
+ # following formats:
326
369
  #
327
370
  # * Key ID - A unique identifier of the key, for example
328
371
  # `1234abcd-12ab-34cd-56ef-1234567890ab`.
@@ -339,20 +382,22 @@ module Aws::EFS
339
382
  # If `KmsKeyId` is specified, the CreateFileSystemRequest$Encrypted
340
383
  # parameter must be set to true.
341
384
  #
342
- # EFS accepts only symmetric CMKs. You cannot use asymmetric CMKs with
343
- # EFS file systems.
385
+ # EFS accepts only symmetric KMS keys. You cannot use asymmetric KMS
386
+ # keys with EFS file systems.
344
387
  # @return [String]
345
388
  #
346
389
  # @!attribute [rw] throughput_mode
347
- # The throughput mode for the file system to be created. There are two
348
- # throughput modes to choose from for your file system: `bursting` and
349
- # `provisioned`. If you set `ThroughputMode` to `provisioned`, you
350
- # must also set a value for `ProvisionedThroughPutInMibps`. You can
351
- # decrease your file system's throughput in Provisioned Throughput
352
- # mode or change between the throughput modes as long as it’s been
353
- # more than 24 hours since the last decrease or throughput mode
354
- # change. For more, see [Specifying Throughput with Provisioned
355
- # Mode][1] in the *Amazon EFS User Guide.*
390
+ # Specifies the throughput mode for the file system, either `bursting`
391
+ # or `provisioned`. If you set `ThroughputMode` to `provisioned`, you
392
+ # must also set a value for `ProvisionedThroughputInMibps`. After you
393
+ # create the file system, you can decrease your file system's
394
+ # throughput in Provisioned Throughput mode or change between the
395
+ # throughput modes, as long as it’s been more than 24 hours since the
396
+ # last decrease or throughput mode change. For more information, see
397
+ # [Specifying throughput with provisioned mode][1] in the *Amazon EFS
398
+ # User Guide*.
399
+ #
400
+ # Default is `bursting`.
356
401
  #
357
402
  #
358
403
  #
@@ -363,15 +408,53 @@ module Aws::EFS
363
408
  # The throughput, measured in MiB/s, that you want to provision for a
364
409
  # file system that you're creating. Valid values are 1-1024. Required
365
410
  # if `ThroughputMode` is set to `provisioned`. The upper limit for
366
- # throughput is 1024 MiB/s. You can get this limit increased by
367
- # contacting AWS Support. For more information, see [Amazon EFS Limits
368
- # That You Can Increase][1] in the *Amazon EFS User Guide.*
411
+ # throughput is 1024 MiB/s. To increase this limit, contact AWS
412
+ # Support. For more information, see [Amazon EFS quotas that you can
413
+ # increase][1] in the *Amazon EFS User Guide*.
369
414
  #
370
415
  #
371
416
  #
372
417
  # [1]: https://docs.aws.amazon.com/efs/latest/ug/limits.html#soft-limits
373
418
  # @return [Float]
374
419
  #
420
+ # @!attribute [rw] availability_zone_name
421
+ # Used to create a file system that uses One Zone storage classes. It
422
+ # specifies the AWS Availability Zone in which to create the file
423
+ # system. Use the format `us-east-1a` to specify the Availability
424
+ # Zone. For more information about One Zone storage classes, see
425
+ # [Using EFS storage classes][1] in the *Amazon EFS User Guide*.
426
+ #
427
+ # <note markdown="1"> One Zone storage classes are not available in all Availability Zones
428
+ # in AWS Regions where Amazon EFS is available.
429
+ #
430
+ # </note>
431
+ #
432
+ #
433
+ #
434
+ # [1]: https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html
435
+ # @return [String]
436
+ #
437
+ # @!attribute [rw] backup
438
+ # Specifies whether automatic backups are enabled on the file system
439
+ # that you are creating. Set the value to `true` to enable automatic
440
+ # backups. If you are creating a file system that uses One Zone
441
+ # storage classes, automatic backups are enabled by default. For more
442
+ # information, see [Automatic backups][1] in the *Amazon EFS User
443
+ # Guide*.
444
+ #
445
+ # Default is `false`. However, if you specify an
446
+ # `AvailabilityZoneName`, the default is `true`.
447
+ #
448
+ # <note markdown="1"> AWS Backup is not available in all AWS Regions where Amazon EFS is
449
+ # available.
450
+ #
451
+ # </note>
452
+ #
453
+ #
454
+ #
455
+ # [1]: https://docs.aws.amazon.com/efs/latest/ug/awsbackup.html#automatic-backups
456
+ # @return [Boolean]
457
+ #
375
458
  # @!attribute [rw] tags
376
459
  # A value that specifies to create one or more tags associated with
377
460
  # the file system. Each tag is a user-defined key-value pair. Name
@@ -388,6 +471,8 @@ module Aws::EFS
388
471
  :kms_key_id,
389
472
  :throughput_mode,
390
473
  :provisioned_throughput_in_mibps,
474
+ :availability_zone_name,
475
+ :backup,
391
476
  :tags)
392
477
  SENSITIVE = []
393
478
  include Aws::Structure
@@ -408,7 +493,9 @@ module Aws::EFS
408
493
  # @return [String]
409
494
  #
410
495
  # @!attribute [rw] subnet_id
411
- # The ID of the subnet to add the mount target in.
496
+ # The ID of the subnet to add the mount target in. For file systems
497
+ # that use One Zone storage classes, use the subnet that is associated
498
+ # with the file system's Availability Zone.
412
499
  # @return [String]
413
500
  #
414
501
  # @!attribute [rw] ip_address
@@ -470,6 +557,12 @@ module Aws::EFS
470
557
  # client connects to the access point. When specifying `CreationInfo`,
471
558
  # you must include values for all properties.
472
559
  #
560
+ # Amazon EFS creates a root directory only if you have provided the
561
+ # CreationInfo: OwnUid, OwnGID, and permissions for the directory. If
562
+ # you do not provide this information, Amazon EFS does not create the
563
+ # root directory. If the root directory does not exist, attempts to
564
+ # mount using the access point will fail.
565
+ #
473
566
  # If you do not provide `CreationInfo` and the specified `RootDirectory`
474
567
  # does not exist, attempts to mount the file system using the access
475
568
  # point will fail.
@@ -691,6 +784,47 @@ module Aws::EFS
691
784
  include Aws::Structure
692
785
  end
693
786
 
787
+ # @note When making an API call, you may pass DescribeAccountPreferencesRequest
788
+ # data as a hash:
789
+ #
790
+ # {
791
+ # next_token: "Token",
792
+ # max_results: 1,
793
+ # }
794
+ #
795
+ # @!attribute [rw] next_token
796
+ # Token used for pagination.
797
+ # @return [String]
798
+ #
799
+ # @!attribute [rw] max_results
800
+ # Max results used for pagination.
801
+ # @return [Integer]
802
+ #
803
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeAccountPreferencesRequest AWS API Documentation
804
+ #
805
+ class DescribeAccountPreferencesRequest < Struct.new(
806
+ :next_token,
807
+ :max_results)
808
+ SENSITIVE = []
809
+ include Aws::Structure
810
+ end
811
+
812
+ # @!attribute [rw] resource_id_preference
813
+ # @return [Types::ResourceIdPreference]
814
+ #
815
+ # @!attribute [rw] next_token
816
+ # Token used for pagination.
817
+ # @return [String]
818
+ #
819
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeAccountPreferencesResponse AWS API Documentation
820
+ #
821
+ class DescribeAccountPreferencesResponse < Struct.new(
822
+ :resource_id_preference,
823
+ :next_token)
824
+ SENSITIVE = []
825
+ include Aws::Structure
826
+ end
827
+
694
828
  # @note When making an API call, you may pass DescribeBackupPolicyRequest
695
829
  # data as a hash:
696
830
  #
@@ -1091,28 +1225,37 @@ module Aws::EFS
1091
1225
  # @return [String]
1092
1226
  #
1093
1227
  # @!attribute [rw] throughput_mode
1094
- # The throughput mode for a file system. There are two throughput
1095
- # modes to choose from for your file system: `bursting` and
1096
- # `provisioned`. If you set `ThroughputMode` to `provisioned`, you
1097
- # must also set a value for `ProvisionedThroughPutInMibps`. You can
1098
- # decrease your file system's throughput in Provisioned Throughput
1099
- # mode or change between the throughput modes as long as it’s been
1100
- # more than 24 hours since the last decrease or throughput mode
1101
- # change.
1228
+ # Displays the file system's throughput mode. For more information,
1229
+ # see [Throughput modes][1] in the *Amazon EFS User Guide*.
1230
+ #
1231
+ #
1232
+ #
1233
+ # [1]: https://docs.aws.amazon.com/efs/latest/ug/performance.html#throughput-modes
1102
1234
  # @return [String]
1103
1235
  #
1104
1236
  # @!attribute [rw] provisioned_throughput_in_mibps
1105
- # The throughput, measured in MiB/s, that you want to provision for a
1106
- # file system. Valid values are 1-1024. Required if `ThroughputMode`
1107
- # is set to `provisioned`. The limit on throughput is 1024 MiB/s. You
1108
- # can get these limits increased by contacting AWS Support. For more
1109
- # information, see [Amazon EFS Limits That You Can Increase][1] in the
1110
- # *Amazon EFS User Guide.*
1237
+ # The amount of provisioned throughput, measured in MiB/s, for the
1238
+ # file system. Valid for file systems using `ThroughputMode` set to
1239
+ # `provisioned`.
1240
+ # @return [Float]
1111
1241
  #
1242
+ # @!attribute [rw] availability_zone_name
1243
+ # Describes the AWS Availability Zone in which the file system is
1244
+ # located, and is valid only for file systems using One Zone storage
1245
+ # classes. For more information, see [Using EFS storage classes][1] in
1246
+ # the *Amazon EFS User Guide*.
1112
1247
  #
1113
1248
  #
1114
- # [1]: https://docs.aws.amazon.com/efs/latest/ug/limits.html#soft-limits
1115
- # @return [Float]
1249
+ #
1250
+ # [1]: https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html
1251
+ # @return [String]
1252
+ #
1253
+ # @!attribute [rw] availability_zone_id
1254
+ # The unique and consistent identifier of the Availability Zone in
1255
+ # which the file system's One Zone storage classes exist. For
1256
+ # example, `use1-az1` is an Availability Zone ID for the us-east-1 AWS
1257
+ # Region, and it has the same location in every AWS account.
1258
+ # @return [String]
1116
1259
  #
1117
1260
  # @!attribute [rw] tags
1118
1261
  # The tags associated with the file system, presented as an array of
@@ -1136,6 +1279,8 @@ module Aws::EFS
1136
1279
  :kms_key_id,
1137
1280
  :throughput_mode,
1138
1281
  :provisioned_throughput_in_mibps,
1282
+ :availability_zone_name,
1283
+ :availability_zone_id,
1139
1284
  :tags)
1140
1285
  SENSITIVE = []
1141
1286
  include Aws::Structure
@@ -1294,7 +1439,7 @@ module Aws::EFS
1294
1439
  # system in provisioned throughput mode, when you attempt to increase
1295
1440
  # the provisioned throughput of an existing file system, or when you
1296
1441
  # attempt to change an existing file system from bursting to provisioned
1297
- # throughput mode.
1442
+ # throughput mode. Try again later.
1298
1443
  #
1299
1444
  # @!attribute [rw] error_code
1300
1445
  # @return [String]
@@ -1425,9 +1570,9 @@ module Aws::EFS
1425
1570
  # @return [Integer]
1426
1571
  #
1427
1572
  # @!attribute [rw] next_token
1428
- # You can use `NextToken` in a subsequent request to fetch the next
1429
- # page of access point descriptions if the response payload was
1430
- # paginated.
1573
+ # (Optional) You can use `NextToken` in a subsequent request to fetch
1574
+ # the next page of access point descriptions if the response payload
1575
+ # was paginated.
1431
1576
  # @return [String]
1432
1577
  #
1433
1578
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/ListTagsForResourceRequest AWS API Documentation
@@ -1535,22 +1680,22 @@ module Aws::EFS
1535
1680
  # @return [String]
1536
1681
  #
1537
1682
  # @!attribute [rw] availability_zone_id
1538
- # The unique and consistent identifier of the Availability Zone (AZ)
1539
- # that the mount target resides in. For example, `use1-az1` is an AZ
1540
- # ID for the us-east-1 Region and it has the same location in every
1541
- # AWS account.
1683
+ # The unique and consistent identifier of the Availability Zone that
1684
+ # the mount target resides in. For example, `use1-az1` is an AZ ID for
1685
+ # the us-east-1 Region and it has the same location in every AWS
1686
+ # account.
1542
1687
  # @return [String]
1543
1688
  #
1544
1689
  # @!attribute [rw] availability_zone_name
1545
- # The name of the Availability Zone (AZ) that the mount target resides
1546
- # in. AZs are independently mapped to names for each AWS account. For
1547
- # example, the Availability Zone `us-east-1a` for your AWS account
1548
- # might not be the same location as `us-east-1a` for another AWS
1549
- # account.
1690
+ # The name of the Availability Zone in which the mount target is
1691
+ # located. Availability Zones are independently mapped to names for
1692
+ # each AWS account. For example, the Availability Zone `us-east-1a`
1693
+ # for your AWS account might not be the same location as `us-east-1a`
1694
+ # for another AWS account.
1550
1695
  # @return [String]
1551
1696
  #
1552
1697
  # @!attribute [rw] vpc_id
1553
- # The Virtual Private Cloud (VPC) ID that the mount target is
1698
+ # The virtual private cloud (VPC) ID that the mount target is
1554
1699
  # configured in.
1555
1700
  # @return [String]
1556
1701
  #
@@ -1689,6 +1834,37 @@ module Aws::EFS
1689
1834
  include Aws::Structure
1690
1835
  end
1691
1836
 
1837
+ # @note When making an API call, you may pass PutAccountPreferencesRequest
1838
+ # data as a hash:
1839
+ #
1840
+ # {
1841
+ # resource_id_type: "LONG_ID", # required, accepts LONG_ID, SHORT_ID
1842
+ # }
1843
+ #
1844
+ # @!attribute [rw] resource_id_type
1845
+ # A preference indicating a choice to use 63bit/32bit IDs for all
1846
+ # applicable resources.
1847
+ # @return [String]
1848
+ #
1849
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/PutAccountPreferencesRequest AWS API Documentation
1850
+ #
1851
+ class PutAccountPreferencesRequest < Struct.new(
1852
+ :resource_id_type)
1853
+ SENSITIVE = []
1854
+ include Aws::Structure
1855
+ end
1856
+
1857
+ # @!attribute [rw] resource_id_preference
1858
+ # @return [Types::ResourceIdPreference]
1859
+ #
1860
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/PutAccountPreferencesResponse AWS API Documentation
1861
+ #
1862
+ class PutAccountPreferencesResponse < Struct.new(
1863
+ :resource_id_preference)
1864
+ SENSITIVE = []
1865
+ include Aws::Structure
1866
+ end
1867
+
1692
1868
  # @note When making an API call, you may pass PutBackupPolicyRequest
1693
1869
  # data as a hash:
1694
1870
  #
@@ -1732,9 +1908,9 @@ module Aws::EFS
1732
1908
  #
1733
1909
  # @!attribute [rw] policy
1734
1910
  # The `FileSystemPolicy` that you're creating. Accepts a JSON
1735
- # formatted policy definition. To find out more about the elements
1736
- # that make up a file system policy, see [EFS Resource-based
1737
- # Policies][1].
1911
+ # formatted policy definition. EFS file system policies have a 20,000
1912
+ # character limit. To find out more about the elements that make up a
1913
+ # file system policy, see [EFS Resource-based Policies][1].
1738
1914
  #
1739
1915
  #
1740
1916
  #
@@ -1796,6 +1972,24 @@ module Aws::EFS
1796
1972
  include Aws::Structure
1797
1973
  end
1798
1974
 
1975
+ # @!attribute [rw] resource_id_type
1976
+ # A preference indicating a choice to use 63bit/32bit IDs for all
1977
+ # applicable resources.
1978
+ # @return [String]
1979
+ #
1980
+ # @!attribute [rw] resources
1981
+ # EFS resources to which a preference applies to.
1982
+ # @return [Array<String>]
1983
+ #
1984
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/ResourceIdPreference AWS API Documentation
1985
+ #
1986
+ class ResourceIdPreference < Struct.new(
1987
+ :resource_id_type,
1988
+ :resources)
1989
+ SENSITIVE = []
1990
+ include Aws::Structure
1991
+ end
1992
+
1799
1993
  # Specifies the directory on the Amazon EFS file system that the access
1800
1994
  # point provides access to. The access point exposes the specified file
1801
1995
  # system path as the root directory of your file system to applications
@@ -1901,7 +2095,7 @@ module Aws::EFS
1901
2095
 
1902
2096
  # A tag is a key-value pair. Allowed characters are letters, white
1903
2097
  # space, and numbers that can be represented in UTF-8, and the following
1904
- # characters:` + - = . _ : /`
2098
+ # characters:` + - = . _ : /`.
1905
2099
  #
1906
2100
  # @note When making an API call, you may pass Tag
1907
2101
  # data as a hash:
@@ -1947,6 +2141,8 @@ module Aws::EFS
1947
2141
  # @return [String]
1948
2142
  #
1949
2143
  # @!attribute [rw] tags
2144
+ # An array of `Tag` objects to add. Each `Tag` object is a key-value
2145
+ # pair.
1950
2146
  # @return [Array<Types::Tag>]
1951
2147
  #
1952
2148
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/TagResourceRequest AWS API Documentation
@@ -1995,6 +2191,9 @@ module Aws::EFS
1995
2191
  include Aws::Structure
1996
2192
  end
1997
2193
 
2194
+ # Returned if the requested Amazon EFS functionality is not available in
2195
+ # the specified Availability Zone.
2196
+ #
1998
2197
  # @!attribute [rw] error_code
1999
2198
  # @return [String]
2000
2199
  #
@@ -2023,7 +2222,7 @@ module Aws::EFS
2023
2222
  # @return [String]
2024
2223
  #
2025
2224
  # @!attribute [rw] tag_keys
2026
- # The keys of the key:value tag pairs that you want to remove from the
2225
+ # The keys of the key-value tag pairs that you want to remove from the
2027
2226
  # specified EFS resource.
2028
2227
  # @return [Array<String>]
2029
2228
  #
@@ -2050,19 +2249,19 @@ module Aws::EFS
2050
2249
  # @return [String]
2051
2250
  #
2052
2251
  # @!attribute [rw] throughput_mode
2053
- # (Optional) The throughput mode that you want your file system to
2054
- # use. If you're not updating your throughput mode, you don't need
2055
- # to provide this value in your request. If you are changing the
2056
- # `ThroughputMode` to `provisioned`, you must also set a value for
2252
+ # (Optional) Updates the file system's throughput mode. If you're
2253
+ # not updating your throughput mode, you don't need to provide this
2254
+ # value in your request. If you are changing the `ThroughputMode` to
2255
+ # `provisioned`, you must also set a value for
2057
2256
  # `ProvisionedThroughputInMibps`.
2058
2257
  # @return [String]
2059
2258
  #
2060
2259
  # @!attribute [rw] provisioned_throughput_in_mibps
2061
- # (Optional) The amount of throughput, in MiB/s, that you want to
2062
- # provision for your file system. Valid values are 1-1024. Required if
2063
- # `ThroughputMode` is changed to `provisioned` on update. If you're
2064
- # not updating the amount of provisioned throughput for your file
2065
- # system, you don't need to provide this value in your request.
2260
+ # (Optional) Sets the amount of provisioned throughput, in MiB/s, for
2261
+ # the file system. Valid values are 1-1024. If you are changing the
2262
+ # throughput mode to provisioned, you must also provide the amount of
2263
+ # provisioned throughput. Required if `ThroughputMode` is changed to
2264
+ # `provisioned` on update.
2066
2265
  # @return [Float]
2067
2266
  #
2068
2267
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/UpdateFileSystemRequest AWS API Documentation
@@ -2075,8 +2274,8 @@ module Aws::EFS
2075
2274
  include Aws::Structure
2076
2275
  end
2077
2276
 
2078
- # Returned if the AWS Backup service is not available in the region that
2079
- # the request was made.
2277
+ # Returned if the AWS Backup service is not available in the Region in
2278
+ # which the request was made.
2080
2279
  #
2081
2280
  # @!attribute [rw] error_code
2082
2281
  # @return [String]