Struct aws_sdk_datasync::types::Options
source · #[non_exhaustive]pub struct Options {Show 15 fields
pub verify_mode: Option<VerifyMode>,
pub overwrite_mode: Option<OverwriteMode>,
pub atime: Option<Atime>,
pub mtime: Option<Mtime>,
pub uid: Option<Uid>,
pub gid: Option<Gid>,
pub preserve_deleted_files: Option<PreserveDeletedFiles>,
pub preserve_devices: Option<PreserveDevices>,
pub posix_permissions: Option<PosixPermissions>,
pub bytes_per_second: Option<i64>,
pub task_queueing: Option<TaskQueueing>,
pub log_level: Option<LogLevel>,
pub transfer_mode: Option<TransferMode>,
pub security_descriptor_copy_flags: Option<SmbSecurityDescriptorCopyFlags>,
pub object_tags: Option<ObjectTags>,
}
Expand description
Indicates how your transfer task is configured. These options include how DataSync handles files, objects, and their associated metadata during your transfer. You also can specify how to verify data integrity, set bandwidth limits for your task, among other options.
Each option has a default value. Unless you need to, you don't have to configure any of these options before starting your task.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.verify_mode: Option<VerifyMode>
Specifies how and when DataSync checks the integrity of your data during a transfer.
Default value: POINT_IN_TIME_CONSISTENT
ONLY_FILES_TRANSFERRED
(recommended): DataSync calculates the checksum of transferred files and metadata at the source location. At the end of the transfer, DataSync then compares this checksum to the checksum calculated on those files at the destination.
We recommend this option when transferring to S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive storage classes. For more information, see Storage class considerations with Amazon S3 locations.
POINT_IN_TIME_CONSISTENT
: At the end of the transfer, DataSync scans the entire source and destination to verify that both locations are fully synchronized.
You can't use this option when transferring to S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive storage classes. For more information, see Storage class considerations with Amazon S3 locations.
NONE
: DataSync doesn't run additional verification at the end of the transfer. All data transmissions are still integrity-checked with checksum verification during the transfer.
overwrite_mode: Option<OverwriteMode>
Specifies whether data at the destination location should be overwritten or preserved. 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.
atime: Option<Atime>
Specifies whether to preserve metadata indicating the last time a file was read or written to. If you set Atime
to BEST_EFFORT
, DataSync attempts to preserve the original Atime
attribute on all source files (that is, the version before the PREPARING
phase of the task execution).
The behavior of Atime
isn't fully standard across platforms, so 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 Atime
is set to BEST_EFFORT
, Mtime
must be set to PRESERVE
.
If Atime
is set to NONE
, Mtime
must also be NONE
.
mtime: Option<Mtime>
Specifies whether to preserve metadata indicating the last time that a file was written to before the PREPARING
phase of your task execution. This option is required when you need to run the a task more than once.
Default Value: PRESERVE
PRESERVE
: Preserve original Mtime
(recommended)
NONE
: Ignore Mtime
.
If Mtime
is set to PRESERVE
, Atime
must be set to BEST_EFFORT
.
If Mtime
is set to NONE
, Atime
must also be set to NONE
.
uid: Option<Uid>
Specifies the POSIX user ID (UID) of the file's owner.
For more information, see Metadata copied by DataSync.
Default value: INT_VALUE
. This preserves the integer value of the ID.
INT_VALUE
: Preserve the integer value of UID and group ID (GID) (recommended).
NONE
: Ignore UID and GID.
gid: Option<Gid>
Specifies the POSIX group ID (GID) of the file's owners.
For more information, see Metadata copied by DataSync.
Default value: INT_VALUE
. This preserves the integer value of the ID.
INT_VALUE
: Preserve the integer value of user ID (UID) and GID (recommended).
NONE
: Ignore UID and GID.
preserve_deleted_files: Option<PreserveDeletedFiles>
Specifies whether files in the destination location that don't exist in the source should be preserved. This option can affect your Amazon S3 storage cost. 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.
Default value: PRESERVE
PRESERVE
: Ignore such destination files (recommended).
REMOVE
: Delete destination files that aren’t present in the source.
If you set this parameter to REMOVE
, you can't set TransferMode
to ALL
. When you transfer all data, DataSync doesn't scan your destination location and doesn't know what to delete.
preserve_devices: Option<PreserveDevices>
Specifies whether DataSync should preserve the metadata of block and character devices in the source location and recreate the files with that device name and metadata on the destination. DataSync copies only the name and metadata of such devices.
DataSync can't copy the actual contents of these devices because they're 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 currently isn't supported for Amazon EFS.
posix_permissions: Option<PosixPermissions>
Specifies which users or groups can access a file for a specific purpose such as reading, writing, or execution of the file.
For more information, see Metadata copied by DataSync.
Default value: PRESERVE
PRESERVE
: Preserve POSIX-style permissions (recommended).
NONE
: Ignore permissions.
DataSync can preserve extant permissions of a source location.
bytes_per_second: Option<i64>
Limits the bandwidth used by a DataSync task. For example, if you want DataSync to use a maximum of 1 MB, set this value to 1048576
(=1024*1024
).
task_queueing: Option<TaskQueueing>
Specifies whether your transfer tasks should be put into a queue during certain scenarios when running multiple tasks. This is ENABLED
by default.
log_level: Option<LogLevel>
Specifies the type of logs that DataSync publishes to a Amazon CloudWatch Logs log group. 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.
transfer_mode: Option<TransferMode>
Determines whether DataSync transfers only the data and metadata that differ between the source and the destination location or transfers all the content from the source (without comparing what's in the destination).
CHANGED
: DataSync copies only data or metadata that is new or different content from the source location to the destination location.
ALL
: DataSync copies all source location content to the destination (without comparing what's in the destination).
security_descriptor_copy_flags: Option<SmbSecurityDescriptorCopyFlags>
Specifies which components of the SMB security descriptor are copied from source to destination objects.
This value is only used for transfers between SMB and Amazon FSx for Windows File Server locations or between two FSx for Windows File Server locations. For more information, see how DataSync handles metadata.
Default value: OWNER_DACL
OWNER_DACL
: For each copied object, DataSync copies the following metadata:
-
The object owner.
-
NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
DataSync won't copy NTFS system access control lists (SACLs) with this option.
OWNER_DACL_SACL
: For each copied object, DataSync copies the following metadata:
-
The object owner.
-
NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
-
SACLs, which are used by administrators to log attempts to access a secured object.
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.
Specifies whether object tags are preserved when transferring between object storage systems. If you want your DataSync task to ignore object tags, specify the NONE
value.
Default Value: PRESERVE
Implementations§
source§impl Options
impl Options
sourcepub fn verify_mode(&self) -> Option<&VerifyMode>
pub fn verify_mode(&self) -> Option<&VerifyMode>
Specifies how and when DataSync checks the integrity of your data during a transfer.
Default value: POINT_IN_TIME_CONSISTENT
ONLY_FILES_TRANSFERRED
(recommended): DataSync calculates the checksum of transferred files and metadata at the source location. At the end of the transfer, DataSync then compares this checksum to the checksum calculated on those files at the destination.
We recommend this option when transferring to S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive storage classes. For more information, see Storage class considerations with Amazon S3 locations.
POINT_IN_TIME_CONSISTENT
: At the end of the transfer, DataSync scans the entire source and destination to verify that both locations are fully synchronized.
You can't use this option when transferring to S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive storage classes. For more information, see Storage class considerations with Amazon S3 locations.
NONE
: DataSync doesn't run additional verification at the end of the transfer. All data transmissions are still integrity-checked with checksum verification during the transfer.
sourcepub fn overwrite_mode(&self) -> Option<&OverwriteMode>
pub fn overwrite_mode(&self) -> Option<&OverwriteMode>
Specifies whether data at the destination location should be overwritten or preserved. 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.
sourcepub fn atime(&self) -> Option<&Atime>
pub fn atime(&self) -> Option<&Atime>
Specifies whether to preserve metadata indicating the last time a file was read or written to. If you set Atime
to BEST_EFFORT
, DataSync attempts to preserve the original Atime
attribute on all source files (that is, the version before the PREPARING
phase of the task execution).
The behavior of Atime
isn't fully standard across platforms, so 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 Atime
is set to BEST_EFFORT
, Mtime
must be set to PRESERVE
.
If Atime
is set to NONE
, Mtime
must also be NONE
.
sourcepub fn mtime(&self) -> Option<&Mtime>
pub fn mtime(&self) -> Option<&Mtime>
Specifies whether to preserve metadata indicating the last time that a file was written to before the PREPARING
phase of your task execution. This option is required when you need to run the a task more than once.
Default Value: PRESERVE
PRESERVE
: Preserve original Mtime
(recommended)
NONE
: Ignore Mtime
.
If Mtime
is set to PRESERVE
, Atime
must be set to BEST_EFFORT
.
If Mtime
is set to NONE
, Atime
must also be set to NONE
.
sourcepub fn uid(&self) -> Option<&Uid>
pub fn uid(&self) -> Option<&Uid>
Specifies the POSIX user ID (UID) of the file's owner.
For more information, see Metadata copied by DataSync.
Default value: INT_VALUE
. This preserves the integer value of the ID.
INT_VALUE
: Preserve the integer value of UID and group ID (GID) (recommended).
NONE
: Ignore UID and GID.
sourcepub fn gid(&self) -> Option<&Gid>
pub fn gid(&self) -> Option<&Gid>
Specifies the POSIX group ID (GID) of the file's owners.
For more information, see Metadata copied by DataSync.
Default value: INT_VALUE
. This preserves the integer value of the ID.
INT_VALUE
: Preserve the integer value of user ID (UID) and GID (recommended).
NONE
: Ignore UID and GID.
sourcepub fn preserve_deleted_files(&self) -> Option<&PreserveDeletedFiles>
pub fn preserve_deleted_files(&self) -> Option<&PreserveDeletedFiles>
Specifies whether files in the destination location that don't exist in the source should be preserved. This option can affect your Amazon S3 storage cost. 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.
Default value: PRESERVE
PRESERVE
: Ignore such destination files (recommended).
REMOVE
: Delete destination files that aren’t present in the source.
If you set this parameter to REMOVE
, you can't set TransferMode
to ALL
. When you transfer all data, DataSync doesn't scan your destination location and doesn't know what to delete.
sourcepub fn preserve_devices(&self) -> Option<&PreserveDevices>
pub fn preserve_devices(&self) -> Option<&PreserveDevices>
Specifies whether DataSync should preserve the metadata of block and character devices in the source location and recreate the files with that device name and metadata on the destination. DataSync copies only the name and metadata of such devices.
DataSync can't copy the actual contents of these devices because they're 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 currently isn't supported for Amazon EFS.
sourcepub fn posix_permissions(&self) -> Option<&PosixPermissions>
pub fn posix_permissions(&self) -> Option<&PosixPermissions>
Specifies which users or groups can access a file for a specific purpose such as reading, writing, or execution of the file.
For more information, see Metadata copied by DataSync.
Default value: PRESERVE
PRESERVE
: Preserve POSIX-style permissions (recommended).
NONE
: Ignore permissions.
DataSync can preserve extant permissions of a source location.
sourcepub fn bytes_per_second(&self) -> Option<i64>
pub fn bytes_per_second(&self) -> Option<i64>
Limits the bandwidth used by a DataSync task. For example, if you want DataSync to use a maximum of 1 MB, set this value to 1048576
(=1024*1024
).
sourcepub fn task_queueing(&self) -> Option<&TaskQueueing>
pub fn task_queueing(&self) -> Option<&TaskQueueing>
Specifies whether your transfer tasks should be put into a queue during certain scenarios when running multiple tasks. This is ENABLED
by default.
sourcepub fn log_level(&self) -> Option<&LogLevel>
pub fn log_level(&self) -> Option<&LogLevel>
Specifies the type of logs that DataSync publishes to a Amazon CloudWatch Logs log group. 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.
sourcepub fn transfer_mode(&self) -> Option<&TransferMode>
pub fn transfer_mode(&self) -> Option<&TransferMode>
Determines whether DataSync transfers only the data and metadata that differ between the source and the destination location or transfers all the content from the source (without comparing what's in the destination).
CHANGED
: DataSync copies only data or metadata that is new or different content from the source location to the destination location.
ALL
: DataSync copies all source location content to the destination (without comparing what's in the destination).
sourcepub fn security_descriptor_copy_flags(
&self
) -> Option<&SmbSecurityDescriptorCopyFlags>
pub fn security_descriptor_copy_flags( &self ) -> Option<&SmbSecurityDescriptorCopyFlags>
Specifies which components of the SMB security descriptor are copied from source to destination objects.
This value is only used for transfers between SMB and Amazon FSx for Windows File Server locations or between two FSx for Windows File Server locations. For more information, see how DataSync handles metadata.
Default value: OWNER_DACL
OWNER_DACL
: For each copied object, DataSync copies the following metadata:
-
The object owner.
-
NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
DataSync won't copy NTFS system access control lists (SACLs) with this option.
OWNER_DACL_SACL
: For each copied object, DataSync copies the following metadata:
-
The object owner.
-
NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.
-
SACLs, which are used by administrators to log attempts to access a secured object.
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.
Specifies whether object tags are preserved when transferring between object storage systems. If you want your DataSync task to ignore object tags, specify the NONE
value.
Default Value: PRESERVE