Skip to content
v2.276.0

CfnTaskProps Struct ​

Properties for defining a CfnTask.

Example ​

ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_datasync as datasync } from 'aws-cdk-lib';
const cfnTaskProps: datasync.CfnTaskProps = {
  destinationLocationArn: 'destinationLocationArn',
  sourceLocationArn: 'sourceLocationArn',

  // the properties below are optional
  cloudWatchLogGroupArn: 'cloudWatchLogGroupArn',
  excludes: [{
    filterType: 'filterType',
    value: 'value',
  }],
  includes: [{
    filterType: 'filterType',
    value: 'value',
  }],
  manifestConfig: {
    source: {
      s3: {
        bucketAccessRoleArn: 'bucketAccessRoleArn',
        manifestObjectPath: 'manifestObjectPath',
        manifestObjectVersionId: 'manifestObjectVersionId',
        s3BucketArn: 's3BucketArn',
      },
    },

    // the properties below are optional
    action: 'action',
    format: 'format',
  },
  name: 'name',
  options: {
    atime: 'atime',
    bytesPerSecond: 123,
    gid: 'gid',
    logLevel: 'logLevel',
    mtime: 'mtime',
    objectMetadata: 'objectMetadata',
    objectTags: 'objectTags',
    overwriteMode: 'overwriteMode',
    posixPermissions: 'posixPermissions',
    preserveDeletedFiles: 'preserveDeletedFiles',
    preserveDevices: 'preserveDevices',
    securityDescriptorCopyFlags: 'securityDescriptorCopyFlags',
    taskQueueing: 'taskQueueing',
    transferMode: 'transferMode',
    uid: 'uid',
    verifyMode: 'verifyMode',
  },
  schedule: {
    scheduleExpression: 'scheduleExpression',
    status: 'status',
  },
  tags: [{
    key: 'key',
    value: 'value',
  }],
  taskMode: 'taskMode',
  taskReportConfig: {
    destination: {
      s3: {
        bucketAccessRoleArn: 'bucketAccessRoleArn',
        s3BucketArn: 's3BucketArn',
        subdirectory: 'subdirectory',
      },
    },
    outputType: 'outputType',

    // the properties below are optional
    objectVersionIds: 'objectVersionIds',
    overrides: {
      deleted: {
        reportLevel: 'reportLevel',
      },
      skipped: {
        reportLevel: 'reportLevel',
      },
      transferred: {
        reportLevel: 'reportLevel',
      },
      verified: {
        reportLevel: 'reportLevel',
      },
    },
    reportLevel: 'reportLevel',
  },
};
python
from aws_cdk import CfnTag
# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_datasync as datasync

cfn_task_props = datasync.CfnTaskProps(
    destination_location_arn="destinationLocationArn",
    source_location_arn="sourceLocationArn",

    # the properties below are optional
    cloud_watch_log_group_arn="cloudWatchLogGroupArn",
    excludes=[datasync.CfnTask.FilterRuleProperty(
        filter_type="filterType",
        value="value"
    )],
    includes=[datasync.CfnTask.FilterRuleProperty(
        filter_type="filterType",
        value="value"
    )],
    manifest_config=datasync.CfnTask.ManifestConfigProperty(
        source=datasync.CfnTask.SourceProperty(
            s3=datasync.CfnTask.ManifestConfigSourceS3Property(
                bucket_access_role_arn="bucketAccessRoleArn",
                manifest_object_path="manifestObjectPath",
                manifest_object_version_id="manifestObjectVersionId",
                s3_bucket_arn="s3BucketArn"
            )
        ),

        # the properties below are optional
        action="action",
        format="format"
    ),
    name="name",
    options=datasync.CfnTask.OptionsProperty(
        atime="atime",
        bytes_per_second=123,
        gid="gid",
        log_level="logLevel",
        mtime="mtime",
        object_metadata="objectMetadata",
        object_tags="objectTags",
        overwrite_mode="overwriteMode",
        posix_permissions="posixPermissions",
        preserve_deleted_files="preserveDeletedFiles",
        preserve_devices="preserveDevices",
        security_descriptor_copy_flags="securityDescriptorCopyFlags",
        task_queueing="taskQueueing",
        transfer_mode="transferMode",
        uid="uid",
        verify_mode="verifyMode"
    ),
    schedule=datasync.CfnTask.TaskScheduleProperty(
        schedule_expression="scheduleExpression",
        status="status"
    ),
    tags=[CfnTag(
        key="key",
        value="value"
    )],
    task_mode="taskMode",
    task_report_config=datasync.CfnTask.TaskReportConfigProperty(
        destination=datasync.CfnTask.DestinationProperty(
            s3=datasync.CfnTask.S3Property(
                bucket_access_role_arn="bucketAccessRoleArn",
                s3_bucket_arn="s3BucketArn",
                subdirectory="subdirectory"
            )
        ),
        output_type="outputType",

        # the properties below are optional
        object_version_ids="objectVersionIds",
        overrides=datasync.CfnTask.OverridesProperty(
            deleted=datasync.CfnTask.DeletedProperty(
                report_level="reportLevel"
            ),
            skipped=datasync.CfnTask.SkippedProperty(
                report_level="reportLevel"
            ),
            transferred=datasync.CfnTask.TransferredProperty(
                report_level="reportLevel"
            ),
            verified=datasync.CfnTask.VerifiedProperty(
                report_level="reportLevel"
            )
        ),
        report_level="reportLevel"
    )
)
java
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.services.datasync.*;

