create_data_repository_task

create_data_repository_task(**kwargs)

Creates an Amazon FSx for Lustre data repository task. You use data repository tasks to perform bulk operations between your Amazon FSx file system and its linked data repositories. An example of a data repository task is exporting any data and metadata changes, including POSIX metadata, to files, directories, and symbolic links (symlinks) from your FSx file system to a linked data repository. A CreateDataRepositoryTask operation will fail if a data repository is not linked to the FSx file system. To learn more about data repository tasks, see Data Repository Tasks. To learn more about linking a data repository to your file system, see Linking your file system to an S3 bucket.

See also: AWS API Documentation

Request Syntax

response = client.create_data_repository_task(
    Type='EXPORT_TO_REPOSITORY'|'IMPORT_METADATA_FROM_REPOSITORY'|'RELEASE_DATA_FROM_FILESYSTEM'|'AUTO_RELEASE_DATA',
    Paths=[
        'string',
    ],
    FileSystemId='string',
    Report={
        'Enabled': True|False,
        'Path': 'string',
        'Format': 'REPORT_CSV_20191124',
        'Scope': 'FAILED_FILES_ONLY'
    },
    ClientRequestToken='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    CapacityToRelease=123
)
Parameters
  • Type (string) --

    [REQUIRED]

    Specifies the type of data repository task to create.

  • Paths (list) --

    A list of paths for the data repository task to use when the task is processed. If a path that you provide isn't valid, the task fails.

    • For export tasks, the list contains paths on the Amazon FSx file system from which the files are exported to the Amazon S3 bucket. The default path is the file system root directory. The paths you provide need to be relative to the mount point of the file system. If the mount point is /mnt/fsx and /mnt/fsx/path1 is a directory or file on the file system you want to export, then the path to provide is path1 .
    • For import tasks, the list contains paths in the Amazon S3 bucket from which POSIX metadata changes are imported to the Amazon FSx file system. The path can be an S3 bucket or prefix in the format s3://myBucket/myPrefix (where myPrefix is optional).
    • (string) --
  • FileSystemId (string) --

    [REQUIRED]

    The globally unique ID of the file system, assigned by Amazon FSx.

  • Report (dict) --

    [REQUIRED]

    Defines whether or not Amazon FSx provides a CompletionReport once the task has completed. A CompletionReport provides a detailed report on the files that Amazon FSx processed that meet the criteria specified by the Scope parameter. For more information, see Working with Task Completion Reports.

    • Enabled (boolean) -- [REQUIRED]

      Set Enabled to True to generate a CompletionReport when the task completes. If set to true , then you need to provide a report Scope , Path , and Format . Set Enabled to False if you do not want a CompletionReport generated when the task completes.

    • Path (string) --

      Required if Enabled is set to true . Specifies the location of the report on the file system's linked S3 data repository. An absolute path that defines where the completion report will be stored in the destination location. The Path you provide must be located within the file system’s ExportPath. An example Path value is "s3://myBucket/myExportPath/optionalPrefix". The report provides the following information for each file in the report: FilePath, FileStatus, and ErrorCode. To learn more about a file system's ExportPath , see .

    • Format (string) --

      Required if Enabled is set to true . Specifies the format of the CompletionReport . REPORT_CSV_20191124 is the only format currently supported. When Format is set to REPORT_CSV_20191124 , the CompletionReport is provided in CSV format, and is delivered to {path}/task-{id}/failures.csv .

    • Scope (string) --

      Required if Enabled is set to true . Specifies the scope of the CompletionReport ; FAILED_FILES_ONLY is the only scope currently supported. When Scope is set to FAILED_FILES_ONLY , the CompletionReport only contains information about files that the data repository task failed to process.

  • ClientRequestToken (string) --

    (Optional) An idempotency token for resource creation, in a string of up to 64 ASCII characters. This token is automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web Services SDK.

    This field is autopopulated if not provided.

  • Tags (list) --

    A list of Tag values, with a maximum of 50 elements.

    • (dict) --

      Specifies a key-value pair for a resource tag.

      • Key (string) -- [REQUIRED]

        A value that specifies the TagKey , the name of the tag. Tag keys must be unique for the resource to which they are attached.

      • Value (string) -- [REQUIRED]

        A value that specifies the TagValue , the value assigned to the corresponding tag key. Tag values can be null and don't have to be unique in a tag set. For example, you can have a key-value pair in a tag set of finances : April and also of payroll : April .

  • CapacityToRelease (integer) -- Specifies the amount of data to release, in GiB, by an Amazon File Cache AUTO_RELEASE_DATA task that automatically releases files from the cache.
