This page documents the language specification for the aws package. If you're looking for help working with the inputs, outputs, or functions of aws resources in a Pulumi program, please see the resource documentation for examples and API reference.

dms

This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the pulumi/pulumi-aws repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-aws repo.

class pulumi_aws.dms.Certificate(resource_name, opts=None, certificate_id=None, certificate_pem=None, certificate_wallet=None, __props__=None, __name__=None, __opts__=None)

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.

import pulumi
import pulumi_aws as aws

# Create a new certificate
test = aws.dms.Certificate("test",
    certificate_id="test-dms-certificate-tf",
    certificate_pem="...")
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • certificate_id (pulumi.Input[str]) – The certificate identifier.

  • certificate_pem (pulumi.Input[str]) – The contents of the .pem X.509 certificate file for the certificate. Either certificate_pem or certificate_wallet must be set.

  • certificate_wallet (pulumi.Input[str]) – The contents of the Oracle Wallet certificate for use with SSL. Either certificate_pem or certificate_wallet must be set.

certificate_arn: pulumi.Output[str] = None

The Amazon Resource Name (ARN) for the certificate.

certificate_id: pulumi.Output[str] = None

The certificate identifier.

certificate_pem: pulumi.Output[str] = None

The contents of the .pem X.509 certificate file for the certificate. Either certificate_pem or certificate_wallet must be set.

certificate_wallet: pulumi.Output[str] = None

The contents of the Oracle Wallet certificate for use with SSL. Either certificate_pem or certificate_wallet must be set.

static get(resource_name, id, opts=None, certificate_arn=None, certificate_id=None, certificate_pem=None, certificate_wallet=None)

Get an existing Certificate resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • certificate_arn (pulumi.Input[str]) – The Amazon Resource Name (ARN) for the certificate.

  • certificate_id (pulumi.Input[str]) – The certificate identifier.

  • certificate_pem (pulumi.Input[str]) – The contents of the .pem X.509 certificate file for the certificate. Either certificate_pem or certificate_wallet must be set.

  • certificate_wallet (pulumi.Input[str]) – The contents of the Oracle Wallet certificate for use with SSL. Either certificate_pem or certificate_wallet must be set.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.dms.Endpoint(resource_name, opts=None, certificate_arn=None, database_name=None, elasticsearch_settings=None, endpoint_id=None, endpoint_type=None, engine_name=None, extra_connection_attributes=None, kafka_settings=None, kinesis_settings=None, kms_key_arn=None, mongodb_settings=None, password=None, port=None, s3_settings=None, server_name=None, service_access_role=None, ssl_mode=None, tags=None, username=None, __props__=None, __name__=None, __opts__=None)
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.

## Example Usage



```python
import pulumi
import pulumi_aws as aws

# Create a new endpoint
test = aws.dms.Endpoint("test",
    certificate_arn="arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012",
    database_name="test",
    endpoint_id="test-dms-endpoint-tf",
    endpoint_type="source",
    engine_name="aurora",
    extra_connection_attributes="",
    kms_key_arn="arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012",
    password="test",
    port=3306,
    server_name="test",
    ssl_mode="none",
    tags={
        "Name": "test",
    },
    username="test")
```

