Copyright | (c) 2013-2016 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay@gmail.com> |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Language | Haskell2010 |
Creates a new, empty file system. The operation requires a creation token in the request that Amazon EFS uses to ensure idempotent creation (calling the operation with same creation token has no effect). If a file system does not currently exist that is owned by the caller's AWS account with the specified creation token, this operation does the following:
- Creates a new, empty file system. The file system will have an Amazon EFS assigned ID, and an initial lifecycle state "creating".
- Returns with the description of the created file system.
Otherwise, this operation returns a FileSystemAlreadyExists
error with the ID of the existing file system.
For basic use cases, you can use a randomly generated UUID for the creation token.
The idempotent operation allows you to retry a CreateFileSystem
call without risk of creating an extra file system. This can happen when an initial call fails in a way that leaves it uncertain whether or not a file system was actually created. An example might be that a transport level timeout occurred or your connection was reset. As long as you use the same creation token, if the initial call had succeeded in creating a file system, the client can learn of its existence from the FileSystemAlreadyExists
error.
The CreateFileSystem
call returns while the file system's lifecycle state is still "creating". You can check the file system creation status by calling the DescribeFileSystems API, which among other things returns the file system state.
After the file system is fully created, Amazon EFS sets its lifecycle state to "available", at which point you can create one or more mount targets for the file system (CreateMountTarget) in your VPC. You mount your Amazon EFS file system on an EC2 instances in your VPC via the mount target. For more information, see Amazon EFS: How it Works
This operation requires permission for the 'elasticfilesystem:CreateFileSystem' action.
- createFileSystem :: Text -> CreateFileSystem
- data CreateFileSystem
- cfsCreationToken :: Lens' CreateFileSystem Text
- fileSystemDescription :: Text -> Text -> Text -> UTCTime -> LifeCycleState -> Natural -> FileSystemSize -> FileSystemDescription
- data FileSystemDescription
- fsdName :: Lens' FileSystemDescription (Maybe Text)
- fsdOwnerId :: Lens' FileSystemDescription Text
- fsdCreationToken :: Lens' FileSystemDescription Text
- fsdFileSystemId :: Lens' FileSystemDescription Text
- fsdCreationTime :: Lens' FileSystemDescription UTCTime
- fsdLifeCycleState :: Lens' FileSystemDescription LifeCycleState
- fsdNumberOfMountTargets :: Lens' FileSystemDescription Natural
- fsdSizeInBytes :: Lens' FileSystemDescription FileSystemSize
Creating a Request
Creates a value of CreateFileSystem
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
data CreateFileSystem Source #
See: createFileSystem
smart constructor.
Request Lenses
cfsCreationToken :: Lens' CreateFileSystem Text Source #
String of up to 64 ASCII characters. Amazon EFS uses this to ensure idempotent creation.
Destructuring the Response
fileSystemDescription Source #
:: Text | |
-> Text | |
-> Text | |
-> UTCTime | |
-> LifeCycleState | |
-> Natural | |
-> FileSystemSize | |
-> FileSystemDescription |
Creates a value of FileSystemDescription
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
data FileSystemDescription Source #
This object provides description of a file system.
See: fileSystemDescription
smart constructor.
Response Lenses
fsdName :: Lens' FileSystemDescription (Maybe Text) Source #
You can add tags to a file system (see CreateTags) including a "Name" tag. If the file system has a "Name" tag, Amazon EFS returns the value in this field.
fsdOwnerId :: Lens' FileSystemDescription Text Source #
The AWS account that created the file system. If the file system was created by an IAM user, the parent account to which the user belongs is the owner.
fsdCreationToken :: Lens' FileSystemDescription Text Source #
Opaque string specified in the request.
fsdFileSystemId :: Lens' FileSystemDescription Text Source #
The file system ID assigned by Amazon EFS.
fsdCreationTime :: Lens' FileSystemDescription UTCTime Source #
The time at which the file system was created, in seconds, since 1970-01-01T00:00:00Z.
fsdLifeCycleState :: Lens' FileSystemDescription LifeCycleState Source #
A predefined string value that indicates the lifecycle phase of the file system.
fsdNumberOfMountTargets :: Lens' FileSystemDescription Natural Source #
The current number of mount targets (see CreateMountTarget) the file system has.
fsdSizeInBytes :: Lens' FileSystemDescription FileSystemSize Source #
This object provides the latest known metered size of data stored in the file system, in bytes, in its Value
field, and the time at which that size was determined in its Timestamp
field. The Timestamp
value is the integer number of seconds since 1970-01-01T00:00:00Z. Note that the value does not represent the size of a consistent snapshot of the file system, but it is eventually consistent when there are no writes to the file system. That is, the value will represent actual size only if the file system is not modified for a period longer than a couple of hours. Otherwise, the value is not the exact size the file system was at any instant in time.