Return type

dict

Returns

Response Syntax

{
    'DataRepositoryTask': {
        'TaskId': 'string',
        'Lifecycle': 'PENDING'|'EXECUTING'|'FAILED'|'SUCCEEDED'|'CANCELED'|'CANCELING',
        'Type': 'EXPORT_TO_REPOSITORY'|'IMPORT_METADATA_FROM_REPOSITORY'|'RELEASE_DATA_FROM_FILESYSTEM'|'AUTO_RELEASE_DATA',
        'CreationTime': datetime(2015, 1, 1),
        'StartTime': datetime(2015, 1, 1),
        'EndTime': datetime(2015, 1, 1),
        'ResourceARN': 'string',
        'Tags': [
            {
                'Key': 'string',
                'Value': 'string'
            },
        ],
        'FileSystemId': 'string',
        'Paths': [
            'string',
        ],
        'FailureDetails': {
            'Message': 'string'
        },
        'Status': {
            'TotalCount': 123,
            'SucceededCount': 123,
            'FailedCount': 123,
            'LastUpdatedTime': datetime(2015, 1, 1),
            'ReleasedCapacity': 123
        },
        'Report': {
            'Enabled': True|False,
            'Path': 'string',
            'Format': 'REPORT_CSV_20191124',
            'Scope': 'FAILED_FILES_ONLY'
        },
        'CapacityToRelease': 123,
        'FileCacheId': 'string'
    }
}

