Interface CfnTask.IOptionsProperty
Represents the options that are available to control the behavior of a StartTaskExecution operation. This behavior includes preserving metadata, such as user ID (UID), group ID (GID), and file permissions; overwriting files in the destination; data integrity verification; and so on.
Namespace: Amazon.CDK.AWS.DataSync
Assembly: Amazon.CDK.AWS.DataSync.dll
Syntax (csharp)
public interface IOptionsProperty
Syntax (vb)
Public Interface IOptionsProperty
Remarks
A task has a set of default options associated with it. If you don't specify an option in StartTaskExecution , the default value is used. You can override the default options on each task execution by specifying an overriding Options
value to StartTaskExecution .
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.DataSync;
var optionsProperty = new OptionsProperty {
Atime = "atime",
BytesPerSecond = 123,
Gid = "gid",
LogLevel = "logLevel",
Mtime = "mtime",
ObjectTags = "objectTags",
OverwriteMode = "overwriteMode",
PosixPermissions = "posixPermissions",
PreserveDeletedFiles = "preserveDeletedFiles",
PreserveDevices = "preserveDevices",
SecurityDescriptorCopyFlags = "securityDescriptorCopyFlags",
TaskQueueing = "taskQueueing",
TransferMode = "transferMode",
Uid = "uid",
VerifyMode = "verifyMode"
};
Synopsis
Properties
Atime | A file metadata value that shows the last time that a file was accessed (that is, when the file was read or written to). |
BytesPerSecond | A value that limits the bandwidth used by AWS DataSync . |
Gid | The group ID (GID) of the file's owners. |
LogLevel | Specifies the type of logs that DataSync publishes to a Amazon CloudWatch Logs log group. |
Mtime | A value that indicates the last time that a file was modified (that is, a file was written to) before the PREPARING phase. |
ObjectTags | Specifies whether object tags are preserved when transferring between object storage systems. |
OverwriteMode | Specifies whether data at the destination location should be overwritten or preserved. |
PosixPermissions | A value that determines which users or groups can access a file for a specific purpose, such as reading, writing, or execution of the file. |
PreserveDeletedFiles | A value that specifies whether files in the destination that don't exist in the source file system are preserved. |
PreserveDevices | A value that determines whether AWS DataSync should preserve the metadata of block and character devices in the source file system, and re-create the files with that device name and metadata on the destination. |
SecurityDescriptorCopyFlags | A value that determines which components of the SMB security descriptor are copied from source to destination objects. |
TaskQueueing | Specifies whether your transfer tasks should be put into a queue during certain scenarios when running multiple tasks . This is |
TransferMode | A value that determines whether DataSync transfers only the data and metadata that differ between the source and the destination location, or whether DataSync transfers all the content from the source, without comparing it to the destination location. |
Uid | The user ID (UID) of the file's owner. |
VerifyMode | A value that determines whether a data integrity verification is performed at the end of a task execution after all data and metadata have been transferred. |
Properties
Atime
A file metadata value that shows the last time that a file was accessed (that is, when the file was read or written to).
virtual string Atime { get; }
Property Value
System.String
Remarks
If you set Atime
to BEST_EFFORT
, AWS DataSync attempts to preserve the original Atime
attribute on all source files (that is, the version before the PREPARING phase). However, Atime
's behavior is not fully standard across platforms, so AWS DataSync can only do this on a best-effort basis.
Default value: BEST_EFFORT
BEST_EFFORT
: Attempt to preserve the per-file Atime
value (recommended).
NONE
: Ignore Atime
.
If <code>Atime</code> is set to <code>BEST_EFFORT</code> , <code>Mtime</code> must be set to <code>PRESERVE</code> .
If Atime
is set to NONE
, Mtime
must also be NONE
.
BytesPerSecond
A value that limits the bandwidth used by AWS DataSync .
virtual Nullable<double> BytesPerSecond { get; }
Property Value
System.Nullable<System.Double>
Remarks
For example, if you want AWS DataSync to use a maximum of 1 MB, set this value to 1048576
(=1024*1024).
Gid
The group ID (GID) of the file's owners.
virtual string Gid { get; }
Property Value
System.String
Remarks
Default value: INT_VALUE
INT_VALUE
: Preserve the integer value of the user ID (UID) and group ID (GID) (recommended).
NAME
: Currently not supported.
NONE
: Ignore the UID and GID.
LogLevel
Specifies the type of logs that DataSync publishes to a Amazon CloudWatch Logs log group.
virtual string LogLevel { get; }
Property Value
System.String
Remarks
To specify the log group, see CloudWatchLogGroupArn .
If you set LogLevel
to OFF
, no logs are published. BASIC
publishes logs on errors for individual files transferred. TRANSFER
publishes logs for every file or object that is transferred and integrity checked.
Mtime
A value that indicates the last time that a file was modified (that is, a file was written to) before the PREPARING phase.
virtual string Mtime { get; }
Property Value
System.String
Remarks
This option is required for cases when you need to run the same task more than one time.
Default value: PRESERVE
PRESERVE
: Preserve original Mtime
(recommended)
NONE
: Ignore Mtime
.
If <code>Mtime</code> is set to <code>PRESERVE</code> , <code>Atime</code> must be set to <code>BEST_EFFORT</code> .
If Mtime
is set to NONE
, Atime
must also be set to NONE
.
ObjectTags
Specifies whether object tags are preserved when transferring between object storage systems.
virtual string ObjectTags { get; }
Property Value
System.String
Remarks
If you want your DataSync task to ignore object tags, specify the NONE
value.
Default Value: PRESERVE
OverwriteMode
Specifies whether data at the destination location should be overwritten or preserved.
virtual string OverwriteMode { get; }
Property Value
System.String
Remarks
If set to NEVER
, a destination file for example will not be replaced by a source file (even if the destination file differs from the source file). If you modify files in the destination and you sync the files, you can use this value to protect against overwriting those changes.
Some storage classes have specific behaviors that can affect your Amazon S3 storage cost. For detailed information, see Considerations when working with Amazon S3 storage classes in DataSync .
PosixPermissions
A value that determines which users or groups can access a file for a specific purpose, such as reading, writing, or execution of the file.
virtual string PosixPermissions { get; }
Property Value
System.String
Remarks
This option should be set only for Network File System (NFS), Amazon EFS, and Amazon S3 locations. For more information about what metadata is copied by DataSync, see Metadata Copied by DataSync .
Default value: PRESERVE
PRESERVE
: Preserve POSIX-style permissions (recommended).
NONE
: Ignore permissions.
AWS DataSync can preserve extant permissions of a source location.
PreserveDeletedFiles
A value that specifies whether files in the destination that don't exist in the source file system are preserved.
virtual string PreserveDeletedFiles { get; }
Property Value
System.String
Remarks
This option can affect your storage costs. If your task deletes objects, you might incur minimum storage duration charges for certain storage classes. For detailed information, see Considerations when working with Amazon S3 storage classes in DataSync in the AWS DataSync User Guide .
Default value: PRESERVE
PRESERVE
: Ignore destination files that aren't present in the source (recommended).
REMOVE
: Delete destination files that aren't present in the source.
PreserveDevices
A value that determines whether AWS DataSync should preserve the metadata of block and character devices in the source file system, and re-create the files with that device name and metadata on the destination.
virtual string PreserveDevices { get; }
Property Value
System.String
Remarks
DataSync does not copy the contents of such devices, only the name and metadata.
AWS DataSync can't sync the actual contents of such devices, because they are nonterminal and don't return an end-of-file (EOF) marker.
Default value: NONE
NONE
: Ignore special devices (recommended).
PRESERVE
: Preserve character and block device metadata. This option isn't currently supported for Amazon EFS.
SecurityDescriptorCopyFlags
A value that determines which components of the SMB security descriptor are copied from source to destination objects.
virtual string SecurityDescriptorCopyFlags { get; }
Property Value
System.String
Remarks
This value is only used for transfers between SMB and Amazon FSx for Windows File Server locations, or between two Amazon FSx for Windows File Server locations. For more information about how DataSync handles metadata, see How DataSync Handles Metadata and Special Files .
Default value: OWNER_DACL
OWNER_DACL
: For each copied object, DataSync copies the following metadata:
When you use option, DataSync does NOT copy the NTFS system access control lists (SACLs), which are used by administrators to log attempts to access a secured object.
OWNER_DACL_SACL
: For each copied object, DataSync copies the following metadata:
Copying SACLs requires granting additional permissions to the Windows user that DataSync uses to access your SMB location. For information about choosing a user that ensures sufficient permissions to files, folders, and metadata, see user .
NONE
: None of the SMB security descriptor components are copied. Destination objects are owned by the user that was provided for accessing the destination location. DACLs and SACLs are set based on the destination server’s configuration.
TaskQueueing
Specifies whether your transfer tasks should be put into a queue during certain scenarios when running multiple tasks . This is ENABLED
by default.
virtual string TaskQueueing { get; }
Property Value
System.String
Remarks
TransferMode
A value that determines whether DataSync transfers only the data and metadata that differ between the source and the destination location, or whether DataSync transfers all the content from the source, without comparing it to the destination location.
virtual string TransferMode { get; }
Property Value
System.String
Remarks
CHANGED
: DataSync copies only data or metadata that is new or different from the source location to the destination location.
ALL
: DataSync copies all source location content to the destination, without comparing it to existing content on the destination.
Uid
The user ID (UID) of the file's owner.
virtual string Uid { get; }
Property Value
System.String
Remarks
Default value: INT_VALUE
INT_VALUE
: Preserve the integer value of the UID and group ID (GID) (recommended).
NAME
: Currently not supported
NONE
: Ignore the UID and GID.
VerifyMode
A value that determines whether a data integrity verification is performed at the end of a task execution after all data and metadata have been transferred.
virtual string VerifyMode { get; }
Property Value
System.String
Remarks
For more information, see Configure task settings .
Default value: POINT_IN_TIME_CONSISTENT
ONLY_FILES_TRANSFERRED
(recommended): Perform verification only on files that were transferred.
POINT_IN_TIME_CONSISTENT
: Scan the entire source and entire destination at the end of the transfer to verify that the source and destination are fully synchronized. This option isn't supported when transferring to S3 Glacier or S3 Glacier Deep Archive storage classes.
NONE
: No additional verification is done at the end of the transfer, but all data transmissions are integrity-checked with checksum verification during the transfer.