Class Endpoint


  • public class Endpoint
    extends com.pulumi.resources.CustomResource
    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. > **Note:** The `s3_settings` argument is deprecated, may not be maintained, and will be removed in a future version. Use the `aws.dms.S3Endpoint` resource instead. ## Example Usage <!--Start PulumiCodeChooser -->
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.dms.Endpoint;
     import com.pulumi.aws.dms.EndpointArgs;
     import java.util.List;
     import java.util.ArrayList;
     import java.util.Map;
     import java.io.File;
     import java.nio.file.Files;
     import java.nio.file.Paths;
     
     public class App {
         public static void main(String[] args) {
             Pulumi.run(App::stack);
         }
     
         public static void stack(Context ctx) {
             // Create a new endpoint
             var test = new Endpoint("test", EndpointArgs.builder()
                 .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(Map.of("Name", "test"))
                 .username("test")
                 .build());
     
         }
     }
     
     
    <!--End PulumiCodeChooser --> ## Import Using `pulumi import`, import endpoints using the `endpoint_id`. For example: ```sh $ pulumi import aws:dms/endpoint:Endpoint test test-dms-endpoint-tf ```
    • Nested Class Summary

      • Nested classes/interfaces inherited from class com.pulumi.resources.CustomResource

        com.pulumi.resources.CustomResource.CustomResourceInternal
      • Nested classes/interfaces inherited from class com.pulumi.resources.Resource

        com.pulumi.resources.Resource.LazyField<T extends java.lang.Object>, com.pulumi.resources.Resource.LazyFields, com.pulumi.resources.Resource.ResourceInternal
    • Field Summary

      • Fields inherited from class com.pulumi.resources.Resource

        childResources, remote
    • Constructor Summary

      Constructors 
      Constructor Description
      Endpoint​(java.lang.String name)  
      Endpoint​(java.lang.String name, EndpointArgs args)  
      Endpoint​(java.lang.String name, EndpointArgs args, com.pulumi.resources.CustomResourceOptions options)  
    • Constructor Detail

      • Endpoint

        public Endpoint​(java.lang.String name)
        Parameters:
        name - The _unique_ name of the resulting resource.
      • Endpoint

        public Endpoint​(java.lang.String name,
                        EndpointArgs args)
        Parameters:
        name - The _unique_ name of the resulting resource.
        args - The arguments to use to populate this resource's properties.
      • Endpoint

        public Endpoint​(java.lang.String name,
                        EndpointArgs args,
                        @Nullable
                        com.pulumi.resources.CustomResourceOptions options)
        Parameters:
        name - The _unique_ name of the resulting resource.
        args - The arguments to use to populate this resource's properties.
        options - A bag of options that control this resource's behavior.
    • Method Detail

      • certificateArn

        public com.pulumi.core.Output<java.lang.String> certificateArn()
        Returns:
        ARN for the certificate.
      • databaseName

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> databaseName()
        Returns:
        Name of the endpoint database.
      • elasticsearchSettings

        public com.pulumi.core.Output<java.util.Optional<EndpointElasticsearchSettings>> elasticsearchSettings()
        Returns:
        Configuration block for OpenSearch settings. See below.
      • endpointArn

        public com.pulumi.core.Output<java.lang.String> endpointArn()
        Returns:
        ARN for the endpoint.
      • endpointId

        public com.pulumi.core.Output<java.lang.String> endpointId()
        Returns:
        Database endpoint identifier. Identifiers must contain from 1 to 255 alphanumeric characters or hyphens, begin with a letter, contain only ASCII letters, digits, and hyphens, not end with a hyphen, and not contain two consecutive hyphens.
      • endpointType

        public com.pulumi.core.Output<java.lang.String> endpointType()
        Returns:
        Type of endpoint. Valid values are `source`, `target`.
      • engineName

        public com.pulumi.core.Output<java.lang.String> engineName()
        Returns:
        Type of engine for the endpoint. Valid values are `aurora`, `aurora-postgresql`, `azuredb`, `azure-sql-managed-instance`, `babelfish`, `db2`, `db2-zos`, `docdb`, `dynamodb`, `elasticsearch`, `kafka`, `kinesis`, `mariadb`, `mongodb`, `mysql`, `opensearch`, `oracle`, `postgres`, `redshift`,`redshift-serverless`, `s3`, `sqlserver`, `sybase`. Please note that some of engine names are available only for `target` endpoint type (e.g. `redshift`).
      • extraConnectionAttributes

        public com.pulumi.core.Output<java.lang.String> extraConnectionAttributes()
        Returns:
        Additional attributes associated with the connection. For available attributes for a `source` Endpoint, see [Sources for data migration](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.html). For available attributes for a `target` Endpoint, see [Targets for data migration](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.html).
      • kafkaSettings

        public com.pulumi.core.Output<java.util.Optional<EndpointKafkaSettings>> kafkaSettings()
        Returns:
        Configuration block for Kafka settings. See below.
      • kinesisSettings

        public com.pulumi.core.Output<java.util.Optional<EndpointKinesisSettings>> kinesisSettings()
        Returns:
        Configuration block for Kinesis settings. See below.
      • kmsKeyArn

        public com.pulumi.core.Output<java.lang.String> kmsKeyArn()
        Returns:
        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. To encrypt an S3 target with a KMS Key, use the parameter `s3_settings.server_side_encryption_kms_key_id`. When `engine_name` is `redshift`, `kms_key_arn` is the KMS Key for the Redshift target and the parameter `redshift_settings.server_side_encryption_kms_key_id` encrypts the S3 intermediate storage. The following arguments are optional:
      • mongodbSettings

        public com.pulumi.core.Output<java.util.Optional<EndpointMongodbSettings>> mongodbSettings()
        Returns:
        Configuration block for MongoDB settings. See below.
      • password

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> password()
        Returns:
        Password to be used to login to the endpoint database.
      • pauseReplicationTasks

        public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> pauseReplicationTasks()
      • port

        public com.pulumi.core.Output<java.util.Optional<java.lang.Integer>> port()
        Returns:
        Port used by the endpoint database.
      • postgresSettings

        public com.pulumi.core.Output<java.util.Optional<EndpointPostgresSettings>> postgresSettings()
        Returns:
        Configuration block for Postgres settings. See below.
      • redisSettings

        public com.pulumi.core.Output<java.util.Optional<EndpointRedisSettings>> redisSettings()
      • redshiftSettings

        public com.pulumi.core.Output<EndpointRedshiftSettings> redshiftSettings()
        Returns:
        Configuration block for Redshift settings. See below.
      • s3Settings

        public com.pulumi.core.Output<java.util.Optional<EndpointS3Settings>> s3Settings()
        Returns:
        (**Deprecated**, use the `aws.dms.S3Endpoint` resource instead) Configuration block for S3 settings. See below.
      • secretsManagerAccessRoleArn

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> secretsManagerAccessRoleArn()
        Returns:
        ARN of the IAM role that specifies AWS DMS as the trusted entity and has the required permissions to access the value in the Secrets Manager secret referred to by `secrets_manager_arn`. The role must allow the `iam:PassRole` action. > **Note:** You can specify one of two sets of values for these permissions. You can specify the values for this setting and `secrets_manager_arn`. Or you can specify clear-text values for `username`, `password` , `server_name`, and `port`. You can't specify both.
      • secretsManagerArn

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> secretsManagerArn()
        Returns:
        Full ARN, partial ARN, or friendly name of the Secrets Manager secret that contains the endpoint connection details. Supported only when `engine_name` is `aurora`, `aurora-postgresql`, `mariadb`, `mongodb`, `mysql`, `oracle`, `postgres`, `redshift`, or `sqlserver`.
      • serverName

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> serverName()
        Returns:
        Host name of the server.
      • serviceAccessRole

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> serviceAccessRole()
        Returns:
        ARN used by the service access IAM role for dynamodb endpoints.
      • sslMode

        public com.pulumi.core.Output<java.lang.String> sslMode()
        Returns:
        SSL mode to use for the connection. Valid values are `none`, `require`, `verify-ca`, `verify-full`
      • tags

        public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> tags()
        Returns:
        Map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
      • tagsAll

        public com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll()
        Returns:
        Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
      • username

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> username()
        Returns:
        User name to be used to login to the endpoint database.
      • get

        public static Endpoint get​(java.lang.String name,
                                   com.pulumi.core.Output<java.lang.String> id,
                                   @Nullable
                                   EndpointState state,
                                   @Nullable
                                   com.pulumi.resources.CustomResourceOptions options)
        Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
        Parameters:
        name - The _unique_ name of the resulting resource.
        id - The _unique_ provider ID of the resource to lookup.
        state -
        options - Optional settings to control the behavior of the CustomResource.