Skip to content

Commit 4183714

Browse files
author
awstools
committed
feat(client-efs): Adding support for EFS Archive lifecycle configuration.
1 parent 229ea23 commit 4183714

21 files changed

+534
-222
lines changed

clients/client-efs/src/commands/CreateAccessPointCommand.ts

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -37,13 +37,14 @@ export interface CreateAccessPointCommandOutput extends AccessPointDescription,
3737

3838
/**
3939
* @public
40-
* <p>Creates an EFS access point. An access point is an application-specific view into an EFS
41-
* file system that applies an operating system user and group, and a file system path, to any
42-
* file system request made through the access point. The operating system user and group
43-
* override any identity information provided by the NFS client. The file system path is exposed
44-
* as the access point's root directory. Applications using the access point can only access data in
45-
* the application's own directory and any subdirectories. To learn more, see <a href="https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html">Mounting a file system using EFS access
46-
* points</a>.</p>
40+
* <p>Creates an EFS access point. An access point is an application-specific view
41+
* into an EFS file system that applies an operating system user and group, and a file
42+
* system path, to any file system request made through the access point. The operating system
43+
* user and group override any identity information provided by the NFS client. The file system
44+
* path is exposed as the access point's root directory. Applications using the access point can
45+
* only access data in the application's own directory and any subdirectories. To learn more, see
46+
* <a href="https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html">Mounting a file
47+
* system using EFS access points</a>.</p>
4748
* <note>
4849
* <p>If multiple requests to create access points on the same file system are sent in quick
4950
* succession, and the file system is near the limit of 1,000 access points, you may experience

clients/client-efs/src/commands/CreateFileSystemCommand.ts

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ export interface CreateFileSystemCommandOutput extends FileSystemDescription, __
5757
* <p>For basic use cases, you can use a randomly generated UUID for the creation
5858
* token.</p>
5959
* </note>
60-
* <p> The idempotent operation allows you to retry a <code>CreateFileSystem</code> call without
60+
* <p>The idempotent operation allows you to retry a <code>CreateFileSystem</code> call without
6161
* risk of creating an extra file system. This can happen when an initial call fails in a way
6262
* that leaves it uncertain whether or not a file system was actually created. An example might
6363
* be that a transport level timeout occurred or your connection was reset. As long as you use
@@ -72,11 +72,15 @@ export interface CreateFileSystemCommandOutput extends FileSystemDescription, __
7272
* calling the <a>DescribeFileSystems</a> operation, which among other things returns the file
7373
* system state.</p>
7474
* </note>
75-
* <p>This operation accepts an optional <code>PerformanceMode</code> parameter that you
76-
* choose for your file system. We recommend <code>generalPurpose</code> performance mode for
77-
* most file systems. File systems using the <code>maxIO</code> performance mode can scale to
78-
* higher levels of aggregate throughput and operations per second with a tradeoff of slightly
79-
* higher latencies for most file operations. The performance mode can't be changed after
75+
* <p>This operation accepts an optional <code>PerformanceMode</code> parameter that you choose
76+
* for your file system. We recommend <code>generalPurpose</code> performance mode for all file
77+
* systems. File systems using the <code>maxIO</code> mode is a previous generation performance type that is designed for highly parallelized workloads that can tolerate higher latencies
78+
* than the General Purpose mode. Max I/O mode is not supported for One Zone file systems or
79+
* file systems that use Elastic throughput.</p>
80+
* <important>
81+
* <p>Due to the higher per-operation latencies with Max I/O, we recommend using General Purpose performance mode for all file systems.</p>
82+
* </important>
83+
* <p>The performance mode can't be changed after
8084
* the file system has been created. For more information, see <a href="https://docs.aws.amazon.com/efs/latest/ug/performance.html#performancemodes.html">Amazon EFS performance
8185
* modes</a>.</p>
8286
* <p>You can set the throughput mode for the file system using the <code>ThroughputMode</code> parameter.</p>
@@ -129,6 +133,7 @@ export interface CreateFileSystemCommandOutput extends FileSystemDescription, __
129133
* // Timestamp: new Date("TIMESTAMP"),
130134
* // ValueInIA: Number("long"),
131135
* // ValueInStandard: Number("long"),
136+
* // ValueInArchive: Number("long"),
132137
* // },
133138
* // PerformanceMode: "generalPurpose" || "maxIO", // required
134139
* // Encrypted: true || false,

clients/client-efs/src/commands/CreateMountTargetCommand.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,12 +44,12 @@ export interface CreateMountTargetCommandOutput extends MountTargetDescription,
4444
* file system. If you have multiple subnets in an Availability Zone, you create a mount target
4545
* in one of the subnets. EC2 instances do not need to be in the same subnet as the mount target
4646
* in order to access their file system.</p>
47-
* <p>You can create only one mount target for an EFS file system using One Zone storage
48-
* classes. You must create that mount target in the same Availability Zone in which the file
49-
* system is located. Use the <code>AvailabilityZoneName</code> and
50-
* <code>AvailabiltyZoneId</code> properties in the <a>DescribeFileSystems</a>
51-
* response object to get this information. Use the <code>subnetId</code> associated with the
52-
* file system's Availability Zone when creating the mount target.</p>
47+
* <p>You can create only one mount target for a One Zone file system.
48+
* You must create that mount target in the same Availability Zone in which the file system is
49+
* located. Use the <code>AvailabilityZoneName</code> and <code>AvailabiltyZoneId</code>
50+
* properties in the <a>DescribeFileSystems</a> response object to get this
51+
* information. Use the <code>subnetId</code> associated with the file system's Availability Zone
52+
* when creating the mount target.</p>
5353
* <p>For more information, see <a href="https://docs.aws.amazon.com/efs/latest/ug/how-it-works.html">Amazon EFS: How it Works</a>. </p>
5454
* <p>To create a mount target for a file system, the file system's lifecycle state must be
5555
* <code>available</code>. For more information, see <a>DescribeFileSystems</a>.</p>

clients/client-efs/src/commands/CreateReplicationConfigurationCommand.ts

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,8 @@ export interface CreateReplicationConfigurationCommandOutput
4242

4343
/**
4444
* @public
45-
* <p>Creates a replication configuration that replicates an existing EFS file system to a new,
46-
* read-only file system. For more information, see <a href="https://docs.aws.amazon.com/efs/latest/ug/efs-replication.html">Amazon EFS replication</a> in the
45+
* <p>Creates a replication configuration that replicates an existing EFS file system
46+
* to a new, read-only file system. For more information, see <a href="https://docs.aws.amazon.com/efs/latest/ug/efs-replication.html">Amazon EFS replication</a> in the
4747
* <i>Amazon EFS User Guide</i>. The replication configuration
4848
* specifies the following:</p>
4949
* <ul>
@@ -71,9 +71,8 @@ export interface CreateReplicationConfigurationCommandOutput
7171
* <li>
7272
* <p>
7373
* <b>Availability Zone</b> - If you want the destination file system
74-
* to use EFS One Zone availability and durability, you must specify the Availability
75-
* Zone to create the file system in. For more information about EFS storage classes, see
76-
* <a href="https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html">
74+
* to use EFS One Zone availability, you must specify the Availability Zone to create the
75+
* file system in. For more information about EFS storage classes, see <a href="https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html">
7776
* Amazon EFS storage classes</a> in the <i>Amazon EFS User
7877
* Guide</i>.</p>
7978
* </li>
@@ -110,14 +109,13 @@ export interface CreateReplicationConfigurationCommandOutput
110109
* <ul>
111110
* <li>
112111
* <p>
113-
* <b>Lifecycle management</b> - EFS lifecycle management and EFS
114-
* Intelligent-Tiering are not enabled on the destination file system. After the destination
115-
* file system is created, you can enable EFS lifecycle management and EFS
116-
* Intelligent-Tiering.</p>
112+
* <b>Lifecycle management</b> – Lifecycle management is not enabled
113+
* on the destination file system. After the destination file system is created, you can
114+
* enable it.</p>
117115
* </li>
118116
* <li>
119117
* <p>
120-
* <b>Automatic backups</b> - Automatic daily backups are enabled on
118+
* <b>Automatic backups</b> Automatic daily backups are enabled on
121119
* the destination file system. After the file system is created, you can change this
122120
* setting.</p>
123121
* </li>

clients/client-efs/src/commands/DescribeAccessPointsCommand.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,11 @@ export interface DescribeAccessPointsCommandOutput extends DescribeAccessPointsR
3737

3838
/**
3939
* @public
40-
* <p>Returns the description of a specific Amazon EFS access point if the <code>AccessPointId</code> is provided.
41-
* If you provide an EFS <code>FileSystemId</code>, it returns descriptions of all access points for that file system.
42-
* You can provide either an <code>AccessPointId</code> or a <code>FileSystemId</code> in the request, but not both. </p>
40+
* <p>Returns the description of a specific Amazon EFS access point if the
41+
* <code>AccessPointId</code> is provided. If you provide an EFS
42+
* <code>FileSystemId</code>, it returns descriptions of all access points for that file
43+
* system. You can provide either an <code>AccessPointId</code> or a <code>FileSystemId</code> in
44+
* the request, but not both. </p>
4345
* <p>This operation requires permissions for the <code>elasticfilesystem:DescribeAccessPoints</code> action.</p>
4446
* @example
4547
* Use a bare-bones client and the command you need to make an API call.

clients/client-efs/src/commands/DescribeFileSystemPolicyCommand.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,8 @@ export interface DescribeFileSystemPolicyCommandOutput extends FileSystemPolicyD
3737

3838
/**
3939
* @public
40-
* <p>Returns the <code>FileSystemPolicy</code> for the specified EFS file system.</p>
40+
* <p>Returns the <code>FileSystemPolicy</code> for the specified EFS file
41+
* system.</p>
4142
* <p>This operation requires permissions for the <code>elasticfilesystem:DescribeFileSystemPolicy</code> action.</p>
4243
* @example
4344
* Use a bare-bones client and the command you need to make an API call.

clients/client-efs/src/commands/DescribeFileSystemsCommand.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,7 @@ export interface DescribeFileSystemsCommandOutput extends DescribeFileSystemsRes
8888
* // Timestamp: new Date("TIMESTAMP"),
8989
* // ValueInIA: Number("long"),
9090
* // ValueInStandard: Number("long"),
91+
* // ValueInArchive: Number("long"),
9192
* // },
9293
* // PerformanceMode: "generalPurpose" || "maxIO", // required
9394
* // Encrypted: true || false,

clients/client-efs/src/commands/DescribeLifecycleConfigurationCommand.ts

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,10 @@ export interface DescribeLifecycleConfigurationCommandOutput
4343
/**
4444
* @public
4545
* <p>Returns the current <code>LifecycleConfiguration</code> object for the specified Amazon
46-
* EFS file system. EFS lifecycle management uses the <code>LifecycleConfiguration</code> object
47-
* to identify which files to move to the EFS Infrequent Access (IA) storage class. For a file system
48-
* without a <code>LifecycleConfiguration</code> object, the call returns an empty array in the
46+
* EFS file system. Llifecycle management uses the <code>LifecycleConfiguration</code> object to
47+
* identify when to move files between storage classes. For a file system without a
48+
* <code>LifecycleConfiguration</code> object, the call returns an empty array in the
4949
* response.</p>
50-
* <p>When EFS Intelligent-Tiering is enabled, <code>TransitionToPrimaryStorageClass</code> has
51-
* a value of <code>AFTER_1_ACCESS</code>.</p>
5250
* <p>This operation requires permissions for the
5351
* <code>elasticfilesystem:DescribeLifecycleConfiguration</code> operation.</p>
5452
* @example
@@ -65,8 +63,9 @@ export interface DescribeLifecycleConfigurationCommandOutput
6563
* // { // LifecycleConfigurationDescription
6664
* // LifecyclePolicies: [ // LifecyclePolicies
6765
* // { // LifecyclePolicy
68-
* // TransitionToIA: "AFTER_7_DAYS" || "AFTER_14_DAYS" || "AFTER_30_DAYS" || "AFTER_60_DAYS" || "AFTER_90_DAYS" || "AFTER_1_DAY",
66+
* // TransitionToIA: "AFTER_7_DAYS" || "AFTER_14_DAYS" || "AFTER_30_DAYS" || "AFTER_60_DAYS" || "AFTER_90_DAYS" || "AFTER_1_DAY" || "AFTER_180_DAYS" || "AFTER_270_DAYS" || "AFTER_365_DAYS",
6967
* // TransitionToPrimaryStorageClass: "AFTER_1_ACCESS",
68+
* // TransitionToArchive: "AFTER_1_DAY" || "AFTER_7_DAYS" || "AFTER_14_DAYS" || "AFTER_30_DAYS" || "AFTER_60_DAYS" || "AFTER_90_DAYS" || "AFTER_180_DAYS" || "AFTER_270_DAYS" || "AFTER_365_DAYS",
7069
* // },
7170
* // ],
7271
* // };

clients/client-efs/src/commands/ListTagsForResourceCommand.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,8 @@ export interface ListTagsForResourceCommandOutput extends ListTagsForResourceRes
3737

3838
/**
3939
* @public
40-
* <p>Lists all tags for a top-level EFS resource. You must provide the ID of the resource that you want to retrieve the tags for.</p>
40+
* <p>Lists all tags for a top-level EFS resource. You must provide the ID of the
41+
* resource that you want to retrieve the tags for.</p>
4142
* <p>This operation requires permissions for the <code>elasticfilesystem:DescribeAccessPoints</code> action.</p>
4243
* @example
4344
* Use a bare-bones client and the command you need to make an API call.

clients/client-efs/src/commands/PutAccountPreferencesCommand.ts

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,10 @@ export interface PutAccountPreferencesCommandOutput extends PutAccountPreference
3838
/**
3939
* @public
4040
* <p>Use this operation to set the account preference in the current Amazon Web Services Region
41-
* to use long 17 character (63 bit) or short 8 character (32 bit) resource IDs for
42-
* new EFS file system and mount target resources. All existing resource IDs are not affected
43-
* by any changes you make. You can set the ID preference during the
44-
* opt-in period as EFS transitions to long resource IDs. For more information,
45-
* see <a href="https://docs.aws.amazon.com/efs/latest/ug/manage-efs-resource-ids.html">Managing Amazon EFS resource IDs</a>.</p>
41+
* to use long 17 character (63 bit) or short 8 character (32 bit) resource IDs for new
42+
* EFS file system and mount target resources. All existing resource IDs are not
43+
* affected by any changes you make. You can set the ID preference during the opt-in period as
44+
* EFS transitions to long resource IDs. For more information, see <a href="https://docs.aws.amazon.com/efs/latest/ug/manage-efs-resource-ids.html">Managing Amazon EFS resource IDs</a>.</p>
4645
* <note>
4746
* <p>Starting in October, 2021, you will receive an error if you try to set the account preference
4847
* to use the short 8 character format resource ID. Contact Amazon Web Services support if you

clients/client-efs/src/commands/PutFileSystemPolicyCommand.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -37,14 +37,14 @@ export interface PutFileSystemPolicyCommandOutput extends FileSystemPolicyDescri
3737

3838
/**
3939
* @public
40-
* <p>Applies an Amazon EFS <code>FileSystemPolicy</code> to an Amazon EFS file system.
41-
* A file system policy is an IAM resource-based policy and can contain multiple policy statements.
42-
* A file system always has exactly one file system policy, which can be the default policy or
43-
* an explicit policy set or updated using this API operation.
44-
* EFS file system policies have a 20,000 character limit.
45-
* When an explicit policy is set, it overrides the default policy. For more information about the default file system policy, see
46-
* <a href="https://docs.aws.amazon.com/efs/latest/ug/iam-access-control-nfs-efs.html#default-filesystempolicy">Default EFS File System Policy</a>.
47-
* </p>
40+
* <p>Applies an Amazon EFS
41+
* <code>FileSystemPolicy</code> to an Amazon EFS file system. A file system policy is an
42+
* IAM resource-based policy and can contain multiple policy statements. A file system always has
43+
* exactly one file system policy, which can be the default policy or an explicit policy set or
44+
* updated using this API operation. EFS file system policies have a 20,000 character
45+
* limit. When an explicit policy is set, it overrides the default policy. For more information
46+
* about the default file system policy, see <a href="https://docs.aws.amazon.com/efs/latest/ug/iam-access-control-nfs-efs.html#default-filesystempolicy">Default EFS
47+
* File System Policy</a>. </p>
4848
* <note>
4949
* <p>EFS file system policies have a 20,000 character limit.</p>
5050
* </note>

0 commit comments

Comments
 (0)