CfnTaskProps cfnTaskProps = CfnTaskProps.builder()
        .destinationLocationArn("destinationLocationArn")
        .sourceLocationArn("sourceLocationArn")

        // the properties below are optional
        .cloudWatchLogGroupArn("cloudWatchLogGroupArn")
        .excludes(List.of(FilterRuleProperty.builder()
                .filterType("filterType")
                .value("value")
                .build()))
        .includes(List.of(FilterRuleProperty.builder()
                .filterType("filterType")
                .value("value")
                .build()))
        .manifestConfig(ManifestConfigProperty.builder()
                .source(SourceProperty.builder()
                        .s3(ManifestConfigSourceS3Property.builder()
                                .bucketAccessRoleArn("bucketAccessRoleArn")
                                .manifestObjectPath("manifestObjectPath")
                                .manifestObjectVersionId("manifestObjectVersionId")
                                .s3BucketArn("s3BucketArn")
                                .build())
                        .build())

                // the properties below are optional
                .action("action")
                .format("format")
                .build())
        .name("name")
        .options(OptionsProperty.builder()
                .atime("atime")
                .bytesPerSecond(123)
                .gid("gid")
                .logLevel("logLevel")
                .mtime("mtime")
                .objectMetadata("objectMetadata")
                .objectTags("objectTags")
                .overwriteMode("overwriteMode")
                .posixPermissions("posixPermissions")
                .preserveDeletedFiles("preserveDeletedFiles")
                .preserveDevices("preserveDevices")
                .securityDescriptorCopyFlags("securityDescriptorCopyFlags")
                .taskQueueing("taskQueueing")
                .transferMode("transferMode")
                .uid("uid")
                .verifyMode("verifyMode")
                .build())
        .schedule(TaskScheduleProperty.builder()
                .scheduleExpression("scheduleExpression")
                .status("status")
                .build())
        .tags(List.of(CfnTag.builder()
                .key("key")
                .value("value")
                .build()))
        .taskMode("taskMode")
        .taskReportConfig(TaskReportConfigProperty.builder()
                .destination(DestinationProperty.builder()
                        .s3(S3Property.builder()
                                .bucketAccessRoleArn("bucketAccessRoleArn")
                                .s3BucketArn("s3BucketArn")
                                .subdirectory("subdirectory")
                                .build())
                        .build())
                .outputType("outputType")

                // the properties below are optional
                .objectVersionIds("objectVersionIds")
                .overrides(OverridesProperty.builder()
                        .deleted(DeletedProperty.builder()
                                .reportLevel("reportLevel")
                                .build())
                        .skipped(SkippedProperty.builder()
                                .reportLevel("reportLevel")
                                .build())
                        .transferred(TransferredProperty.builder()
                                .reportLevel("reportLevel")
                                .build())
                        .verified(VerifiedProperty.builder()
                                .reportLevel("reportLevel")
                                .build())
                        .build())
                .reportLevel("reportLevel")
                .build())
        .build();
