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,
});
}
}