amazonka-efs-2.0: Amazon Elastic File System SDK.
Copyright(c) 2013-2023 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellSafe-Inferred
LanguageHaskell2010

Amazonka.EFS.PutLifecycleConfiguration

Description

Use this action to manage EFS lifecycle management and EFS Intelligent-Tiering. A LifecycleConfiguration consists of one or more LifecyclePolicy objects that define the following:

  • EFS Lifecycle management - When Amazon EFS automatically transitions files in a file system into the lower-cost EFS Infrequent Access (IA) storage class.

    To enable EFS Lifecycle management, set the value of TransitionToIA to one of the available options.

  • EFS Intelligent-Tiering - When Amazon EFS automatically transitions files from IA back into the file system's primary storage class (EFS Standard or EFS One Zone Standard).

    To enable EFS Intelligent-Tiering, set the value of TransitionToPrimaryStorageClass to AFTER_1_ACCESS.

For more information, see EFS Lifecycle Management.

Each Amazon EFS file system supports one lifecycle configuration, which applies to all files in the file system. If a LifecycleConfiguration object already exists for the specified file system, a PutLifecycleConfiguration call modifies the existing configuration. A PutLifecycleConfiguration call with an empty LifecyclePolicies array in the request body deletes any existing LifecycleConfiguration and turns off lifecycle management and EFS Intelligent-Tiering for the file system.

In the request, specify the following:

  • The ID for the file system for which you are enabling, disabling, or modifying lifecycle management and EFS Intelligent-Tiering.
  • A LifecyclePolicies array of LifecyclePolicy objects that define when files are moved into IA storage, and when they are moved back to Standard storage.

    Amazon EFS requires that each LifecyclePolicy object have only have a single transition, so the LifecyclePolicies array needs to be structured with separate LifecyclePolicy objects. See the example requests in the following section for more information.

This operation requires permissions for the elasticfilesystem:PutLifecycleConfiguration operation.

To apply a LifecycleConfiguration object to an encrypted file system, you need the same Key Management Service permissions as when you created the encrypted file system.

Synopsis

Creating a Request

data PutLifecycleConfiguration Source #

See: newPutLifecycleConfiguration smart constructor.

Constructors

PutLifecycleConfiguration' 

Fields

  • fileSystemId :: Text

    The ID of the file system for which you are creating the LifecycleConfiguration object (String).

  • lifecyclePolicies :: [LifecyclePolicy]

    An array of LifecyclePolicy objects that define the file system's LifecycleConfiguration object. A LifecycleConfiguration object informs EFS lifecycle management and EFS Intelligent-Tiering of the following:

    • When to move files in the file system from primary storage to the IA storage class.
    • When to move files that are in IA storage to primary storage.

    When using the put-lifecycle-configuration CLI command or the PutLifecycleConfiguration API action, Amazon EFS requires that each LifecyclePolicy object have only a single transition. This means that in a request body, LifecyclePolicies must be structured as an array of LifecyclePolicy objects, one object for each transition, TransitionToIA, TransitionToPrimaryStorageClass. See the example requests in the following section for more information.

Instances

Instances details
ToJSON PutLifecycleConfiguration Source # 
Instance details

Defined in Amazonka.EFS.PutLifecycleConfiguration

ToHeaders PutLifecycleConfiguration Source # 
Instance details

Defined in Amazonka.EFS.PutLifecycleConfiguration

ToPath PutLifecycleConfiguration Source # 
Instance details

Defined in Amazonka.EFS.PutLifecycleConfiguration

ToQuery PutLifecycleConfiguration Source # 
Instance details

Defined in Amazonka.EFS.PutLifecycleConfiguration

AWSRequest PutLifecycleConfiguration Source # 
Instance details

Defined in Amazonka.EFS.PutLifecycleConfiguration

Generic PutLifecycleConfiguration Source # 
Instance details

Defined in Amazonka.EFS.PutLifecycleConfiguration

Associated Types

type Rep PutLifecycleConfiguration :: Type -> Type #

Read PutLifecycleConfiguration Source # 
Instance details

Defined in Amazonka.EFS.PutLifecycleConfiguration

Show PutLifecycleConfiguration Source # 
Instance details

Defined in Amazonka.EFS.PutLifecycleConfiguration

NFData PutLifecycleConfiguration Source # 
Instance details

Defined in Amazonka.EFS.PutLifecycleConfiguration

Eq PutLifecycleConfiguration Source # 
Instance details

Defined in Amazonka.EFS.PutLifecycleConfiguration

Hashable PutLifecycleConfiguration Source # 
Instance details

Defined in Amazonka.EFS.PutLifecycleConfiguration

type AWSResponse PutLifecycleConfiguration Source # 
Instance details

Defined in Amazonka.EFS.PutLifecycleConfiguration

type Rep PutLifecycleConfiguration Source # 
Instance details

Defined in Amazonka.EFS.PutLifecycleConfiguration