csharp
// Install: dotnet add package Amazon.CDK.Lib
// 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 cfnTaskProps = new CfnTaskProps {
    DestinationLocationArn = "destinationLocationArn",
    SourceLocationArn = "sourceLocationArn",

    // the properties below are optional
    CloudWatchLogGroupArn = "cloudWatchLogGroupArn",
    Excludes = new [] { new FilterRuleProperty {
        FilterType = "filterType",
        Value = "value"
    } },
    Includes = new [] { new FilterRuleProperty {
        FilterType = "filterType",
        Value = "value"
    } },
    ManifestConfig = new ManifestConfigProperty {
        Source = new SourceProperty {
            S3 = new ManifestConfigSourceS3Property {
                BucketAccessRoleArn = "bucketAccessRoleArn",
                ManifestObjectPath = "manifestObjectPath",
                ManifestObjectVersionId = "manifestObjectVersionId",
                S3BucketArn = "s3BucketArn"
            }
        },

        // the properties below are optional
        Action = "action",
        Format = "format"
    },
    Name = "name",
    Options = new OptionsProperty {
        Atime = "atime",
        BytesPerSecond = 123,
        Gid = "gid",
        LogLevel = "logLevel",
        Mtime = "mtime",
        ObjectMetadata = "objectMetadata",
        ObjectTags = "objectTags",
        OverwriteMode = "overwriteMode",
        PosixPermissions = "posixPermissions",
        PreserveDeletedFiles = "preserveDeletedFiles",
        PreserveDevices = "preserveDevices",
        SecurityDescriptorCopyFlags = "securityDescriptorCopyFlags",
        TaskQueueing = "taskQueueing",
        TransferMode = "transferMode",
        Uid = "uid",
        VerifyMode = "verifyMode"
    },
    Schedule = new TaskScheduleProperty {
        ScheduleExpression = "scheduleExpression",
        Status = "status"
    },
    Tags = new [] { new CfnTag {
        Key = "key",
        Value = "value"
    } },
    TaskMode = "taskMode",
    TaskReportConfig = new TaskReportConfigProperty {
        Destination = new DestinationProperty {
            S3 = new S3Property {
                BucketAccessRoleArn = "bucketAccessRoleArn",
                S3BucketArn = "s3BucketArn",
                Subdirectory = "subdirectory"
            }
        },
        OutputType = "outputType",

        // the properties below are optional
        ObjectVersionIds = "objectVersionIds",
        Overrides = new OverridesProperty {
            Deleted = new DeletedProperty {
                ReportLevel = "reportLevel"
            },
            Skipped = new SkippedProperty {
                ReportLevel = "reportLevel"
            },
            Transferred = new TransferredProperty {
                ReportLevel = "reportLevel"
            },
            Verified = new VerifiedProperty {
                ReportLevel = "reportLevel"
            }
        },
        ReportLevel = "reportLevel"
    }
};
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import "github.com/aws/aws-cdk-go/awscdk"

cfnTaskProps := &CfnTaskProps{
	DestinationLocationArn: jsii.String("destinationLocationArn"),
	SourceLocationArn: jsii.String("sourceLocationArn"),

	// the properties below are optional
	CloudWatchLogGroupArn: jsii.String("cloudWatchLogGroupArn"),
	Excludes: []interface{}{
		&FilterRuleProperty{
			FilterType: jsii.String("filterType"),
			Value: jsii.String("value"),
		},
	},
	Includes: []interface{}{
		&FilterRuleProperty{
			FilterType: jsii.String("filterType"),
			Value: jsii.String("value"),
		},
	},
	ManifestConfig: &ManifestConfigProperty{
		Source: &SourceProperty{
			S3: &ManifestConfigSourceS3Property{
				BucketAccessRoleArn: jsii.String("bucketAccessRoleArn"),
				ManifestObjectPath: jsii.String("manifestObjectPath"),
				ManifestObjectVersionId: jsii.String("manifestObjectVersionId"),
				S3BucketArn: jsii.String("s3BucketArn"),
			},
		},

		// the properties below are optional
		Action: jsii.String("action"),
		Format: jsii.String("format"),
	},
	Name: jsii.String("name"),
	Options: &OptionsProperty{
		Atime: jsii.String("atime"),
		BytesPerSecond: jsii.Number(123),
		Gid: jsii.String("gid"),
		LogLevel: jsii.String("logLevel"),
		Mtime: jsii.String("mtime"),
		ObjectMetadata: jsii.String("objectMetadata"),
		ObjectTags: jsii.String("objectTags"),
		OverwriteMode: jsii.String("overwriteMode"),
		PosixPermissions: jsii.String("posixPermissions"),
		PreserveDeletedFiles: jsii.String("preserveDeletedFiles"),
		PreserveDevices: jsii.String("preserveDevices"),
		SecurityDescriptorCopyFlags: jsii.String("securityDescriptorCopyFlags"),
		TaskQueueing: jsii.String("taskQueueing"),
		TransferMode: jsii.String("transferMode"),
		Uid: jsii.String("uid"),
		VerifyMode: jsii.String("verifyMode"),
	},
	Schedule: &TaskScheduleProperty{
		ScheduleExpression: jsii.String("scheduleExpression"),
		Status: jsii.String("status"),
	},
	Tags: []CfnTag{
		&CfnTag{
			Key: jsii.String("key"),
			Value: jsii.String("value"),
		},
	},
	TaskMode: jsii.String("taskMode"),
	TaskReportConfig: &TaskReportConfigProperty{
		Destination: &DestinationProperty{
			S3: &S3Property{
				BucketAccessRoleArn: jsii.String("bucketAccessRoleArn"),
				S3BucketArn: jsii.String("s3BucketArn"),
				Subdirectory: jsii.String("subdirectory"),
			},
		},
		OutputType: jsii.String("outputType"),

		// the properties below are optional
		ObjectVersionIds: jsii.String("objectVersionIds"),
		Overrides: &OverridesProperty{
			Deleted: &DeletedProperty{
				ReportLevel: jsii.String("reportLevel"),
			},
			Skipped: &SkippedProperty{
				ReportLevel: jsii.String("reportLevel"),
			},
			Transferred: &TransferredProperty{
				ReportLevel: jsii.String("reportLevel"),
			},
			Verified: &VerifiedProperty{
				ReportLevel: jsii.String("reportLevel"),
			},
		},
		ReportLevel: jsii.String("reportLevel"),
	},
}

