Show / Hide Table of Contents

Namespace Pulumi.Aws.Dms

Classes

Certificate

Provides a DMS (Data Migration Service) certificate resource. DMS certificates can be created, deleted, and imported.

Note: All arguments including the PEM encoded certificate will be stored in the raw state as plain-text. Read more about sensitive data in state.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    // Create a new certificate
    var test = new Aws.Dms.Certificate("test", new Aws.Dms.CertificateArgs
    {
        CertificateId = "test-dms-certificate-tf",
        CertificatePem = "...",
    });
}

}

CertificateArgs

CertificateState

Endpoint

Provides a DMS (Data Migration Service) endpoint resource. DMS endpoints can be created, updated, deleted, and imported.

Note: All arguments including the password will be stored in the raw state as plain-text. Read more about sensitive data in state.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    // Create a new endpoint
    var test = new Aws.Dms.Endpoint("test", new Aws.Dms.EndpointArgs
    {
        CertificateArn = "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012",
        DatabaseName = "test",
        EndpointId = "test-dms-endpoint-tf",
        EndpointType = "source",
        EngineName = "aurora",
        ExtraConnectionAttributes = "",
        KmsKeyArn = "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012",
        Password = "test",
        Port = 3306,
        ServerName = "test",
        SslMode = "none",
        Tags = 
        {
            { "Name", "test" },
        },
        Username = "test",
    });
}

}

EndpointArgs

EndpointState

EventSubscription

Provides a DMS (Data Migration Service) event subscription resource.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var example = new Aws.Dms.EventSubscription("example", new Aws.Dms.EventSubscriptionArgs
    {
        Enabled = true,
        EventCategories = 
        {
            "creation",
            "failure",
        },
        SnsTopicArn = aws_sns_topic.Example.Arn,
        SourceIds = 
        {
            aws_dms_replication_task.Example.Replication_task_id,
        },
        SourceType = "replication-task",
        Tags = 
        {
            { "Name", "example" },
        },
    });
}

}

EventSubscriptionArgs

EventSubscriptionState

ReplicationInstance

Provides a DMS (Data Migration Service) replication instance resource. DMS replication instances can be created, updated, deleted, and imported.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    var dmsAssumeRole = Output.Create(Aws.Iam.GetPolicyDocument.InvokeAsync(new Aws.Iam.GetPolicyDocumentArgs
    {
        Statements = 
        {
            new Aws.Iam.Inputs.GetPolicyDocumentStatementArgs
            {
                Actions = 
                {
                    "sts:AssumeRole",
                },
                Principals = 
                {
                    new Aws.Iam.Inputs.GetPolicyDocumentStatementPrincipalArgs
                    {
                        Identifiers = 
                        {
                            "dms.amazonaws.com",
                        },
                        Type = "Service",
                    },
                },
            },
        },
    }));
    var dms_access_for_endpoint = new Aws.Iam.Role("dms-access-for-endpoint", new Aws.Iam.RoleArgs
    {
        AssumeRolePolicy = dmsAssumeRole.Apply(dmsAssumeRole => dmsAssumeRole.Json),
    });
    var dms_access_for_endpoint_AmazonDMSRedshiftS3Role = new Aws.Iam.RolePolicyAttachment("dms-access-for-endpoint-AmazonDMSRedshiftS3Role", new Aws.Iam.RolePolicyAttachmentArgs
    {
        PolicyArn = "arn:aws:iam::aws:policy/service-role/AmazonDMSRedshiftS3Role",
        Role = dms_access_for_endpoint.Name,
    });
    var dms_cloudwatch_logs_role = new Aws.Iam.Role("dms-cloudwatch-logs-role", new Aws.Iam.RoleArgs
    {
        AssumeRolePolicy = dmsAssumeRole.Apply(dmsAssumeRole => dmsAssumeRole.Json),
    });
    var dms_cloudwatch_logs_role_AmazonDMSCloudWatchLogsRole = new Aws.Iam.RolePolicyAttachment("dms-cloudwatch-logs-role-AmazonDMSCloudWatchLogsRole", new Aws.Iam.RolePolicyAttachmentArgs
    {
        PolicyArn = "arn:aws:iam::aws:policy/service-role/AmazonDMSCloudWatchLogsRole",
        Role = dms_cloudwatch_logs_role.Name,
    });
    var dms_vpc_role = new Aws.Iam.Role("dms-vpc-role", new Aws.Iam.RoleArgs
    {
        AssumeRolePolicy = dmsAssumeRole.Apply(dmsAssumeRole => dmsAssumeRole.Json),
    });
    var dms_vpc_role_AmazonDMSVPCManagementRole = new Aws.Iam.RolePolicyAttachment("dms-vpc-role-AmazonDMSVPCManagementRole", new Aws.Iam.RolePolicyAttachmentArgs
    {
        PolicyArn = "arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole",
        Role = dms_vpc_role.Name,
    });
    // Create a new replication instance
    var test = new Aws.Dms.ReplicationInstance("test", new Aws.Dms.ReplicationInstanceArgs
    {
        AllocatedStorage = 20,
        ApplyImmediately = true,
        AutoMinorVersionUpgrade = true,
        AvailabilityZone = "us-west-2c",
        EngineVersion = "3.1.4",
        KmsKeyArn = "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012",
        MultiAz = false,
        PreferredMaintenanceWindow = "sun:10:30-sun:14:30",
        PubliclyAccessible = true,
        ReplicationInstanceClass = "dms.t2.micro",
        ReplicationInstanceId = "test-dms-replication-instance-tf",
        ReplicationSubnetGroupId = aws_dms_replication_subnet_group.Test_dms_replication_subnet_group_tf.Id,
        Tags = 
        {
            { "Name", "test" },
        },
        VpcSecurityGroupIds = 
        {
            "sg-12345678",
        },
    });
}

}