Response Structure

  • (dict) --

    • DataRepositoryTask (dict) --

      The description of the data repository task that you just created.

      • TaskId (string) --

        The system-generated, unique 17-digit ID of the data repository task.

      • Lifecycle (string) --

        The lifecycle status of the data repository task, as follows:

        • PENDING - The task has not started.
        • EXECUTING - The task is in process.
        • FAILED - The task was not able to be completed. For example, there may be files the task failed to process. The DataRepositoryTaskFailureDetails property provides more information about task failures.
        • SUCCEEDED - The task has completed successfully.
        • CANCELED - The task was canceled and it did not complete.
        • CANCELING - The task is in process of being canceled.

        Note

        You cannot delete an FSx for Lustre file system if there are data repository tasks for the file system in the PENDING or EXECUTING states. Please retry when the data repository task is finished (with a status of CANCELED , SUCCEEDED , or FAILED ). You can use the DescribeDataRepositoryTask action to monitor the task status. Contact the FSx team if you need to delete your file system immediately.

      • Type (string) --

        The type of data repository task.

        • EXPORT_TO_REPOSITORY tasks export from your Amazon FSx for Lustre file system to a linked data repository.
        • IMPORT_METADATA_FROM_REPOSITORY tasks import metadata changes from a linked S3 bucket to your Amazon FSx for Lustre file system.
        • AUTO_RELEASE_DATA tasks automatically release files from an Amazon File Cache resource.
      • CreationTime (datetime) --

        The time that the resource was created, in seconds (since 1970-01-01T00:00:00Z), also known as Unix time.

      • StartTime (datetime) --

        The time the system began processing the task.

      • EndTime (datetime) --

        The time the system completed processing the task, populated after the task is complete.

      • ResourceARN (string) --

        The Amazon Resource Name (ARN) for a given resource. ARNs uniquely identify Amazon Web Services resources. We require an ARN when you need to specify a resource unambiguously across all of Amazon Web Services. For more information, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference .

      • Tags (list) --

        A list of Tag values, with a maximum of 50 elements.

        • (dict) --

          Specifies a key-value pair for a resource tag.

          • Key (string) --

            A value that specifies the TagKey , the name of the tag. Tag keys must be unique for the resource to which they are attached.

          • Value (string) --

            A value that specifies the TagValue , the value assigned to the corresponding tag key. Tag values can be null and don't have to be unique in a tag set. For example, you can have a key-value pair in a tag set of finances : April and also of payroll : April .

      • FileSystemId (string) --

        The globally unique ID of the file system.

      • Paths (list) --

        An array of paths that specify the data for the data repository task to process. For example, in an EXPORT_TO_REPOSITORY task, the paths specify which data to export to the linked data repository.

        (Default) If Paths is not specified, Amazon FSx uses the file system root directory.

        • (string) --
      • FailureDetails (dict) --

        Failure message describing why the task failed, it is populated only when Lifecycle is set to FAILED .

        • Message (string) --

          A detailed error message.

      • Status (dict) --

        Provides the status of the number of files that the task has processed successfully and failed to process.

        • TotalCount (integer) --

          The total number of files that the task will process. While a task is executing, the sum of SucceededCount plus FailedCount may not equal TotalCount . When the task is complete, TotalCount equals the sum of SucceededCount plus FailedCount .

        • SucceededCount (integer) --

          A running total of the number of files that the task has successfully processed.

        • FailedCount (integer) --

          A running total of the number of files that the task failed to process.

        • LastUpdatedTime (datetime) --

          The time at which the task status was last updated.

        • ReleasedCapacity (integer) --

          The total amount of data, in GiB, released by an Amazon File Cache AUTO_RELEASE_DATA task that automatically releases files from the cache.

      • Report (dict) --

        Provides a report detailing the data repository task results of the files processed that match the criteria specified in the report Scope parameter. FSx delivers the report to the file system's linked data repository in Amazon S3, using the path specified in the report Path parameter. You can specify whether or not a report gets generated for a task using the Enabled parameter.

        • Enabled (boolean) --

          Set Enabled to True to generate a CompletionReport when the task completes. If set to true , then you need to provide a report Scope , Path , and Format . Set Enabled to False if you do not want a CompletionReport generated when the task completes.

        • Path (string) --

          Required if Enabled is set to true . Specifies the location of the report on the file system's linked S3 data repository. An absolute path that defines where the completion report will be stored in the destination location. The Path you provide must be located within the file system’s ExportPath. An example Path value is "s3://myBucket/myExportPath/optionalPrefix". The report provides the following information for each file in the report: FilePath, FileStatus, and ErrorCode. To learn more about a file system's ExportPath , see .

        • Format (string) --

          Required if Enabled is set to true . Specifies the format of the CompletionReport . REPORT_CSV_20191124 is the only format currently supported. When Format is set to REPORT_CSV_20191124 , the CompletionReport is provided in CSV format, and is delivered to {path}/task-{id}/failures.csv .

        • Scope (string) --

          Required if Enabled is set to true . Specifies the scope of the CompletionReport ; FAILED_FILES_ONLY is the only scope currently supported. When Scope is set to FAILED_FILES_ONLY , the CompletionReport only contains information about files that the data repository task failed to process.

      • CapacityToRelease (integer) --

        Specifies the amount of data to release, in GiB, by an Amazon File Cache AUTO_RELEASE_DATA task that automatically releases files from the cache.

      • FileCacheId (string) --

        The system-generated, unique ID of the cache.

Exceptions

  • FSx.Client.exceptions.BadRequest
  • FSx.Client.exceptions.UnsupportedOperation
  • FSx.Client.exceptions.FileSystemNotFound
  • FSx.Client.exceptions.IncompatibleParameterError
  • FSx.Client.exceptions.ServiceLimitExceeded
  • FSx.Client.exceptions.InternalServerError
  • FSx.Client.exceptions.DataRepositoryTaskExecuting