Properties ​

cloudWatchLogGroupArnoptionalstring | ILogGroupRefcloud_watch_log_group_arnoptionaltyping.Union[str, ILogGroupRef]cloudWatchLogGroupArnoptionalStringCloudWatchLogGroupArnoptionalstringCloudWatchLogGroupArnoptionalinterface{}#
Specifies the Amazon Resource Name (ARN) of an Amazon CloudWatch log group for monitoring your task.
notes

For Enhanced mode tasks, you don't need to specify anything. DataSync automatically sends logs to a CloudWatch log group named /aws/datasync .

For more information, see Monitoring data transfers with CloudWatch Logs .

destinationLocationArnstring | ILocationEFSRef | ILocationS3Refdestination_location_arntyping.Union[str, ILocationEFSRef, ILocationS3Ref]destinationLocationArnStringDestinationLocationArnstringDestinationLocationArninterface{}required#
The Amazon Resource Name (ARN) of an AWS storage resource's location.
excludesoptionalIResolvable | IResolvable | CfnTask.FilterRuleProperty[]excludesoptionaltyping.Union[IResolvable, typing.List[typing.Union[IResolvable, FilterRuleProperty]]]excludesoptionalIResolvableExcludesoptionalIResolvableExcludesoptionalinterface{}#
Specifies exclude filters that define the files, objects, and folders in your source location that you don't want DataSync to transfer.

For more information and examples, see Specifying what DataSync transfers by using filters .

includesoptionalIResolvable | IResolvable | CfnTask.FilterRuleProperty[]includesoptionaltyping.Union[IResolvable, typing.List[typing.Union[IResolvable, FilterRuleProperty]]]includesoptionalIResolvableIncludesoptionalIResolvableIncludesoptionalinterface{}#
Specifies include filters that define the files, objects, and folders in your source location that you want DataSync to transfer.

For more information and examples, see Specifying what DataSync transfers by using filters .

manifestConfigoptionalIResolvable | CfnTask.ManifestConfigPropertymanifest_configoptionaltyping.Union[IResolvable, ManifestConfigProperty]manifestConfigoptionalIResolvableManifestConfigoptionalIResolvableManifestConfigoptionalinterface{}#
The configuration of the manifest that lists the files or objects that you want DataSync to transfer.
nameoptionalstringnameoptionalstrnameoptionalStringNameoptionalstringNameoptional*string#
Specifies the name of your task.
optionsoptionalIResolvable | CfnTask.OptionsPropertyoptionsoptionaltyping.Union[IResolvable, OptionsProperty]optionsoptionalIResolvableOptionsoptionalIResolvableOptionsoptionalinterface{}#
Specifies your task's settings, such as preserving file metadata, verifying data integrity, among other options.
scheduleoptionalIResolvable | CfnTask.TaskSchedulePropertyscheduleoptionaltyping.Union[IResolvable, TaskScheduleProperty]scheduleoptionalIResolvableScheduleoptionalIResolvableScheduleoptionalinterface{}#
Specifies a schedule for when you want your task to run.

For more information, see Scheduling your task .

sourceLocationArnstring | ILocationNFSRef | ILocationS3Refsource_location_arntyping.Union[str, ILocationNFSRef, ILocationS3Ref]sourceLocationArnStringSourceLocationArnstringSourceLocationArninterface{}required#
Specifies the ARN of your transfer's source location.
tagsoptionalCfnTag[]tagsoptionaltyping.List[CfnTag]tagsoptionalList<CfnTag>TagsoptionalCfnTag[]Tagsoptional*[]CfnTag#
Specifies the tags that you want to apply to your task.

Tags are key-value pairs that help you manage, filter, and search for your DataSync resources.

taskModeoptionalstringtask_modeoptionalstrtaskModeoptionalStringTaskModeoptionalstringTaskModeoptional*string#
The task mode that you're using.
taskReportConfigoptionalIResolvable | CfnTask.TaskReportConfigPropertytask_report_configoptionaltyping.Union[IResolvable, TaskReportConfigProperty]taskReportConfigoptionalIResolvableTaskReportConfigoptionalIResolvableTaskReportConfigoptionalinterface{}#
The configuration of your task report, which provides detailed information about your DataSync transfer.