type Rep PutLifecycleConfiguration = D1 ('MetaData "PutLifecycleConfiguration" "Amazonka.EFS.PutLifecycleConfiguration" "amazonka-efs-2.0-EHRjUBbcNxzHWDmYi0HAD5" 'False) (C1 ('MetaCons "PutLifecycleConfiguration'" 'PrefixI 'True) (S1 ('MetaSel ('Just "fileSystemId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "lifecyclePolicies") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [LifecyclePolicy])))

newPutLifecycleConfiguration Source #

Create a value of PutLifecycleConfiguration with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

PutLifecycleConfiguration, putLifecycleConfiguration_fileSystemId - The ID of the file system for which you are creating the LifecycleConfiguration object (String).

PutLifecycleConfiguration, putLifecycleConfiguration_lifecyclePolicies - An array of LifecyclePolicy objects that define the file system's LifecycleConfiguration object. A LifecycleConfiguration object informs EFS lifecycle management and EFS Intelligent-Tiering of the following:

  • When to move files in the file system from primary storage to the IA storage class.
  • When to move files that are in IA storage to primary storage.

When using the put-lifecycle-configuration CLI command or the PutLifecycleConfiguration API action, Amazon EFS requires that each LifecyclePolicy object have only a single transition. This means that in a request body, LifecyclePolicies must be structured as an array of LifecyclePolicy objects, one object for each transition, TransitionToIA, TransitionToPrimaryStorageClass. See the example requests in the following section for more information.

Request Lenses

putLifecycleConfiguration_fileSystemId :: Lens' PutLifecycleConfiguration Text Source #

The ID of the file system for which you are creating the LifecycleConfiguration object (String).

putLifecycleConfiguration_lifecyclePolicies :: Lens' PutLifecycleConfiguration [LifecyclePolicy] Source #

An array of LifecyclePolicy objects that define the file system's LifecycleConfiguration object. A LifecycleConfiguration object informs EFS lifecycle management and EFS Intelligent-Tiering of the following:

  • When to move files in the file system from primary storage to the IA storage class.
  • When to move files that are in IA storage to primary storage.

When using the put-lifecycle-configuration CLI command or the PutLifecycleConfiguration API action, Amazon EFS requires that each LifecyclePolicy object have only a single transition. This means that in a request body, LifecyclePolicies must be structured as an array of LifecyclePolicy objects, one object for each transition, TransitionToIA, TransitionToPrimaryStorageClass. See the example requests in the following section for more information.

Destructuring the Response

data LifecycleConfigurationDescription Source #

See: newLifecycleConfigurationDescription smart constructor.

Constructors

LifecycleConfigurationDescription' 

Fields

Instances

Instances details
FromJSON LifecycleConfigurationDescription Source # 
Instance details

Defined in Amazonka.EFS.Types.LifecycleConfigurationDescription

Generic LifecycleConfigurationDescription Source # 
Instance details

Defined in Amazonka.EFS.Types.LifecycleConfigurationDescription

Associated Types

type Rep LifecycleConfigurationDescription :: Type -> Type #

Read LifecycleConfigurationDescription Source # 
Instance details

Defined in Amazonka.EFS.Types.LifecycleConfigurationDescription

Show LifecycleConfigurationDescription Source # 
Instance details

Defined in Amazonka.EFS.Types.LifecycleConfigurationDescription

NFData LifecycleConfigurationDescription Source # 
Instance details

Defined in Amazonka.EFS.Types.LifecycleConfigurationDescription

Eq LifecycleConfigurationDescription Source # 
Instance details

Defined in Amazonka.EFS.Types.LifecycleConfigurationDescription

Hashable LifecycleConfigurationDescription Source # 
Instance details

Defined in Amazonka.EFS.Types.LifecycleConfigurationDescription

type Rep LifecycleConfigurationDescription Source # 
Instance details

Defined in Amazonka.EFS.Types.LifecycleConfigurationDescription

type Rep LifecycleConfigurationDescription = D1 ('MetaData "LifecycleConfigurationDescription" "Amazonka.EFS.Types.LifecycleConfigurationDescription" "amazonka-efs-2.0-EHRjUBbcNxzHWDmYi0HAD5" 'False) (C1 ('MetaCons "LifecycleConfigurationDescription'" 'PrefixI 'True) (S1 ('MetaSel ('Just "lifecyclePolicies") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [LifecyclePolicy]))))

newLifecycleConfigurationDescription :: LifecycleConfigurationDescription Source #

Create a value of LifecycleConfigurationDescription with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:lifecyclePolicies:LifecycleConfigurationDescription', lifecycleConfigurationDescription_lifecyclePolicies - An array of lifecycle management policies. EFS supports a maximum of one policy per file system.

Response Lenses

lifecycleConfigurationDescription_lifecyclePolicies :: Lens' LifecycleConfigurationDescription (Maybe [LifecyclePolicy]) Source #

An array of lifecycle management policies. EFS supports a maximum of one policy per file system.