ReplicationInstanceArgs

ReplicationInstanceState

ReplicationSubnetGroup

Provides a DMS (Data Migration Service) replication subnet group resource. DMS replication subnet groups can be created, updated, deleted, and imported.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    // Create a new replication subnet group
    var test = new Aws.Dms.ReplicationSubnetGroup("test", new Aws.Dms.ReplicationSubnetGroupArgs
    {
        ReplicationSubnetGroupDescription = "Test replication subnet group",
        ReplicationSubnetGroupId = "test-dms-replication-subnet-group-tf",
        SubnetIds = 
        {
            "subnet-12345678",
        },
        Tags = 
        {
            { "Name", "test" },
        },
    });
}

}

ReplicationSubnetGroupArgs

ReplicationSubnetGroupState

ReplicationTask

Provides a DMS (Data Migration Service) replication task resource. DMS replication tasks can be created, updated, deleted, and imported.

Example Usage

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
public MyStack()
{
    // Create a new replication task
    var test = new Aws.Dms.ReplicationTask("test", new Aws.Dms.ReplicationTaskArgs
    {
        CdcStartTime = 1484346880,
        MigrationType = "full-load",
        ReplicationInstanceArn = aws_dms_replication_instance.Test_dms_replication_instance_tf.Replication_instance_arn,
        ReplicationTaskId = "test-dms-replication-task-tf",
        ReplicationTaskSettings = "...",
        SourceEndpointArn = aws_dms_endpoint.Test_dms_source_endpoint_tf.Endpoint_arn,
        TableMappings = "{\"rules\":[{\"rule-type\":\"selection\",\"rule-id\":\"1\",\"rule-name\":\"1\",\"object-locator\":{\"schema-name\":\"%\",\"table-name\":\"%\"},\"rule-action\":\"include\"}]}",
        Tags = 
        {
            { "Name", "test" },
        },
        TargetEndpointArn = aws_dms_endpoint.Test_dms_target_endpoint_tf.Endpoint_arn,
    });
}

}

ReplicationTaskArgs

ReplicationTaskState

Back to top Copyright 2016-2020, Pulumi Corporation.