:param str resource_name: The name of the resource.
:param pulumi.ResourceOptions opts: Options for the resource.
:param pulumi.Input[str] certificate_arn: The Amazon Resource Name (ARN) for the certificate.
:param pulumi.Input[str] database_name: The name of the endpoint database.
:param pulumi.Input[dict] elasticsearch_settings: Configuration block with Elasticsearch settings. Detailed below.
:param pulumi.Input[str] endpoint_id: The database endpoint identifier.
:param pulumi.Input[str] endpoint_type: The type of endpoint. Can be one of `source | target`.
:param pulumi.Input[str] engine_name: The type of engine for the endpoint. Can be one of `aurora | aurora-postgresql| azuredb | db2 | docdb | dynamodb | elasticsearch | kafka | kinesis | mariadb | mongodb | mysql | oracle | postgres | redshift | s3 | sqlserver | sybase`.
:param pulumi.Input[str] extra_connection_attributes: Additional attributes associated with the connection. For available attributes see [Using Extra Connection Attributes with AWS Database Migration Service](http://docs.aws.amazon.com/dms/latest/userguide/CHAP_Introduction.ConnectionAttributes.html).
:param pulumi.Input[dict] kafka_settings: Configuration block with Kafka settings. Detailed below.
:param pulumi.Input[dict] kinesis_settings: Configuration block with Kinesis settings. Detailed below.
:param pulumi.Input[str] kms_key_arn: The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for `kms_key_arn`, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.
:param pulumi.Input[dict] mongodb_settings: Configuration block with MongoDB settings. Detailed below.
:param pulumi.Input[str] password: The password to be used to login to the endpoint database.
:param pulumi.Input[float] port: The port used by the endpoint database.
:param pulumi.Input[dict] s3_settings: Configuration block with S3 settings. Detailed below.
:param pulumi.Input[str] server_name: The host name of the server.
:param pulumi.Input[str] service_access_role: The Amazon Resource Name (ARN) used by the service access IAM role for dynamodb endpoints.
:param pulumi.Input[str] ssl_mode: The SSL mode to use for the connection. Can be one of `none | require | verify-ca | verify-full`
:param pulumi.Input[dict] tags: A map of tags to assign to the resource.
:param pulumi.Input[str] username: The user name to be used to login to the endpoint database.

The **elasticsearch_settings** object supports the following:

  * `endpointUri` (`pulumi.Input[str]`) - Endpoint for the Elasticsearch cluster.
  * `errorRetryDuration` (`pulumi.Input[float]`) - Maximum number of seconds for which DMS retries failed API requests to the Elasticsearch cluster. Defaults to `300`.
  * `fullLoadErrorPercentage` (`pulumi.Input[float]`) - Maximum percentage of records that can fail to be written before a full load operation stops. Defaults to `10`.
  * `serviceAccessRoleArn` (`pulumi.Input[str]`) - Amazon Resource Name (ARN) of the IAM Role with permissions to write to the Elasticsearch cluster.

The **kafka_settings** object supports the following:

  * `broker` (`pulumi.Input[str]`) - Kafka broker location. Specify in the form broker-hostname-or-ip:port.
  * `topic` (`pulumi.Input[str]`) - Kafka topic for migration. Defaults to `kafka-default-topic`.

The **kinesis_settings** object supports the following:

  * `messageFormat` (`pulumi.Input[str]`) - Output format for the records created. Defaults to `json`. Valid values are `json` and `json_unformatted` (a single line with no tab).
  * `serviceAccessRoleArn` (`pulumi.Input[str]`) - Amazon Resource Name (ARN) of the IAM Role with permissions to write to the Kinesis data stream.
  * `stream_arn` (`pulumi.Input[str]`) - Amazon Resource Name (ARN) of the Kinesis data stream.

The **mongodb_settings** object supports the following:

  * `authMechanism` (`pulumi.Input[str]`) - Authentication mechanism to access the MongoDB source endpoint. Defaults to `default`.
  * `authSource` (`pulumi.Input[str]`) - Authentication database name. Not used when `auth_type` is `no`. Defaults to `admin`.
  * `auth_type` (`pulumi.Input[str]`) - Authentication type to access the MongoDB source endpoint. Defaults to `password`.
  * `docsToInvestigate` (`pulumi.Input[str]`) - Number of documents to preview to determine the document organization. Use this setting when `nesting_level` is set to `one`. Defaults to `1000`.
  * `extractDocId` (`pulumi.Input[str]`) - Document ID. Use this setting when `nesting_level` is set to `none`. Defaults to `false`.
  * `nestingLevel` (`pulumi.Input[str]`) - Specifies either document or table mode. Defaults to `none`. Valid values are `one` (table mode) and `none` (document mode).

The **s3_settings** object supports the following:

  * `bucketFolder` (`pulumi.Input[str]`) - S3 Bucket Object prefix.
  * `bucket_name` (`pulumi.Input[str]`) - S3 Bucket name.
  * `compressionType` (`pulumi.Input[str]`) - Set to compress target files. Defaults to `NONE`. Valid values are `GZIP` and `NONE`.
  * `csvDelimiter` (`pulumi.Input[str]`) - Delimiter used to separate columns in the source files. Defaults to `,`.
  * `csvRowDelimiter` (`pulumi.Input[str]`) - Delimiter used to separate rows in the source files. Defaults to `

`.

* `externalTableDefinition` (`pulumi.Input[str]`) - JSON document that describes how AWS DMS should interpret the data.
* `serviceAccessRoleArn` (`pulumi.Input[str]`) - Amazon Resource Name (ARN) of the IAM Role with permissions to read from or write to the S3 Bucket.
certificate_arn: pulumi.Output[str] = None

The Amazon Resource Name (ARN) for the certificate.

database_name: pulumi.Output[str] = None

The name of the endpoint database.

elasticsearch_settings: pulumi.Output[dict] = None

Configuration block with Elasticsearch settings. Detailed below.

  • endpointUri (str) - Endpoint for the Elasticsearch cluster.

  • errorRetryDuration (float) - Maximum number of seconds for which DMS retries failed API requests to the Elasticsearch cluster. Defaults to 300.

  • fullLoadErrorPercentage (float) - Maximum percentage of records that can fail to be written before a full load operation stops. Defaults to 10.

  • serviceAccessRoleArn (str) - Amazon Resource Name (ARN) of the IAM Role with permissions to write to the Elasticsearch cluster.

endpoint_arn: pulumi.Output[str] = None

The Amazon Resource Name (ARN) for the endpoint.

endpoint_id: pulumi.Output[str] = None

The database endpoint identifier.

endpoint_type: pulumi.Output[str] = None

The type of endpoint. Can be one of source | target.

engine_name: pulumi.Output[str] = None

The type of engine for the endpoint. Can be one of aurora | aurora-postgresql| azuredb | db2 | docdb | dynamodb | elasticsearch | kafka | kinesis | mariadb | mongodb | mysql | oracle | postgres | redshift | s3 | sqlserver | sybase.

extra_connection_attributes: pulumi.Output[str] = None

Additional attributes associated with the connection. For available attributes see Using Extra Connection Attributes with AWS Database Migration Service.

kafka_settings: pulumi.Output[dict] = None

Configuration block with Kafka settings. Detailed below.

  • broker (str) - Kafka broker location. Specify in the form broker-hostname-or-ip:port.

  • topic (str) - Kafka topic for migration. Defaults to kafka-default-topic.

kinesis_settings: pulumi.Output[dict] = None

Configuration block with Kinesis settings. Detailed below.

  • messageFormat (str) - Output format for the records created. Defaults to json. Valid values are json and json_unformatted (a single line with no tab).

  • serviceAccessRoleArn (str) - Amazon Resource Name (ARN) of the IAM Role with permissions to write to the Kinesis data stream.

  • stream_arn (str) - Amazon Resource Name (ARN) of the Kinesis data stream.

kms_key_arn: pulumi.Output[str] = None

The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for kms_key_arn, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.

mongodb_settings: pulumi.Output[dict] = None

Configuration block with MongoDB settings. Detailed below.

  • authMechanism (str) - Authentication mechanism to access the MongoDB source endpoint. Defaults to default.

  • authSource (str) - Authentication database name. Not used when auth_type is no. Defaults to admin.

  • auth_type (str) - Authentication type to access the MongoDB source endpoint. Defaults to password.

  • docsToInvestigate (str) - Number of documents to preview to determine the document organization. Use this setting when nesting_level is set to one. Defaults to 1000.

  • extractDocId (str) - Document ID. Use this setting when nesting_level is set to none. Defaults to false.

  • nestingLevel (str) - Specifies either document or table mode. Defaults to none. Valid values are one (table mode) and none (document mode).

password: pulumi.Output[str] = None

The password to be used to login to the endpoint database.

port: pulumi.Output[float] = None

The port used by the endpoint database.

s3_settings: pulumi.Output[dict] = None
Configuration block with S3 settings. Detailed below.

  * `bucketFolder` (`str`) - S3 Bucket Object prefix.
  * `bucket_name` (`str`) - S3 Bucket name.
  * `compressionType` (`str`) - Set to compress target files. Defaults to `NONE`. Valid values are `GZIP` and `NONE`.
  * `csvDelimiter` (`str`) - Delimiter used to separate columns in the source files. Defaults to `,`.
  * `csvRowDelimiter` (`str`) - Delimiter used to separate rows in the source files. Defaults to `

`.

* `externalTableDefinition` (`str`) - JSON document that describes how AWS DMS should interpret the data.
* `serviceAccessRoleArn` (`str`) - Amazon Resource Name (ARN) of the IAM Role with permissions to read from or write to the S3 Bucket.
server_name: pulumi.Output[str] = None

The host name of the server.

service_access_role: pulumi.Output[str] = None

The Amazon Resource Name (ARN) used by the service access IAM role for dynamodb endpoints.

ssl_mode: pulumi.Output[str] = None

The SSL mode to use for the connection. Can be one of none | require | verify-ca | verify-full

tags: pulumi.Output[dict] = None

A map of tags to assign to the resource.

username: pulumi.Output[str] = None

The user name to be used to login to the endpoint database.

static get(resource_name, id, opts=None, certificate_arn=None, database_name=None, elasticsearch_settings=None, endpoint_arn=None, endpoint_id=None, endpoint_type=None, engine_name=None, extra_connection_attributes=None, kafka_settings=None, kinesis_settings=None, kms_key_arn=None, mongodb_settings=None, password=None, port=None, s3_settings=None, server_name=None, service_access_role=None, ssl_mode=None, tags=None, username=None)
Get an existing Endpoint resource's state with the given name, id, and optional extra
properties used to qualify the lookup.

:param str resource_name: The unique name of the resulting resource.
:param str id: The unique provider ID of the resource to lookup.
:param pulumi.ResourceOptions opts: Options for the resource.
:param pulumi.Input[str] certificate_arn: The Amazon Resource Name (ARN) for the certificate.
:param pulumi.Input[str] database_name: The name of the endpoint database.
:param pulumi.Input[dict] elasticsearch_settings: Configuration block with Elasticsearch settings. Detailed below.
:param pulumi.Input[str] endpoint_arn: The Amazon Resource Name (ARN) for the endpoint.
:param pulumi.Input[str] endpoint_id: The database endpoint identifier.
:param pulumi.Input[str] endpoint_type: The type of endpoint. Can be one of `source | target`.
:param pulumi.Input[str] engine_name: The type of engine for the endpoint. Can be one of `aurora | aurora-postgresql| azuredb | db2 | docdb | dynamodb | elasticsearch | kafka | kinesis | mariadb | mongodb | mysql | oracle | postgres | redshift | s3 | sqlserver | sybase`.
:param pulumi.Input[str] extra_connection_attributes: Additional attributes associated with the connection. For available attributes see [Using Extra Connection Attributes with AWS Database Migration Service](http://docs.aws.amazon.com/dms/latest/userguide/CHAP_Introduction.ConnectionAttributes.html).
:param pulumi.Input[dict] kafka_settings: Configuration block with Kafka settings. Detailed below.
:param pulumi.Input[dict] kinesis_settings: Configuration block with Kinesis settings. Detailed below.
:param pulumi.Input[str] kms_key_arn: The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for `kms_key_arn`, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.
:param pulumi.Input[dict] mongodb_settings: Configuration block with MongoDB settings. Detailed below.
:param pulumi.Input[str] password: The password to be used to login to the endpoint database.
:param pulumi.Input[float] port: The port used by the endpoint database.
:param pulumi.Input[dict] s3_settings: Configuration block with S3 settings. Detailed below.
:param pulumi.Input[str] server_name: The host name of the server.
:param pulumi.Input[str] service_access_role: The Amazon Resource Name (ARN) used by the service access IAM role for dynamodb endpoints.
:param pulumi.Input[str] ssl_mode: The SSL mode to use for the connection. Can be one of `none | require | verify-ca | verify-full`
:param pulumi.Input[dict] tags: A map of tags to assign to the resource.
:param pulumi.Input[str] username: The user name to be used to login to the endpoint database.

The **elasticsearch_settings** object supports the following:

  * `endpointUri` (`pulumi.Input[str]`) - Endpoint for the Elasticsearch cluster.
  * `errorRetryDuration` (`pulumi.Input[float]`) - Maximum number of seconds for which DMS retries failed API requests to the Elasticsearch cluster. Defaults to `300`.
  * `fullLoadErrorPercentage` (`pulumi.Input[float]`) - Maximum percentage of records that can fail to be written before a full load operation stops. Defaults to `10`.
  * `serviceAccessRoleArn` (`pulumi.Input[str]`) - Amazon Resource Name (ARN) of the IAM Role with permissions to write to the Elasticsearch cluster.

The **kafka_settings** object supports the following:

  * `broker` (`pulumi.Input[str]`) - Kafka broker location. Specify in the form broker-hostname-or-ip:port.
  * `topic` (`pulumi.Input[str]`) - Kafka topic for migration. Defaults to `kafka-default-topic`.

The **kinesis_settings** object supports the following:

  * `messageFormat` (`pulumi.Input[str]`) - Output format for the records created. Defaults to `json`. Valid values are `json` and `json_unformatted` (a single line with no tab).
  * `serviceAccessRoleArn` (`pulumi.Input[str]`) - Amazon Resource Name (ARN) of the IAM Role with permissions to write to the Kinesis data stream.
  * `stream_arn` (`pulumi.Input[str]`) - Amazon Resource Name (ARN) of the Kinesis data stream.

The **mongodb_settings** object supports the following:

  * `authMechanism` (`pulumi.Input[str]`) - Authentication mechanism to access the MongoDB source endpoint. Defaults to `default`.
  * `authSource` (`pulumi.Input[str]`) - Authentication database name. Not used when `auth_type` is `no`. Defaults to `admin`.
  * `auth_type` (`pulumi.Input[str]`) - Authentication type to access the MongoDB source endpoint. Defaults to `password`.
  * `docsToInvestigate` (`pulumi.Input[str]`) - Number of documents to preview to determine the document organization. Use this setting when `nesting_level` is set to `one`. Defaults to `1000`.
  * `extractDocId` (`pulumi.Input[str]`) - Document ID. Use this setting when `nesting_level` is set to `none`. Defaults to `false`.
  * `nestingLevel` (`pulumi.Input[str]`) - Specifies either document or table mode. Defaults to `none`. Valid values are `one` (table mode) and `none` (document mode).

The **s3_settings** object supports the following:

  * `bucketFolder` (`pulumi.Input[str]`) - S3 Bucket Object prefix.
  * `bucket_name` (`pulumi.Input[str]`) - S3 Bucket name.
  * `compressionType` (`pulumi.Input[str]`) - Set to compress target files. Defaults to `NONE`. Valid values are `GZIP` and `NONE`.
  * `csvDelimiter` (`pulumi.Input[str]`) - Delimiter used to separate columns in the source files. Defaults to `,`.
  * `csvRowDelimiter` (`pulumi.Input[str]`) - Delimiter used to separate rows in the source files. Defaults to `

`.

* `externalTableDefinition` (`pulumi.Input[str]`) - JSON document that describes how AWS DMS should interpret the data.
* `serviceAccessRoleArn` (`pulumi.Input[str]`) - Amazon Resource Name (ARN) of the IAM Role with permissions to read from or write to the S3 Bucket.
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.dms.EventSubscription(resource_name, opts=None, enabled=None, event_categories=None, name=None, sns_topic_arn=None, source_ids=None, source_type=None, tags=None, __props__=None, __name__=None, __opts__=None)

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

import pulumi
import pulumi_aws as aws

example = aws.dms.EventSubscription("example",
    enabled=True,
    event_categories=[
        "creation",
        "failure",
    ],
    sns_topic_arn=aws_sns_topic["example"]["arn"],
    source_ids=[aws_dms_replication_task["example"]["replication_task_id"]],
    source_type="replication-task",
    tags={
        "Name": "example",
    })
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • enabled (pulumi.Input[bool]) – Whether the event subscription should be enabled.

  • event_categories (pulumi.Input[list]) – List of event categories to listen for, see DescribeEventCategories for a canonical list.

  • name (pulumi.Input[str]) – Name of event subscription.

  • sns_topic_arn (pulumi.Input[str]) – SNS topic arn to send events on.

  • source_ids (pulumi.Input[list]) – Ids of sources to listen to.

  • source_type (pulumi.Input[str]) – Type of source for events. Valid values: replication-instance or replication-task

enabled: pulumi.Output[bool] = None

Whether the event subscription should be enabled.

event_categories: pulumi.Output[list] = None

List of event categories to listen for, see DescribeEventCategories for a canonical list.

name: pulumi.Output[str] = None

Name of event subscription.

sns_topic_arn: pulumi.Output[str] = None

SNS topic arn to send events on.

source_ids: pulumi.Output[list] = None

Ids of sources to listen to.

source_type: pulumi.Output[str] = None

Type of source for events. Valid values: replication-instance or replication-task

static get(resource_name, id, opts=None, arn=None, enabled=None, event_categories=None, name=None, sns_topic_arn=None, source_ids=None, source_type=None, tags=None)

Get an existing EventSubscription resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • enabled (pulumi.Input[bool]) – Whether the event subscription should be enabled.

  • event_categories (pulumi.Input[list]) – List of event categories to listen for, see DescribeEventCategories for a canonical list.

  • name (pulumi.Input[str]) – Name of event subscription.

  • sns_topic_arn (pulumi.Input[str]) – SNS topic arn to send events on.

  • source_ids (pulumi.Input[list]) – Ids of sources to listen to.

  • source_type (pulumi.Input[str]) – Type of source for events. Valid values: replication-instance or replication-task

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.dms.ReplicationInstance(resource_name, opts=None, allocated_storage=None, apply_immediately=None, auto_minor_version_upgrade=None, availability_zone=None, engine_version=None, kms_key_arn=None, multi_az=None, preferred_maintenance_window=None, publicly_accessible=None, replication_instance_class=None, replication_instance_id=None, replication_subnet_group_id=None, tags=None, vpc_security_group_ids=None, __props__=None, __name__=None, __opts__=None)

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

import pulumi
import pulumi_aws as aws

dms_assume_role = aws.iam.get_policy_document(statements=[{
    "actions": ["sts:AssumeRole"],
    "principals": [{
        "identifiers": ["dms.amazonaws.com"],
        "type": "Service",
    }],
}])
dms_access_for_endpoint = aws.iam.Role("dms-access-for-endpoint", assume_role_policy=dms_assume_role.json)
dms_access_for_endpoint__amazon_dms_redshift_s3_role = aws.iam.RolePolicyAttachment("dms-access-for-endpoint-AmazonDMSRedshiftS3Role",
    policy_arn="arn:aws:iam::aws:policy/service-role/AmazonDMSRedshiftS3Role",
    role=dms_access_for_endpoint.name)
dms_cloudwatch_logs_role = aws.iam.Role("dms-cloudwatch-logs-role", assume_role_policy=dms_assume_role.json)
dms_cloudwatch_logs_role__amazon_dms_cloud_watch_logs_role = aws.iam.RolePolicyAttachment("dms-cloudwatch-logs-role-AmazonDMSCloudWatchLogsRole",
    policy_arn="arn:aws:iam::aws:policy/service-role/AmazonDMSCloudWatchLogsRole",
    role=dms_cloudwatch_logs_role.name)
dms_vpc_role = aws.iam.Role("dms-vpc-role", assume_role_policy=dms_assume_role.json)
dms_vpc_role__amazon_dmsvpc_management_role = aws.iam.RolePolicyAttachment("dms-vpc-role-AmazonDMSVPCManagementRole",
    policy_arn="arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole",
    role=dms_vpc_role.name)
# Create a new replication instance
test = aws.dms.ReplicationInstance("test",
    allocated_storage=20,
    apply_immediately=True,
    auto_minor_version_upgrade=True,
    availability_zone="us-west-2c",
    engine_version="3.1.4",
    kms_key_arn="arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012",
    multi_az=False,
    preferred_maintenance_window="sun:10:30-sun:14:30",
    publicly_accessible=True,
    replication_instance_class="dms.t2.micro",
    replication_instance_id="test-dms-replication-instance-tf",
    replication_subnet_group_id=aws_dms_replication_subnet_group["test-dms-replication-subnet-group-tf"]["id"],
    tags={
        "Name": "test",
    },
    vpc_security_group_ids=["sg-12345678"])
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • allocated_storage (pulumi.Input[float]) – The amount of storage (in gigabytes) to be initially allocated for the replication instance.

  • apply_immediately (pulumi.Input[bool]) – Indicates whether the changes should be applied immediately or during the next maintenance window. Only used when updating an existing resource.

  • auto_minor_version_upgrade (pulumi.Input[bool]) – Indicates that minor engine upgrades will be applied automatically to the replication instance during the maintenance window.

  • availability_zone (pulumi.Input[str]) – The EC2 Availability Zone that the replication instance will be created in.

  • engine_version (pulumi.Input[str]) – The engine version number of the replication instance.

  • kms_key_arn (pulumi.Input[str]) – The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for kms_key_arn, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.

  • multi_az (pulumi.Input[bool]) – Specifies if the replication instance is a multi-az deployment. You cannot set the availability_zone parameter if the multi_az parameter is set to true.

  • preferred_maintenance_window (pulumi.Input[str]) – The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

  • publicly_accessible (pulumi.Input[bool]) – Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address.

  • replication_instance_class (pulumi.Input[str]) – The compute and memory capacity of the replication instance as specified by the replication instance class. Can be one of dms.t2.micro | dms.t2.small | dms.t2.medium | dms.t2.large | dms.c4.large | dms.c4.xlarge | dms.c4.2xlarge | dms.c4.4xlarge

  • replication_instance_id (pulumi.Input[str]) – The replication instance identifier. This parameter is stored as a lowercase string.

  • replication_subnet_group_id (pulumi.Input[str]) – A subnet group to associate with the replication instance.

  • tags (pulumi.Input[dict]) – A map of tags to assign to the resource.

  • vpc_security_group_ids (pulumi.Input[list]) – A list of VPC security group IDs to be used with the replication instance. The VPC security groups must work with the VPC containing the replication instance.

allocated_storage: pulumi.Output[float] = None

The amount of storage (in gigabytes) to be initially allocated for the replication instance.

apply_immediately: pulumi.Output[bool] = None

Indicates whether the changes should be applied immediately or during the next maintenance window. Only used when updating an existing resource.

auto_minor_version_upgrade: pulumi.Output[bool] = None

Indicates that minor engine upgrades will be applied automatically to the replication instance during the maintenance window.

availability_zone: pulumi.Output[str] = None

The EC2 Availability Zone that the replication instance will be created in.

engine_version: pulumi.Output[str] = None

The engine version number of the replication instance.

kms_key_arn: pulumi.Output[str] = None

The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for kms_key_arn, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.

multi_az: pulumi.Output[bool] = None

Specifies if the replication instance is a multi-az deployment. You cannot set the availability_zone parameter if the multi_az parameter is set to true.

preferred_maintenance_window: pulumi.Output[str] = None

The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

publicly_accessible: pulumi.Output[bool] = None

Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address.

replication_instance_arn: pulumi.Output[str] = None

The Amazon Resource Name (ARN) of the replication instance.

replication_instance_class: pulumi.Output[str] = None

The compute and memory capacity of the replication instance as specified by the replication instance class. Can be one of dms.t2.micro | dms.t2.small | dms.t2.medium | dms.t2.large | dms.c4.large | dms.c4.xlarge | dms.c4.2xlarge | dms.c4.4xlarge

replication_instance_id: pulumi.Output[str] = None

The replication instance identifier. This parameter is stored as a lowercase string.

replication_instance_private_ips: pulumi.Output[list] = None

A list of the private IP addresses of the replication instance.

replication_instance_public_ips: pulumi.Output[list] = None

A list of the public IP addresses of the replication instance.

replication_subnet_group_id: pulumi.Output[str] = None

A subnet group to associate with the replication instance.

tags: pulumi.Output[dict] = None

A map of tags to assign to the resource.

vpc_security_group_ids: pulumi.Output[list] = None

A list of VPC security group IDs to be used with the replication instance. The VPC security groups must work with the VPC containing the replication instance.

static get(resource_name, id, opts=None, allocated_storage=None, apply_immediately=None, auto_minor_version_upgrade=None, availability_zone=None, engine_version=None, kms_key_arn=None, multi_az=None, preferred_maintenance_window=None, publicly_accessible=None, replication_instance_arn=None, replication_instance_class=None, replication_instance_id=None, replication_instance_private_ips=None, replication_instance_public_ips=None, replication_subnet_group_id=None, tags=None, vpc_security_group_ids=None)

Get an existing ReplicationInstance resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • allocated_storage (pulumi.Input[float]) – The amount of storage (in gigabytes) to be initially allocated for the replication instance.

  • apply_immediately (pulumi.Input[bool]) – Indicates whether the changes should be applied immediately or during the next maintenance window. Only used when updating an existing resource.

  • auto_minor_version_upgrade (pulumi.Input[bool]) – Indicates that minor engine upgrades will be applied automatically to the replication instance during the maintenance window.

  • availability_zone (pulumi.Input[str]) – The EC2 Availability Zone that the replication instance will be created in.

  • engine_version (pulumi.Input[str]) – The engine version number of the replication instance.

  • kms_key_arn (pulumi.Input[str]) – The Amazon Resource Name (ARN) for the KMS key that will be used to encrypt the connection parameters. If you do not specify a value for kms_key_arn, then AWS DMS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.

  • multi_az (pulumi.Input[bool]) – Specifies if the replication instance is a multi-az deployment. You cannot set the availability_zone parameter if the multi_az parameter is set to true.

  • preferred_maintenance_window (pulumi.Input[str]) – The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

  • publicly_accessible (pulumi.Input[bool]) – Specifies the accessibility options for the replication instance. A value of true represents an instance with a public IP address. A value of false represents an instance with a private IP address.

  • replication_instance_arn (pulumi.Input[str]) – The Amazon Resource Name (ARN) of the replication instance.

  • replication_instance_class (pulumi.Input[str]) – The compute and memory capacity of the replication instance as specified by the replication instance class. Can be one of dms.t2.micro | dms.t2.small | dms.t2.medium | dms.t2.large | dms.c4.large | dms.c4.xlarge | dms.c4.2xlarge | dms.c4.4xlarge

  • replication_instance_id (pulumi.Input[str]) – The replication instance identifier. This parameter is stored as a lowercase string.

  • replication_instance_private_ips (pulumi.Input[list]) – A list of the private IP addresses of the replication instance.

  • replication_instance_public_ips (pulumi.Input[list]) – A list of the public IP addresses of the replication instance.

  • replication_subnet_group_id (pulumi.Input[str]) – A subnet group to associate with the replication instance.

  • tags (pulumi.Input[dict]) – A map of tags to assign to the resource.

  • vpc_security_group_ids (pulumi.Input[list]) – A list of VPC security group IDs to be used with the replication instance. The VPC security groups must work with the VPC containing the replication instance.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.dms.ReplicationSubnetGroup(resource_name, opts=None, replication_subnet_group_description=None, replication_subnet_group_id=None, subnet_ids=None, tags=None, __props__=None, __name__=None, __opts__=None)

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

import pulumi
import pulumi_aws as aws

# Create a new replication subnet group
test = aws.dms.ReplicationSubnetGroup("test",
    replication_subnet_group_description="Test replication subnet group",
    replication_subnet_group_id="test-dms-replication-subnet-group-tf",
    subnet_ids=["subnet-12345678"],
    tags={
        "Name": "test",
    })
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • replication_subnet_group_description (pulumi.Input[str]) – The description for the subnet group.

  • replication_subnet_group_id (pulumi.Input[str]) – The name for the replication subnet group. This value is stored as a lowercase string.

  • subnet_ids (pulumi.Input[list]) – A list of the EC2 subnet IDs for the subnet group.

  • tags (pulumi.Input[dict]) – A map of tags to assign to the resource.

replication_subnet_group_description: pulumi.Output[str] = None

The description for the subnet group.

replication_subnet_group_id: pulumi.Output[str] = None

The name for the replication subnet group. This value is stored as a lowercase string.

subnet_ids: pulumi.Output[list] = None

A list of the EC2 subnet IDs for the subnet group.

tags: pulumi.Output[dict] = None

A map of tags to assign to the resource.

vpc_id: pulumi.Output[str] = None

The ID of the VPC the subnet group is in.

static get(resource_name, id, opts=None, replication_subnet_group_arn=None, replication_subnet_group_description=None, replication_subnet_group_id=None, subnet_ids=None, tags=None, vpc_id=None)

Get an existing ReplicationSubnetGroup resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • replication_subnet_group_description (pulumi.Input[str]) – The description for the subnet group.

  • replication_subnet_group_id (pulumi.Input[str]) – The name for the replication subnet group. This value is stored as a lowercase string.

  • subnet_ids (pulumi.Input[list]) – A list of the EC2 subnet IDs for the subnet group.

  • tags (pulumi.Input[dict]) – A map of tags to assign to the resource.

  • vpc_id (pulumi.Input[str]) – The ID of the VPC the subnet group is in.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.dms.ReplicationTask(resource_name, opts=None, cdc_start_time=None, migration_type=None, replication_instance_arn=None, replication_task_id=None, replication_task_settings=None, source_endpoint_arn=None, table_mappings=None, tags=None, target_endpoint_arn=None, __props__=None, __name__=None, __opts__=None)

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

import pulumi
import pulumi_aws as aws

# Create a new replication task
test = aws.dms.ReplicationTask("test",
    cdc_start_time=1484346880,
    migration_type="full-load",
    replication_instance_arn=aws_dms_replication_instance["test-dms-replication-instance-tf"]["replication_instance_arn"],
    replication_task_id="test-dms-replication-task-tf",
    replication_task_settings="...",
    source_endpoint_arn=aws_dms_endpoint["test-dms-source-endpoint-tf"]["endpoint_arn"],
    table_mappings="{"rules":[{"rule-type":"selection","rule-id":"1","rule-name":"1","object-locator":{"schema-name":"%","table-name":"%"},"rule-action":"include"}]}",
    tags={
        "Name": "test",
    },
    target_endpoint_arn=aws_dms_endpoint["test-dms-target-endpoint-tf"]["endpoint_arn"])
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • cdc_start_time (pulumi.Input[str]) – The Unix timestamp integer for the start of the Change Data Capture (CDC) operation.

  • migration_type (pulumi.Input[str]) – The migration type. Can be one of full-load | cdc | full-load-and-cdc.

  • replication_instance_arn (pulumi.Input[str]) – The Amazon Resource Name (ARN) of the replication instance.

  • replication_task_id (pulumi.Input[str]) – The replication task identifier.

  • replication_task_settings (pulumi.Input[str]) – An escaped JSON string that contains the task settings. For a complete list of task settings, see Task Settings for AWS Database Migration Service Tasks.

  • source_endpoint_arn (pulumi.Input[str]) – The Amazon Resource Name (ARN) string that uniquely identifies the source endpoint.

  • table_mappings (pulumi.Input[str]) – An escaped JSON string that contains the table mappings. For information on table mapping see Using Table Mapping with an AWS Database Migration Service Task to Select and Filter Data

  • tags (pulumi.Input[dict]) – A map of tags to assign to the resource.

  • target_endpoint_arn (pulumi.Input[str]) – The Amazon Resource Name (ARN) string that uniquely identifies the target endpoint.

cdc_start_time: pulumi.Output[str] = None

The Unix timestamp integer for the start of the Change Data Capture (CDC) operation.

migration_type: pulumi.Output[str] = None

The migration type. Can be one of full-load | cdc | full-load-and-cdc.

replication_instance_arn: pulumi.Output[str] = None

The Amazon Resource Name (ARN) of the replication instance.

replication_task_arn: pulumi.Output[str] = None

The Amazon Resource Name (ARN) for the replication task.

replication_task_id: pulumi.Output[str] = None

The replication task identifier.

replication_task_settings: pulumi.Output[str] = None

An escaped JSON string that contains the task settings. For a complete list of task settings, see Task Settings for AWS Database Migration Service Tasks.

source_endpoint_arn: pulumi.Output[str] = None

The Amazon Resource Name (ARN) string that uniquely identifies the source endpoint.

table_mappings: pulumi.Output[str] = None

An escaped JSON string that contains the table mappings. For information on table mapping see Using Table Mapping with an AWS Database Migration Service Task to Select and Filter Data

tags: pulumi.Output[dict] = None

A map of tags to assign to the resource.

target_endpoint_arn: pulumi.Output[str] = None

The Amazon Resource Name (ARN) string that uniquely identifies the target endpoint.

static get(resource_name, id, opts=None, cdc_start_time=None, migration_type=None, replication_instance_arn=None, replication_task_arn=None, replication_task_id=None, replication_task_settings=None, source_endpoint_arn=None, table_mappings=None, tags=None, target_endpoint_arn=None)

Get an existing ReplicationTask resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • cdc_start_time (pulumi.Input[str]) – The Unix timestamp integer for the start of the Change Data Capture (CDC) operation.

  • migration_type (pulumi.Input[str]) – The migration type. Can be one of full-load | cdc | full-load-and-cdc.

  • replication_instance_arn (pulumi.Input[str]) – The Amazon Resource Name (ARN) of the replication instance.

  • replication_task_arn (pulumi.Input[str]) – The Amazon Resource Name (ARN) for the replication task.

  • replication_task_id (pulumi.Input[str]) – The replication task identifier.

  • replication_task_settings (pulumi.Input[str]) –

    An escaped JSON string that contains the task settings. For a complete list of task settings, see Task Settings for AWS Database Migration Service Tasks.

  • source_endpoint_arn (pulumi.Input[str]) – The Amazon Resource Name (ARN) string that uniquely identifies the source endpoint.

  • table_mappings (pulumi.Input[str]) –

    An escaped JSON string that contains the table mappings. For information on table mapping see Using Table Mapping with an AWS Database Migration Service Task to Select and Filter Data

  • tags (pulumi.Input[dict]) – A map of tags to assign to the resource.

  • target_endpoint_arn (pulumi.Input[str]) – The Amazon Resource Name (ARN) string that uniquely identifies the target endpoint.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str