1. Packages
  2. Google Cloud (GCP) Classic
  3. API Docs
  4. databasemigrationservice
  5. ConnectionProfile
Google Cloud Classic v8.9.3 published on Monday, Nov 18, 2024 by Pulumi

gcp.databasemigrationservice.ConnectionProfile

Explore with Pulumi AI

gcp logo
Google Cloud Classic v8.9.3 published on Monday, Nov 18, 2024 by Pulumi

    A connection profile definition.

    To get more information about ConnectionProfile, see:

    Example Usage

    Database Migration Service Connection Profile Cloudsql

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const project = gcp.organizations.getProject({});
    const cloudsqldb = new gcp.sql.DatabaseInstance("cloudsqldb", {
        name: "my-database",
        databaseVersion: "MYSQL_5_7",
        settings: {
            tier: "db-n1-standard-1",
            deletionProtectionEnabled: false,
        },
        deletionProtection: false,
    });
    const sqlClientCert = new gcp.sql.SslCert("sql_client_cert", {
        commonName: "my-cert",
        instance: cloudsqldb.name,
    }, {
        dependsOn: [cloudsqldb],
    });
    const sqldbUser = new gcp.sql.User("sqldb_user", {
        name: "my-username",
        instance: cloudsqldb.name,
        password: "my-password",
    }, {
        dependsOn: [sqlClientCert],
    });
    const cloudsqlprofile = new gcp.databasemigrationservice.ConnectionProfile("cloudsqlprofile", {
        location: "us-central1",
        connectionProfileId: "my-fromprofileid",
        displayName: "my-fromprofileid_display",
        labels: {
            foo: "bar",
        },
        mysql: {
            host: cloudsqldb.ipAddresses.apply(ipAddresses => ipAddresses[0].ipAddress),
            port: 3306,
            username: sqldbUser.name,
            password: sqldbUser.password,
            ssl: {
                clientKey: sqlClientCert.privateKey,
                clientCertificate: sqlClientCert.cert,
                caCertificate: sqlClientCert.serverCaCert,
            },
            cloudSqlId: "my-database",
        },
    }, {
        dependsOn: [sqldbUser],
    });
    const cloudsqlprofileDestination = new gcp.databasemigrationservice.ConnectionProfile("cloudsqlprofile_destination", {
        location: "us-central1",
        connectionProfileId: "my-toprofileid",
        displayName: "my-toprofileid_displayname",
        labels: {
            foo: "bar",
        },
        cloudsql: {
            settings: {
                databaseVersion: "MYSQL_5_7",
                userLabels: {
                    cloudfoo: "cloudbar",
                },
                tier: "db-n1-standard-1",
                edition: "ENTERPRISE",
                storageAutoResizeLimit: "0",
                activationPolicy: "ALWAYS",
                ipConfig: {
                    enableIpv4: true,
                    requireSsl: true,
                },
                autoStorageIncrease: true,
                dataDiskType: "PD_HDD",
                dataDiskSizeGb: "11",
                zone: "us-central1-b",
                sourceId: project.then(project => `projects/${project.projectId}/locations/us-central1/connectionProfiles/my-fromprofileid`),
                rootPassword: "testpasscloudsql",
            },
        },
    }, {
        dependsOn: [cloudsqlprofile],
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    project = gcp.organizations.get_project()
    cloudsqldb = gcp.sql.DatabaseInstance("cloudsqldb",
        name="my-database",
        database_version="MYSQL_5_7",
        settings={
            "tier": "db-n1-standard-1",
            "deletion_protection_enabled": False,
        },
        deletion_protection=False)
    sql_client_cert = gcp.sql.SslCert("sql_client_cert",
        common_name="my-cert",
        instance=cloudsqldb.name,
        opts = pulumi.ResourceOptions(depends_on=[cloudsqldb]))
    sqldb_user = gcp.sql.User("sqldb_user",
        name="my-username",
        instance=cloudsqldb.name,
        password="my-password",
        opts = pulumi.ResourceOptions(depends_on=[sql_client_cert]))
    cloudsqlprofile = gcp.databasemigrationservice.ConnectionProfile("cloudsqlprofile",
        location="us-central1",
        connection_profile_id="my-fromprofileid",
        display_name="my-fromprofileid_display",
        labels={
            "foo": "bar",
        },
        mysql={
            "host": cloudsqldb.ip_addresses[0].ip_address,
            "port": 3306,
            "username": sqldb_user.name,
            "password": sqldb_user.password,
            "ssl": {
                "client_key": sql_client_cert.private_key,
                "client_certificate": sql_client_cert.cert,
                "ca_certificate": sql_client_cert.server_ca_cert,
            },
            "cloud_sql_id": "my-database",
        },
        opts = pulumi.ResourceOptions(depends_on=[sqldb_user]))
    cloudsqlprofile_destination = gcp.databasemigrationservice.ConnectionProfile("cloudsqlprofile_destination",
        location="us-central1",
        connection_profile_id="my-toprofileid",
        display_name="my-toprofileid_displayname",
        labels={
            "foo": "bar",
        },
        cloudsql={
            "settings": {
                "database_version": "MYSQL_5_7",
                "user_labels": {
                    "cloudfoo": "cloudbar",
                },
                "tier": "db-n1-standard-1",
                "edition": "ENTERPRISE",
                "storage_auto_resize_limit": "0",
                "activation_policy": "ALWAYS",
                "ip_config": {
                    "enable_ipv4": True,
                    "require_ssl": True,
                },
                "auto_storage_increase": True,
                "data_disk_type": "PD_HDD",
                "data_disk_size_gb": "11",
                "zone": "us-central1-b",
                "source_id": f"projects/{project.project_id}/locations/us-central1/connectionProfiles/my-fromprofileid",
                "root_password": "testpasscloudsql",
            },
        },
        opts = pulumi.ResourceOptions(depends_on=[cloudsqlprofile]))
    
    package main
    
    import (
    	"fmt"
    
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/databasemigrationservice"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/sql"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		project, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
    		if err != nil {
    			return err
    		}
    		cloudsqldb, err := sql.NewDatabaseInstance(ctx, "cloudsqldb", &sql.DatabaseInstanceArgs{
    			Name:            pulumi.String("my-database"),
    			DatabaseVersion: pulumi.String("MYSQL_5_7"),
    			Settings: &sql.DatabaseInstanceSettingsArgs{
    				Tier:                      pulumi.String("db-n1-standard-1"),
    				DeletionProtectionEnabled: pulumi.Bool(false),
    			},
    			DeletionProtection: pulumi.Bool(false),
    		})
    		if err != nil {
    			return err
    		}
    		sqlClientCert, err := sql.NewSslCert(ctx, "sql_client_cert", &sql.SslCertArgs{
    			CommonName: pulumi.String("my-cert"),
    			Instance:   cloudsqldb.Name,
    		}, pulumi.DependsOn([]pulumi.Resource{
    			cloudsqldb,
    		}))
    		if err != nil {
    			return err
    		}
    		sqldbUser, err := sql.NewUser(ctx, "sqldb_user", &sql.UserArgs{
    			Name:     pulumi.String("my-username"),
    			Instance: cloudsqldb.Name,
    			Password: pulumi.String("my-password"),
    		}, pulumi.DependsOn([]pulumi.Resource{
    			sqlClientCert,
    		}))
    		if err != nil {
    			return err
    		}
    		cloudsqlprofile, err := databasemigrationservice.NewConnectionProfile(ctx, "cloudsqlprofile", &databasemigrationservice.ConnectionProfileArgs{
    			Location:            pulumi.String("us-central1"),
    			ConnectionProfileId: pulumi.String("my-fromprofileid"),
    			DisplayName:         pulumi.String("my-fromprofileid_display"),
    			Labels: pulumi.StringMap{
    				"foo": pulumi.String("bar"),
    			},
    			Mysql: &databasemigrationservice.ConnectionProfileMysqlArgs{
    				Host: cloudsqldb.IpAddresses.ApplyT(func(ipAddresses []sql.DatabaseInstanceIpAddress) (*string, error) {
    					return &ipAddresses[0].IpAddress, nil
    				}).(pulumi.StringPtrOutput),
    				Port:     pulumi.Int(3306),
    				Username: sqldbUser.Name,
    				Password: sqldbUser.Password,
    				Ssl: &databasemigrationservice.ConnectionProfileMysqlSslArgs{
    					ClientKey:         sqlClientCert.PrivateKey,
    					ClientCertificate: sqlClientCert.Cert,
    					CaCertificate:     sqlClientCert.ServerCaCert,
    				},
    				CloudSqlId: pulumi.String("my-database"),
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			sqldbUser,
    		}))
    		if err != nil {
    			return err
    		}
    		_, err = databasemigrationservice.NewConnectionProfile(ctx, "cloudsqlprofile_destination", &databasemigrationservice.ConnectionProfileArgs{
    			Location:            pulumi.String("us-central1"),
    			ConnectionProfileId: pulumi.String("my-toprofileid"),
    			DisplayName:         pulumi.String("my-toprofileid_displayname"),
    			Labels: pulumi.StringMap{
    				"foo": pulumi.String("bar"),
    			},
    			Cloudsql: &databasemigrationservice.ConnectionProfileCloudsqlArgs{
    				Settings: &databasemigrationservice.ConnectionProfileCloudsqlSettingsArgs{
    					DatabaseVersion: pulumi.String("MYSQL_5_7"),
    					UserLabels: pulumi.StringMap{
    						"cloudfoo": pulumi.String("cloudbar"),
    					},
    					Tier:                   pulumi.String("db-n1-standard-1"),
    					Edition:                pulumi.String("ENTERPRISE"),
    					StorageAutoResizeLimit: pulumi.String("0"),
    					ActivationPolicy:       pulumi.String("ALWAYS"),
    					IpConfig: &databasemigrationservice.ConnectionProfileCloudsqlSettingsIpConfigArgs{
    						EnableIpv4: pulumi.Bool(true),
    						RequireSsl: pulumi.Bool(true),
    					},
    					AutoStorageIncrease: pulumi.Bool(true),
    					DataDiskType:        pulumi.String("PD_HDD"),
    					DataDiskSizeGb:      pulumi.String("11"),
    					Zone:                pulumi.String("us-central1-b"),
    					SourceId:            pulumi.Sprintf("projects/%v/locations/us-central1/connectionProfiles/my-fromprofileid", project.ProjectId),
    					RootPassword:        pulumi.String("testpasscloudsql"),
    				},
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			cloudsqlprofile,
    		}))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var project = Gcp.Organizations.GetProject.Invoke();
    
        var cloudsqldb = new Gcp.Sql.DatabaseInstance("cloudsqldb", new()
        {
            Name = "my-database",
            DatabaseVersion = "MYSQL_5_7",
            Settings = new Gcp.Sql.Inputs.DatabaseInstanceSettingsArgs
            {
                Tier = "db-n1-standard-1",
                DeletionProtectionEnabled = false,
            },
            DeletionProtection = false,
        });
    
        var sqlClientCert = new Gcp.Sql.SslCert("sql_client_cert", new()
        {
            CommonName = "my-cert",
            Instance = cloudsqldb.Name,
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                cloudsqldb,
            },
        });
    
        var sqldbUser = new Gcp.Sql.User("sqldb_user", new()
        {
            Name = "my-username",
            Instance = cloudsqldb.Name,
            Password = "my-password",
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                sqlClientCert,
            },
        });
    
        var cloudsqlprofile = new Gcp.DatabaseMigrationService.ConnectionProfile("cloudsqlprofile", new()
        {
            Location = "us-central1",
            ConnectionProfileId = "my-fromprofileid",
            DisplayName = "my-fromprofileid_display",
            Labels = 
            {
                { "foo", "bar" },
            },
            Mysql = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileMysqlArgs
            {
                Host = cloudsqldb.IpAddresses.Apply(ipAddresses => ipAddresses[0].IpAddress),
                Port = 3306,
                Username = sqldbUser.Name,
                Password = sqldbUser.Password,
                Ssl = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileMysqlSslArgs
                {
                    ClientKey = sqlClientCert.PrivateKey,
                    ClientCertificate = sqlClientCert.Cert,
                    CaCertificate = sqlClientCert.ServerCaCert,
                },
                CloudSqlId = "my-database",
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                sqldbUser,
            },
        });
    
        var cloudsqlprofileDestination = new Gcp.DatabaseMigrationService.ConnectionProfile("cloudsqlprofile_destination", new()
        {
            Location = "us-central1",
            ConnectionProfileId = "my-toprofileid",
            DisplayName = "my-toprofileid_displayname",
            Labels = 
            {
                { "foo", "bar" },
            },
            Cloudsql = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileCloudsqlArgs
            {
                Settings = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileCloudsqlSettingsArgs
                {
                    DatabaseVersion = "MYSQL_5_7",
                    UserLabels = 
                    {
                        { "cloudfoo", "cloudbar" },
                    },
                    Tier = "db-n1-standard-1",
                    Edition = "ENTERPRISE",
                    StorageAutoResizeLimit = "0",
                    ActivationPolicy = "ALWAYS",
                    IpConfig = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileCloudsqlSettingsIpConfigArgs
                    {
                        EnableIpv4 = true,
                        RequireSsl = true,
                    },
                    AutoStorageIncrease = true,
                    DataDiskType = "PD_HDD",
                    DataDiskSizeGb = "11",
                    Zone = "us-central1-b",
                    SourceId = $"projects/{project.Apply(getProjectResult => getProjectResult.ProjectId)}/locations/us-central1/connectionProfiles/my-fromprofileid",
                    RootPassword = "testpasscloudsql",
                },
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                cloudsqlprofile,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.organizations.OrganizationsFunctions;
    import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
    import com.pulumi.gcp.sql.DatabaseInstance;
    import com.pulumi.gcp.sql.DatabaseInstanceArgs;
    import com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsArgs;
    import com.pulumi.gcp.sql.SslCert;
    import com.pulumi.gcp.sql.SslCertArgs;
    import com.pulumi.gcp.sql.User;
    import com.pulumi.gcp.sql.UserArgs;
    import com.pulumi.gcp.databasemigrationservice.ConnectionProfile;
    import com.pulumi.gcp.databasemigrationservice.ConnectionProfileArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfileMysqlArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfileMysqlSslArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfileCloudsqlArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfileCloudsqlSettingsArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfileCloudsqlSettingsIpConfigArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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) {
            final var project = OrganizationsFunctions.getProject();
    
            var cloudsqldb = new DatabaseInstance("cloudsqldb", DatabaseInstanceArgs.builder()
                .name("my-database")
                .databaseVersion("MYSQL_5_7")
                .settings(DatabaseInstanceSettingsArgs.builder()
                    .tier("db-n1-standard-1")
                    .deletionProtectionEnabled(false)
                    .build())
                .deletionProtection(false)
                .build());
    
            var sqlClientCert = new SslCert("sqlClientCert", SslCertArgs.builder()
                .commonName("my-cert")
                .instance(cloudsqldb.name())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(cloudsqldb)
                    .build());
    
            var sqldbUser = new User("sqldbUser", UserArgs.builder()
                .name("my-username")
                .instance(cloudsqldb.name())
                .password("my-password")
                .build(), CustomResourceOptions.builder()
                    .dependsOn(sqlClientCert)
                    .build());
    
            var cloudsqlprofile = new ConnectionProfile("cloudsqlprofile", ConnectionProfileArgs.builder()
                .location("us-central1")
                .connectionProfileId("my-fromprofileid")
                .displayName("my-fromprofileid_display")
                .labels(Map.of("foo", "bar"))
                .mysql(ConnectionProfileMysqlArgs.builder()
                    .host(cloudsqldb.ipAddresses().applyValue(ipAddresses -> ipAddresses[0].ipAddress()))
                    .port(3306)
                    .username(sqldbUser.name())
                    .password(sqldbUser.password())
                    .ssl(ConnectionProfileMysqlSslArgs.builder()
                        .clientKey(sqlClientCert.privateKey())
                        .clientCertificate(sqlClientCert.cert())
                        .caCertificate(sqlClientCert.serverCaCert())
                        .build())
                    .cloudSqlId("my-database")
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(sqldbUser)
                    .build());
    
            var cloudsqlprofileDestination = new ConnectionProfile("cloudsqlprofileDestination", ConnectionProfileArgs.builder()
                .location("us-central1")
                .connectionProfileId("my-toprofileid")
                .displayName("my-toprofileid_displayname")
                .labels(Map.of("foo", "bar"))
                .cloudsql(ConnectionProfileCloudsqlArgs.builder()
                    .settings(ConnectionProfileCloudsqlSettingsArgs.builder()
                        .databaseVersion("MYSQL_5_7")
                        .userLabels(Map.of("cloudfoo", "cloudbar"))
                        .tier("db-n1-standard-1")
                        .edition("ENTERPRISE")
                        .storageAutoResizeLimit("0")
                        .activationPolicy("ALWAYS")
                        .ipConfig(ConnectionProfileCloudsqlSettingsIpConfigArgs.builder()
                            .enableIpv4(true)
                            .requireSsl(true)
                            .build())
                        .autoStorageIncrease(true)
                        .dataDiskType("PD_HDD")
                        .dataDiskSizeGb("11")
                        .zone("us-central1-b")
                        .sourceId(String.format("projects/%s/locations/us-central1/connectionProfiles/my-fromprofileid", project.applyValue(getProjectResult -> getProjectResult.projectId())))
                        .rootPassword("testpasscloudsql")
                        .build())
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(cloudsqlprofile)
                    .build());
    
        }
    }
    
    resources:
      cloudsqldb:
        type: gcp:sql:DatabaseInstance
        properties:
          name: my-database
          databaseVersion: MYSQL_5_7
          settings:
            tier: db-n1-standard-1
            deletionProtectionEnabled: false
          deletionProtection: false
      sqlClientCert:
        type: gcp:sql:SslCert
        name: sql_client_cert
        properties:
          commonName: my-cert
          instance: ${cloudsqldb.name}
        options:
          dependson:
            - ${cloudsqldb}
      sqldbUser:
        type: gcp:sql:User
        name: sqldb_user
        properties:
          name: my-username
          instance: ${cloudsqldb.name}
          password: my-password
        options:
          dependson:
            - ${sqlClientCert}
      cloudsqlprofile:
        type: gcp:databasemigrationservice:ConnectionProfile
        properties:
          location: us-central1
          connectionProfileId: my-fromprofileid
          displayName: my-fromprofileid_display
          labels:
            foo: bar
          mysql:
            host: ${cloudsqldb.ipAddresses[0].ipAddress}
            port: 3306
            username: ${sqldbUser.name}
            password: ${sqldbUser.password}
            ssl:
              clientKey: ${sqlClientCert.privateKey}
              clientCertificate: ${sqlClientCert.cert}
              caCertificate: ${sqlClientCert.serverCaCert}
            cloudSqlId: my-database
        options:
          dependson:
            - ${sqldbUser}
      cloudsqlprofileDestination:
        type: gcp:databasemigrationservice:ConnectionProfile
        name: cloudsqlprofile_destination
        properties:
          location: us-central1
          connectionProfileId: my-toprofileid
          displayName: my-toprofileid_displayname
          labels:
            foo: bar
          cloudsql:
            settings:
              databaseVersion: MYSQL_5_7
              userLabels:
                cloudfoo: cloudbar
              tier: db-n1-standard-1
              edition: ENTERPRISE
              storageAutoResizeLimit: '0'
              activationPolicy: ALWAYS
              ipConfig:
                enableIpv4: true
                requireSsl: true
              autoStorageIncrease: true
              dataDiskType: PD_HDD
              dataDiskSizeGb: '11'
              zone: us-central1-b
              sourceId: projects/${project.projectId}/locations/us-central1/connectionProfiles/my-fromprofileid
              rootPassword: testpasscloudsql
        options:
          dependson:
            - ${cloudsqlprofile}
    variables:
      project:
        fn::invoke:
          Function: gcp:organizations:getProject
          Arguments: {}
    

    Database Migration Service Connection Profile Postgres

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const postgresqldb = new gcp.sql.DatabaseInstance("postgresqldb", {
        name: "my-database",
        databaseVersion: "POSTGRES_12",
        settings: {
            tier: "db-custom-2-13312",
        },
        deletionProtection: false,
    });
    const sqlClientCert = new gcp.sql.SslCert("sql_client_cert", {
        commonName: "my-cert",
        instance: postgresqldb.name,
    }, {
        dependsOn: [postgresqldb],
    });
    const sqldbUser = new gcp.sql.User("sqldb_user", {
        name: "my-username",
        instance: postgresqldb.name,
        password: "my-password",
    }, {
        dependsOn: [sqlClientCert],
    });
    const postgresprofile = new gcp.databasemigrationservice.ConnectionProfile("postgresprofile", {
        location: "us-central1",
        connectionProfileId: "my-profileid",
        displayName: "my-profileid_display",
        labels: {
            foo: "bar",
        },
        postgresql: {
            host: postgresqldb.ipAddresses.apply(ipAddresses => ipAddresses[0].ipAddress),
            port: 5432,
            username: sqldbUser.name,
            password: sqldbUser.password,
            ssl: {
                clientKey: sqlClientCert.privateKey,
                clientCertificate: sqlClientCert.cert,
                caCertificate: sqlClientCert.serverCaCert,
            },
            cloudSqlId: "my-database",
        },
    }, {
        dependsOn: [sqldbUser],
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    postgresqldb = gcp.sql.DatabaseInstance("postgresqldb",
        name="my-database",
        database_version="POSTGRES_12",
        settings={
            "tier": "db-custom-2-13312",
        },
        deletion_protection=False)
    sql_client_cert = gcp.sql.SslCert("sql_client_cert",
        common_name="my-cert",
        instance=postgresqldb.name,
        opts = pulumi.ResourceOptions(depends_on=[postgresqldb]))
    sqldb_user = gcp.sql.User("sqldb_user",
        name="my-username",
        instance=postgresqldb.name,
        password="my-password",
        opts = pulumi.ResourceOptions(depends_on=[sql_client_cert]))
    postgresprofile = gcp.databasemigrationservice.ConnectionProfile("postgresprofile",
        location="us-central1",
        connection_profile_id="my-profileid",
        display_name="my-profileid_display",
        labels={
            "foo": "bar",
        },
        postgresql={
            "host": postgresqldb.ip_addresses[0].ip_address,
            "port": 5432,
            "username": sqldb_user.name,
            "password": sqldb_user.password,
            "ssl": {
                "client_key": sql_client_cert.private_key,
                "client_certificate": sql_client_cert.cert,
                "ca_certificate": sql_client_cert.server_ca_cert,
            },
            "cloud_sql_id": "my-database",
        },
        opts = pulumi.ResourceOptions(depends_on=[sqldb_user]))
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/databasemigrationservice"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/sql"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		postgresqldb, err := sql.NewDatabaseInstance(ctx, "postgresqldb", &sql.DatabaseInstanceArgs{
    			Name:            pulumi.String("my-database"),
    			DatabaseVersion: pulumi.String("POSTGRES_12"),
    			Settings: &sql.DatabaseInstanceSettingsArgs{
    				Tier: pulumi.String("db-custom-2-13312"),
    			},
    			DeletionProtection: pulumi.Bool(false),
    		})
    		if err != nil {
    			return err
    		}
    		sqlClientCert, err := sql.NewSslCert(ctx, "sql_client_cert", &sql.SslCertArgs{
    			CommonName: pulumi.String("my-cert"),
    			Instance:   postgresqldb.Name,
    		}, pulumi.DependsOn([]pulumi.Resource{
    			postgresqldb,
    		}))
    		if err != nil {
    			return err
    		}
    		sqldbUser, err := sql.NewUser(ctx, "sqldb_user", &sql.UserArgs{
    			Name:     pulumi.String("my-username"),
    			Instance: postgresqldb.Name,
    			Password: pulumi.String("my-password"),
    		}, pulumi.DependsOn([]pulumi.Resource{
    			sqlClientCert,
    		}))
    		if err != nil {
    			return err
    		}
    		_, err = databasemigrationservice.NewConnectionProfile(ctx, "postgresprofile", &databasemigrationservice.ConnectionProfileArgs{
    			Location:            pulumi.String("us-central1"),
    			ConnectionProfileId: pulumi.String("my-profileid"),
    			DisplayName:         pulumi.String("my-profileid_display"),
    			Labels: pulumi.StringMap{
    				"foo": pulumi.String("bar"),
    			},
    			Postgresql: &databasemigrationservice.ConnectionProfilePostgresqlArgs{
    				Host: postgresqldb.IpAddresses.ApplyT(func(ipAddresses []sql.DatabaseInstanceIpAddress) (*string, error) {
    					return &ipAddresses[0].IpAddress, nil
    				}).(pulumi.StringPtrOutput),
    				Port:     pulumi.Int(5432),
    				Username: sqldbUser.Name,
    				Password: sqldbUser.Password,
    				Ssl: &databasemigrationservice.ConnectionProfilePostgresqlSslArgs{
    					ClientKey:         sqlClientCert.PrivateKey,
    					ClientCertificate: sqlClientCert.Cert,
    					CaCertificate:     sqlClientCert.ServerCaCert,
    				},
    				CloudSqlId: pulumi.String("my-database"),
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			sqldbUser,
    		}))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var postgresqldb = new Gcp.Sql.DatabaseInstance("postgresqldb", new()
        {
            Name = "my-database",
            DatabaseVersion = "POSTGRES_12",
            Settings = new Gcp.Sql.Inputs.DatabaseInstanceSettingsArgs
            {
                Tier = "db-custom-2-13312",
            },
            DeletionProtection = false,
        });
    
        var sqlClientCert = new Gcp.Sql.SslCert("sql_client_cert", new()
        {
            CommonName = "my-cert",
            Instance = postgresqldb.Name,
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                postgresqldb,
            },
        });
    
        var sqldbUser = new Gcp.Sql.User("sqldb_user", new()
        {
            Name = "my-username",
            Instance = postgresqldb.Name,
            Password = "my-password",
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                sqlClientCert,
            },
        });
    
        var postgresprofile = new Gcp.DatabaseMigrationService.ConnectionProfile("postgresprofile", new()
        {
            Location = "us-central1",
            ConnectionProfileId = "my-profileid",
            DisplayName = "my-profileid_display",
            Labels = 
            {
                { "foo", "bar" },
            },
            Postgresql = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfilePostgresqlArgs
            {
                Host = postgresqldb.IpAddresses.Apply(ipAddresses => ipAddresses[0].IpAddress),
                Port = 5432,
                Username = sqldbUser.Name,
                Password = sqldbUser.Password,
                Ssl = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfilePostgresqlSslArgs
                {
                    ClientKey = sqlClientCert.PrivateKey,
                    ClientCertificate = sqlClientCert.Cert,
                    CaCertificate = sqlClientCert.ServerCaCert,
                },
                CloudSqlId = "my-database",
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                sqldbUser,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.sql.DatabaseInstance;
    import com.pulumi.gcp.sql.DatabaseInstanceArgs;
    import com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsArgs;
    import com.pulumi.gcp.sql.SslCert;
    import com.pulumi.gcp.sql.SslCertArgs;
    import com.pulumi.gcp.sql.User;
    import com.pulumi.gcp.sql.UserArgs;
    import com.pulumi.gcp.databasemigrationservice.ConnectionProfile;
    import com.pulumi.gcp.databasemigrationservice.ConnectionProfileArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfilePostgresqlArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfilePostgresqlSslArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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) {
            var postgresqldb = new DatabaseInstance("postgresqldb", DatabaseInstanceArgs.builder()
                .name("my-database")
                .databaseVersion("POSTGRES_12")
                .settings(DatabaseInstanceSettingsArgs.builder()
                    .tier("db-custom-2-13312")
                    .build())
                .deletionProtection(false)
                .build());
    
            var sqlClientCert = new SslCert("sqlClientCert", SslCertArgs.builder()
                .commonName("my-cert")
                .instance(postgresqldb.name())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(postgresqldb)
                    .build());
    
            var sqldbUser = new User("sqldbUser", UserArgs.builder()
                .name("my-username")
                .instance(postgresqldb.name())
                .password("my-password")
                .build(), CustomResourceOptions.builder()
                    .dependsOn(sqlClientCert)
                    .build());
    
            var postgresprofile = new ConnectionProfile("postgresprofile", ConnectionProfileArgs.builder()
                .location("us-central1")
                .connectionProfileId("my-profileid")
                .displayName("my-profileid_display")
                .labels(Map.of("foo", "bar"))
                .postgresql(ConnectionProfilePostgresqlArgs.builder()
                    .host(postgresqldb.ipAddresses().applyValue(ipAddresses -> ipAddresses[0].ipAddress()))
                    .port(5432)
                    .username(sqldbUser.name())
                    .password(sqldbUser.password())
                    .ssl(ConnectionProfilePostgresqlSslArgs.builder()
                        .clientKey(sqlClientCert.privateKey())
                        .clientCertificate(sqlClientCert.cert())
                        .caCertificate(sqlClientCert.serverCaCert())
                        .build())
                    .cloudSqlId("my-database")
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(sqldbUser)
                    .build());
    
        }
    }
    
    resources:
      postgresqldb:
        type: gcp:sql:DatabaseInstance
        properties:
          name: my-database
          databaseVersion: POSTGRES_12
          settings:
            tier: db-custom-2-13312
          deletionProtection: false
      sqlClientCert:
        type: gcp:sql:SslCert
        name: sql_client_cert
        properties:
          commonName: my-cert
          instance: ${postgresqldb.name}
        options:
          dependson:
            - ${postgresqldb}
      sqldbUser:
        type: gcp:sql:User
        name: sqldb_user
        properties:
          name: my-username
          instance: ${postgresqldb.name}
          password: my-password
        options:
          dependson:
            - ${sqlClientCert}
      postgresprofile:
        type: gcp:databasemigrationservice:ConnectionProfile
        properties:
          location: us-central1
          connectionProfileId: my-profileid
          displayName: my-profileid_display
          labels:
            foo: bar
          postgresql:
            host: ${postgresqldb.ipAddresses[0].ipAddress}
            port: 5432
            username: ${sqldbUser.name}
            password: ${sqldbUser.password}
            ssl:
              clientKey: ${sqlClientCert.privateKey}
              clientCertificate: ${sqlClientCert.cert}
              caCertificate: ${sqlClientCert.serverCaCert}
            cloudSqlId: my-database
        options:
          dependson:
            - ${sqldbUser}
    

    Database Migration Service Connection Profile Oracle

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const oracleprofile = new gcp.databasemigrationservice.ConnectionProfile("oracleprofile", {
        location: "us-central1",
        connectionProfileId: "my-profileid",
        displayName: "my-profileid_display",
        labels: {
            foo: "bar",
        },
        oracle: {
            host: "host",
            port: 1521,
            username: "username",
            password: "password",
            databaseService: "dbprovider",
            staticServiceIpConnectivity: {},
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    oracleprofile = gcp.databasemigrationservice.ConnectionProfile("oracleprofile",
        location="us-central1",
        connection_profile_id="my-profileid",
        display_name="my-profileid_display",
        labels={
            "foo": "bar",
        },
        oracle={
            "host": "host",
            "port": 1521,
            "username": "username",
            "password": "password",
            "database_service": "dbprovider",
            "static_service_ip_connectivity": {},
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/databasemigrationservice"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := databasemigrationservice.NewConnectionProfile(ctx, "oracleprofile", &databasemigrationservice.ConnectionProfileArgs{
    			Location:            pulumi.String("us-central1"),
    			ConnectionProfileId: pulumi.String("my-profileid"),
    			DisplayName:         pulumi.String("my-profileid_display"),
    			Labels: pulumi.StringMap{
    				"foo": pulumi.String("bar"),
    			},
    			Oracle: &databasemigrationservice.ConnectionProfileOracleArgs{
    				Host:                        pulumi.String("host"),
    				Port:                        pulumi.Int(1521),
    				Username:                    pulumi.String("username"),
    				Password:                    pulumi.String("password"),
    				DatabaseService:             pulumi.String("dbprovider"),
    				StaticServiceIpConnectivity: &databasemigrationservice.ConnectionProfileOracleStaticServiceIpConnectivityArgs{},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var oracleprofile = new Gcp.DatabaseMigrationService.ConnectionProfile("oracleprofile", new()
        {
            Location = "us-central1",
            ConnectionProfileId = "my-profileid",
            DisplayName = "my-profileid_display",
            Labels = 
            {
                { "foo", "bar" },
            },
            Oracle = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileOracleArgs
            {
                Host = "host",
                Port = 1521,
                Username = "username",
                Password = "password",
                DatabaseService = "dbprovider",
                StaticServiceIpConnectivity = null,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.databasemigrationservice.ConnectionProfile;
    import com.pulumi.gcp.databasemigrationservice.ConnectionProfileArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfileOracleArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfileOracleStaticServiceIpConnectivityArgs;
    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) {
            var oracleprofile = new ConnectionProfile("oracleprofile", ConnectionProfileArgs.builder()
                .location("us-central1")
                .connectionProfileId("my-profileid")
                .displayName("my-profileid_display")
                .labels(Map.of("foo", "bar"))
                .oracle(ConnectionProfileOracleArgs.builder()
                    .host("host")
                    .port(1521)
                    .username("username")
                    .password("password")
                    .databaseService("dbprovider")
                    .staticServiceIpConnectivity()
                    .build())
                .build());
    
        }
    }
    
    resources:
      oracleprofile:
        type: gcp:databasemigrationservice:ConnectionProfile
        properties:
          location: us-central1
          connectionProfileId: my-profileid
          displayName: my-profileid_display
          labels:
            foo: bar
          oracle:
            host: host
            port: 1521
            username: username
            password: password
            databaseService: dbprovider
            staticServiceIpConnectivity: {}
    

    Database Migration Service Connection Profile Alloydb

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const project = gcp.organizations.getProject({});
    const _default = new gcp.compute.Network("default", {name: "vpc-network"});
    const privateIpAlloc = new gcp.compute.GlobalAddress("private_ip_alloc", {
        name: "private-ip-alloc",
        addressType: "INTERNAL",
        purpose: "VPC_PEERING",
        prefixLength: 16,
        network: _default.id,
    });
    const vpcConnection = new gcp.servicenetworking.Connection("vpc_connection", {
        network: _default.id,
        service: "servicenetworking.googleapis.com",
        reservedPeeringRanges: [privateIpAlloc.name],
    });
    const alloydbprofile = new gcp.databasemigrationservice.ConnectionProfile("alloydbprofile", {
        location: "us-central1",
        connectionProfileId: "my-profileid",
        displayName: "my-profileid_display",
        labels: {
            foo: "bar",
        },
        alloydb: {
            clusterId: "tf-test-dbmsalloycluster_52865",
            settings: {
                initialUser: {
                    user: "alloyuser_85840",
                    password: "alloypass_60302",
                },
                vpcNetwork: _default.id,
                labels: {
                    alloyfoo: "alloybar",
                },
                primaryInstanceSettings: {
                    id: "priminstid",
                    machineConfig: {
                        cpuCount: 2,
                    },
                    databaseFlags: {},
                    labels: {
                        alloysinstfoo: "allowinstbar",
                    },
                },
            },
        },
    }, {
        dependsOn: [vpcConnection],
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    project = gcp.organizations.get_project()
    default = gcp.compute.Network("default", name="vpc-network")
    private_ip_alloc = gcp.compute.GlobalAddress("private_ip_alloc",
        name="private-ip-alloc",
        address_type="INTERNAL",
        purpose="VPC_PEERING",
        prefix_length=16,
        network=default.id)
    vpc_connection = gcp.servicenetworking.Connection("vpc_connection",
        network=default.id,
        service="servicenetworking.googleapis.com",
        reserved_peering_ranges=[private_ip_alloc.name])
    alloydbprofile = gcp.databasemigrationservice.ConnectionProfile("alloydbprofile",
        location="us-central1",
        connection_profile_id="my-profileid",
        display_name="my-profileid_display",
        labels={
            "foo": "bar",
        },
        alloydb={
            "cluster_id": "tf-test-dbmsalloycluster_52865",
            "settings": {
                "initial_user": {
                    "user": "alloyuser_85840",
                    "password": "alloypass_60302",
                },
                "vpc_network": default.id,
                "labels": {
                    "alloyfoo": "alloybar",
                },
                "primary_instance_settings": {
                    "id": "priminstid",
                    "machine_config": {
                        "cpu_count": 2,
                    },
                    "database_flags": {},
                    "labels": {
                        "alloysinstfoo": "allowinstbar",
                    },
                },
            },
        },
        opts = pulumi.ResourceOptions(depends_on=[vpc_connection]))
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/databasemigrationservice"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/servicenetworking"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
    		if err != nil {
    			return err
    		}
    		_, err = compute.NewNetwork(ctx, "default", &compute.NetworkArgs{
    			Name: pulumi.String("vpc-network"),
    		})
    		if err != nil {
    			return err
    		}
    		privateIpAlloc, err := compute.NewGlobalAddress(ctx, "private_ip_alloc", &compute.GlobalAddressArgs{
    			Name:         pulumi.String("private-ip-alloc"),
    			AddressType:  pulumi.String("INTERNAL"),
    			Purpose:      pulumi.String("VPC_PEERING"),
    			PrefixLength: pulumi.Int(16),
    			Network:      _default.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		vpcConnection, err := servicenetworking.NewConnection(ctx, "vpc_connection", &servicenetworking.ConnectionArgs{
    			Network: _default.ID(),
    			Service: pulumi.String("servicenetworking.googleapis.com"),
    			ReservedPeeringRanges: pulumi.StringArray{
    				privateIpAlloc.Name,
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = databasemigrationservice.NewConnectionProfile(ctx, "alloydbprofile", &databasemigrationservice.ConnectionProfileArgs{
    			Location:            pulumi.String("us-central1"),
    			ConnectionProfileId: pulumi.String("my-profileid"),
    			DisplayName:         pulumi.String("my-profileid_display"),
    			Labels: pulumi.StringMap{
    				"foo": pulumi.String("bar"),
    			},
    			Alloydb: &databasemigrationservice.ConnectionProfileAlloydbArgs{
    				ClusterId: pulumi.String("tf-test-dbmsalloycluster_52865"),
    				Settings: &databasemigrationservice.ConnectionProfileAlloydbSettingsArgs{
    					InitialUser: &databasemigrationservice.ConnectionProfileAlloydbSettingsInitialUserArgs{
    						User:     pulumi.String("alloyuser_85840"),
    						Password: pulumi.String("alloypass_60302"),
    					},
    					VpcNetwork: _default.ID(),
    					Labels: pulumi.StringMap{
    						"alloyfoo": pulumi.String("alloybar"),
    					},
    					PrimaryInstanceSettings: &databasemigrationservice.ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsArgs{
    						Id: pulumi.String("priminstid"),
    						MachineConfig: &databasemigrationservice.ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsMachineConfigArgs{
    							CpuCount: pulumi.Int(2),
    						},
    						DatabaseFlags: pulumi.StringMap{},
    						Labels: pulumi.StringMap{
    							"alloysinstfoo": pulumi.String("allowinstbar"),
    						},
    					},
    				},
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			vpcConnection,
    		}))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var project = Gcp.Organizations.GetProject.Invoke();
    
        var @default = new Gcp.Compute.Network("default", new()
        {
            Name = "vpc-network",
        });
    
        var privateIpAlloc = new Gcp.Compute.GlobalAddress("private_ip_alloc", new()
        {
            Name = "private-ip-alloc",
            AddressType = "INTERNAL",
            Purpose = "VPC_PEERING",
            PrefixLength = 16,
            Network = @default.Id,
        });
    
        var vpcConnection = new Gcp.ServiceNetworking.Connection("vpc_connection", new()
        {
            Network = @default.Id,
            Service = "servicenetworking.googleapis.com",
            ReservedPeeringRanges = new[]
            {
                privateIpAlloc.Name,
            },
        });
    
        var alloydbprofile = new Gcp.DatabaseMigrationService.ConnectionProfile("alloydbprofile", new()
        {
            Location = "us-central1",
            ConnectionProfileId = "my-profileid",
            DisplayName = "my-profileid_display",
            Labels = 
            {
                { "foo", "bar" },
            },
            Alloydb = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileAlloydbArgs
            {
                ClusterId = "tf-test-dbmsalloycluster_52865",
                Settings = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileAlloydbSettingsArgs
                {
                    InitialUser = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileAlloydbSettingsInitialUserArgs
                    {
                        User = "alloyuser_85840",
                        Password = "alloypass_60302",
                    },
                    VpcNetwork = @default.Id,
                    Labels = 
                    {
                        { "alloyfoo", "alloybar" },
                    },
                    PrimaryInstanceSettings = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsArgs
                    {
                        Id = "priminstid",
                        MachineConfig = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsMachineConfigArgs
                        {
                            CpuCount = 2,
                        },
                        DatabaseFlags = null,
                        Labels = 
                        {
                            { "alloysinstfoo", "allowinstbar" },
                        },
                    },
                },
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                vpcConnection,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.organizations.OrganizationsFunctions;
    import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
    import com.pulumi.gcp.compute.Network;
    import com.pulumi.gcp.compute.NetworkArgs;
    import com.pulumi.gcp.compute.GlobalAddress;
    import com.pulumi.gcp.compute.GlobalAddressArgs;
    import com.pulumi.gcp.servicenetworking.Connection;
    import com.pulumi.gcp.servicenetworking.ConnectionArgs;
    import com.pulumi.gcp.databasemigrationservice.ConnectionProfile;
    import com.pulumi.gcp.databasemigrationservice.ConnectionProfileArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfileAlloydbArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfileAlloydbSettingsArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfileAlloydbSettingsInitialUserArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsMachineConfigArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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) {
            final var project = OrganizationsFunctions.getProject();
    
            var default_ = new Network("default", NetworkArgs.builder()
                .name("vpc-network")
                .build());
    
            var privateIpAlloc = new GlobalAddress("privateIpAlloc", GlobalAddressArgs.builder()
                .name("private-ip-alloc")
                .addressType("INTERNAL")
                .purpose("VPC_PEERING")
                .prefixLength(16)
                .network(default_.id())
                .build());
    
            var vpcConnection = new Connection("vpcConnection", ConnectionArgs.builder()
                .network(default_.id())
                .service("servicenetworking.googleapis.com")
                .reservedPeeringRanges(privateIpAlloc.name())
                .build());
    
            var alloydbprofile = new ConnectionProfile("alloydbprofile", ConnectionProfileArgs.builder()
                .location("us-central1")
                .connectionProfileId("my-profileid")
                .displayName("my-profileid_display")
                .labels(Map.of("foo", "bar"))
                .alloydb(ConnectionProfileAlloydbArgs.builder()
                    .clusterId("tf-test-dbmsalloycluster_52865")
                    .settings(ConnectionProfileAlloydbSettingsArgs.builder()
                        .initialUser(ConnectionProfileAlloydbSettingsInitialUserArgs.builder()
                            .user("alloyuser_85840")
                            .password("alloypass_60302")
                            .build())
                        .vpcNetwork(default_.id())
                        .labels(Map.of("alloyfoo", "alloybar"))
                        .primaryInstanceSettings(ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsArgs.builder()
                            .id("priminstid")
                            .machineConfig(ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsMachineConfigArgs.builder()
                                .cpuCount(2)
                                .build())
                            .databaseFlags()
                            .labels(Map.of("alloysinstfoo", "allowinstbar"))
                            .build())
                        .build())
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(vpcConnection)
                    .build());
    
        }
    }
    
    resources:
      default:
        type: gcp:compute:Network
        properties:
          name: vpc-network
      privateIpAlloc:
        type: gcp:compute:GlobalAddress
        name: private_ip_alloc
        properties:
          name: private-ip-alloc
          addressType: INTERNAL
          purpose: VPC_PEERING
          prefixLength: 16
          network: ${default.id}
      vpcConnection:
        type: gcp:servicenetworking:Connection
        name: vpc_connection
        properties:
          network: ${default.id}
          service: servicenetworking.googleapis.com
          reservedPeeringRanges:
            - ${privateIpAlloc.name}
      alloydbprofile:
        type: gcp:databasemigrationservice:ConnectionProfile
        properties:
          location: us-central1
          connectionProfileId: my-profileid
          displayName: my-profileid_display
          labels:
            foo: bar
          alloydb:
            clusterId: tf-test-dbmsalloycluster_52865
            settings:
              initialUser:
                user: alloyuser_85840
                password: alloypass_60302
              vpcNetwork: ${default.id}
              labels:
                alloyfoo: alloybar
              primaryInstanceSettings:
                id: priminstid
                machineConfig:
                  cpuCount: 2
                databaseFlags: {}
                labels:
                  alloysinstfoo: allowinstbar
        options:
          dependson:
            - ${vpcConnection}
    variables:
      project:
        fn::invoke:
          Function: gcp:organizations:getProject
          Arguments: {}
    

    Database Migration Service Connection Profile Existing Mysql

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const project = gcp.organizations.getProject({});
    const destinationCsql = new gcp.sql.DatabaseInstance("destination_csql", {
        name: "destination-csql",
        databaseVersion: "MYSQL_5_7",
        settings: {
            tier: "db-n1-standard-1",
            deletionProtectionEnabled: false,
        },
        deletionProtection: false,
    });
    const existing_mysql = new gcp.databasemigrationservice.ConnectionProfile("existing-mysql", {
        location: "us-central1",
        connectionProfileId: "destination-cp",
        displayName: "destination-cp_display",
        labels: {
            foo: "bar",
        },
        mysql: {
            cloudSqlId: "destination-csql",
        },
    }, {
        dependsOn: [destinationCsql],
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    project = gcp.organizations.get_project()
    destination_csql = gcp.sql.DatabaseInstance("destination_csql",
        name="destination-csql",
        database_version="MYSQL_5_7",
        settings={
            "tier": "db-n1-standard-1",
            "deletion_protection_enabled": False,
        },
        deletion_protection=False)
    existing_mysql = gcp.databasemigrationservice.ConnectionProfile("existing-mysql",
        location="us-central1",
        connection_profile_id="destination-cp",
        display_name="destination-cp_display",
        labels={
            "foo": "bar",
        },
        mysql={
            "cloud_sql_id": "destination-csql",
        },
        opts = pulumi.ResourceOptions(depends_on=[destination_csql]))
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/databasemigrationservice"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/sql"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
    		if err != nil {
    			return err
    		}
    		destinationCsql, err := sql.NewDatabaseInstance(ctx, "destination_csql", &sql.DatabaseInstanceArgs{
    			Name:            pulumi.String("destination-csql"),
    			DatabaseVersion: pulumi.String("MYSQL_5_7"),
    			Settings: &sql.DatabaseInstanceSettingsArgs{
    				Tier:                      pulumi.String("db-n1-standard-1"),
    				DeletionProtectionEnabled: pulumi.Bool(false),
    			},
    			DeletionProtection: pulumi.Bool(false),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = databasemigrationservice.NewConnectionProfile(ctx, "existing-mysql", &databasemigrationservice.ConnectionProfileArgs{
    			Location:            pulumi.String("us-central1"),
    			ConnectionProfileId: pulumi.String("destination-cp"),
    			DisplayName:         pulumi.String("destination-cp_display"),
    			Labels: pulumi.StringMap{
    				"foo": pulumi.String("bar"),
    			},
    			Mysql: &databasemigrationservice.ConnectionProfileMysqlArgs{
    				CloudSqlId: pulumi.String("destination-csql"),
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			destinationCsql,
    		}))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var project = Gcp.Organizations.GetProject.Invoke();
    
        var destinationCsql = new Gcp.Sql.DatabaseInstance("destination_csql", new()
        {
            Name = "destination-csql",
            DatabaseVersion = "MYSQL_5_7",
            Settings = new Gcp.Sql.Inputs.DatabaseInstanceSettingsArgs
            {
                Tier = "db-n1-standard-1",
                DeletionProtectionEnabled = false,
            },
            DeletionProtection = false,
        });
    
        var existing_mysql = new Gcp.DatabaseMigrationService.ConnectionProfile("existing-mysql", new()
        {
            Location = "us-central1",
            ConnectionProfileId = "destination-cp",
            DisplayName = "destination-cp_display",
            Labels = 
            {
                { "foo", "bar" },
            },
            Mysql = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileMysqlArgs
            {
                CloudSqlId = "destination-csql",
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                destinationCsql,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.organizations.OrganizationsFunctions;
    import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
    import com.pulumi.gcp.sql.DatabaseInstance;
    import com.pulumi.gcp.sql.DatabaseInstanceArgs;
    import com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsArgs;
    import com.pulumi.gcp.databasemigrationservice.ConnectionProfile;
    import com.pulumi.gcp.databasemigrationservice.ConnectionProfileArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfileMysqlArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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) {
            final var project = OrganizationsFunctions.getProject();
    
            var destinationCsql = new DatabaseInstance("destinationCsql", DatabaseInstanceArgs.builder()
                .name("destination-csql")
                .databaseVersion("MYSQL_5_7")
                .settings(DatabaseInstanceSettingsArgs.builder()
                    .tier("db-n1-standard-1")
                    .deletionProtectionEnabled(false)
                    .build())
                .deletionProtection(false)
                .build());
    
            var existing_mysql = new ConnectionProfile("existing-mysql", ConnectionProfileArgs.builder()
                .location("us-central1")
                .connectionProfileId("destination-cp")
                .displayName("destination-cp_display")
                .labels(Map.of("foo", "bar"))
                .mysql(ConnectionProfileMysqlArgs.builder()
                    .cloudSqlId("destination-csql")
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(destinationCsql)
                    .build());
    
        }
    }
    
    resources:
      destinationCsql:
        type: gcp:sql:DatabaseInstance
        name: destination_csql
        properties:
          name: destination-csql
          databaseVersion: MYSQL_5_7
          settings:
            tier: db-n1-standard-1
            deletionProtectionEnabled: false
          deletionProtection: false
      existing-mysql:
        type: gcp:databasemigrationservice:ConnectionProfile
        properties:
          location: us-central1
          connectionProfileId: destination-cp
          displayName: destination-cp_display
          labels:
            foo: bar
          mysql:
            cloudSqlId: destination-csql
        options:
          dependson:
            - ${destinationCsql}
    variables:
      project:
        fn::invoke:
          Function: gcp:organizations:getProject
          Arguments: {}
    

    Database Migration Service Connection Profile Existing Postgres

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const project = gcp.organizations.getProject({});
    const destinationCsql = new gcp.sql.DatabaseInstance("destination_csql", {
        name: "destination-csql",
        databaseVersion: "POSTGRES_15",
        settings: {
            tier: "db-custom-2-13312",
            deletionProtectionEnabled: false,
        },
        deletionProtection: false,
    });
    const existing_psql = new gcp.databasemigrationservice.ConnectionProfile("existing-psql", {
        location: "us-central1",
        connectionProfileId: "destination-cp",
        displayName: "destination-cp_display",
        labels: {
            foo: "bar",
        },
        postgresql: {
            cloudSqlId: "destination-csql",
        },
    }, {
        dependsOn: [destinationCsql],
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    project = gcp.organizations.get_project()
    destination_csql = gcp.sql.DatabaseInstance("destination_csql",
        name="destination-csql",
        database_version="POSTGRES_15",
        settings={
            "tier": "db-custom-2-13312",
            "deletion_protection_enabled": False,
        },
        deletion_protection=False)
    existing_psql = gcp.databasemigrationservice.ConnectionProfile("existing-psql",
        location="us-central1",
        connection_profile_id="destination-cp",
        display_name="destination-cp_display",
        labels={
            "foo": "bar",
        },
        postgresql={
            "cloud_sql_id": "destination-csql",
        },
        opts = pulumi.ResourceOptions(depends_on=[destination_csql]))
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/databasemigrationservice"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/sql"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
    		if err != nil {
    			return err
    		}
    		destinationCsql, err := sql.NewDatabaseInstance(ctx, "destination_csql", &sql.DatabaseInstanceArgs{
    			Name:            pulumi.String("destination-csql"),
    			DatabaseVersion: pulumi.String("POSTGRES_15"),
    			Settings: &sql.DatabaseInstanceSettingsArgs{
    				Tier:                      pulumi.String("db-custom-2-13312"),
    				DeletionProtectionEnabled: pulumi.Bool(false),
    			},
    			DeletionProtection: pulumi.Bool(false),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = databasemigrationservice.NewConnectionProfile(ctx, "existing-psql", &databasemigrationservice.ConnectionProfileArgs{
    			Location:            pulumi.String("us-central1"),
    			ConnectionProfileId: pulumi.String("destination-cp"),
    			DisplayName:         pulumi.String("destination-cp_display"),
    			Labels: pulumi.StringMap{
    				"foo": pulumi.String("bar"),
    			},
    			Postgresql: &databasemigrationservice.ConnectionProfilePostgresqlArgs{
    				CloudSqlId: pulumi.String("destination-csql"),
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			destinationCsql,
    		}))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var project = Gcp.Organizations.GetProject.Invoke();
    
        var destinationCsql = new Gcp.Sql.DatabaseInstance("destination_csql", new()
        {
            Name = "destination-csql",
            DatabaseVersion = "POSTGRES_15",
            Settings = new Gcp.Sql.Inputs.DatabaseInstanceSettingsArgs
            {
                Tier = "db-custom-2-13312",
                DeletionProtectionEnabled = false,
            },
            DeletionProtection = false,
        });
    
        var existing_psql = new Gcp.DatabaseMigrationService.ConnectionProfile("existing-psql", new()
        {
            Location = "us-central1",
            ConnectionProfileId = "destination-cp",
            DisplayName = "destination-cp_display",
            Labels = 
            {
                { "foo", "bar" },
            },
            Postgresql = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfilePostgresqlArgs
            {
                CloudSqlId = "destination-csql",
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                destinationCsql,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.organizations.OrganizationsFunctions;
    import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
    import com.pulumi.gcp.sql.DatabaseInstance;
    import com.pulumi.gcp.sql.DatabaseInstanceArgs;
    import com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsArgs;
    import com.pulumi.gcp.databasemigrationservice.ConnectionProfile;
    import com.pulumi.gcp.databasemigrationservice.ConnectionProfileArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfilePostgresqlArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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) {
            final var project = OrganizationsFunctions.getProject();
    
            var destinationCsql = new DatabaseInstance("destinationCsql", DatabaseInstanceArgs.builder()
                .name("destination-csql")
                .databaseVersion("POSTGRES_15")
                .settings(DatabaseInstanceSettingsArgs.builder()
                    .tier("db-custom-2-13312")
                    .deletionProtectionEnabled(false)
                    .build())
                .deletionProtection(false)
                .build());
    
            var existing_psql = new ConnectionProfile("existing-psql", ConnectionProfileArgs.builder()
                .location("us-central1")
                .connectionProfileId("destination-cp")
                .displayName("destination-cp_display")
                .labels(Map.of("foo", "bar"))
                .postgresql(ConnectionProfilePostgresqlArgs.builder()
                    .cloudSqlId("destination-csql")
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(destinationCsql)
                    .build());
    
        }
    }
    
    resources:
      destinationCsql:
        type: gcp:sql:DatabaseInstance
        name: destination_csql
        properties:
          name: destination-csql
          databaseVersion: POSTGRES_15
          settings:
            tier: db-custom-2-13312
            deletionProtectionEnabled: false
          deletionProtection: false
      existing-psql:
        type: gcp:databasemigrationservice:ConnectionProfile
        properties:
          location: us-central1
          connectionProfileId: destination-cp
          displayName: destination-cp_display
          labels:
            foo: bar
          postgresql:
            cloudSqlId: destination-csql
        options:
          dependson:
            - ${destinationCsql}
    variables:
      project:
        fn::invoke:
          Function: gcp:organizations:getProject
          Arguments: {}
    

    Database Migration Service Connection Profile Existing Alloydb

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const project = gcp.organizations.getProject({});
    const _default = new gcp.compute.Network("default", {name: "destination-alloydb"});
    const destinationAlloydb = new gcp.alloydb.Cluster("destination_alloydb", {
        clusterId: "destination-alloydb",
        location: "us-central1",
        networkConfig: {
            network: _default.id,
        },
        databaseVersion: "POSTGRES_15",
        initialUser: {
            user: "destination-alloydb",
            password: "destination-alloydb",
        },
    });
    const privateIpAlloc = new gcp.compute.GlobalAddress("private_ip_alloc", {
        name: "destination-alloydb",
        addressType: "INTERNAL",
        purpose: "VPC_PEERING",
        prefixLength: 16,
        network: _default.id,
    });
    const vpcConnection = new gcp.servicenetworking.Connection("vpc_connection", {
        network: _default.id,
        service: "servicenetworking.googleapis.com",
        reservedPeeringRanges: [privateIpAlloc.name],
    });
    const destinationAlloydbPrimary = new gcp.alloydb.Instance("destination_alloydb_primary", {
        cluster: destinationAlloydb.name,
        instanceId: "destination-alloydb-primary",
        instanceType: "PRIMARY",
    }, {
        dependsOn: [vpcConnection],
    });
    const existing_alloydb = new gcp.databasemigrationservice.ConnectionProfile("existing-alloydb", {
        location: "us-central1",
        connectionProfileId: "destination-cp",
        displayName: "destination-cp_display",
        labels: {
            foo: "bar",
        },
        postgresql: {
            alloydbClusterId: "destination-alloydb",
        },
    }, {
        dependsOn: [
            destinationAlloydb,
            destinationAlloydbPrimary,
        ],
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    project = gcp.organizations.get_project()
    default = gcp.compute.Network("default", name="destination-alloydb")
    destination_alloydb = gcp.alloydb.Cluster("destination_alloydb",
        cluster_id="destination-alloydb",
        location="us-central1",
        network_config={
            "network": default.id,
        },
        database_version="POSTGRES_15",
        initial_user={
            "user": "destination-alloydb",
            "password": "destination-alloydb",
        })
    private_ip_alloc = gcp.compute.GlobalAddress("private_ip_alloc",
        name="destination-alloydb",
        address_type="INTERNAL",
        purpose="VPC_PEERING",
        prefix_length=16,
        network=default.id)
    vpc_connection = gcp.servicenetworking.Connection("vpc_connection",
        network=default.id,
        service="servicenetworking.googleapis.com",
        reserved_peering_ranges=[private_ip_alloc.name])
    destination_alloydb_primary = gcp.alloydb.Instance("destination_alloydb_primary",
        cluster=destination_alloydb.name,
        instance_id="destination-alloydb-primary",
        instance_type="PRIMARY",
        opts = pulumi.ResourceOptions(depends_on=[vpc_connection]))
    existing_alloydb = gcp.databasemigrationservice.ConnectionProfile("existing-alloydb",
        location="us-central1",
        connection_profile_id="destination-cp",
        display_name="destination-cp_display",
        labels={
            "foo": "bar",
        },
        postgresql={
            "alloydb_cluster_id": "destination-alloydb",
        },
        opts = pulumi.ResourceOptions(depends_on=[
                destination_alloydb,
                destination_alloydb_primary,
            ]))
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/alloydb"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/databasemigrationservice"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
    	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/servicenetworking"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := organizations.LookupProject(ctx, &organizations.LookupProjectArgs{}, nil)
    		if err != nil {
    			return err
    		}
    		_, err = compute.NewNetwork(ctx, "default", &compute.NetworkArgs{
    			Name: pulumi.String("destination-alloydb"),
    		})
    		if err != nil {
    			return err
    		}
    		destinationAlloydb, err := alloydb.NewCluster(ctx, "destination_alloydb", &alloydb.ClusterArgs{
    			ClusterId: pulumi.String("destination-alloydb"),
    			Location:  pulumi.String("us-central1"),
    			NetworkConfig: &alloydb.ClusterNetworkConfigArgs{
    				Network: _default.ID(),
    			},
    			DatabaseVersion: pulumi.String("POSTGRES_15"),
    			InitialUser: &alloydb.ClusterInitialUserArgs{
    				User:     pulumi.String("destination-alloydb"),
    				Password: pulumi.String("destination-alloydb"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		privateIpAlloc, err := compute.NewGlobalAddress(ctx, "private_ip_alloc", &compute.GlobalAddressArgs{
    			Name:         pulumi.String("destination-alloydb"),
    			AddressType:  pulumi.String("INTERNAL"),
    			Purpose:      pulumi.String("VPC_PEERING"),
    			PrefixLength: pulumi.Int(16),
    			Network:      _default.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		vpcConnection, err := servicenetworking.NewConnection(ctx, "vpc_connection", &servicenetworking.ConnectionArgs{
    			Network: _default.ID(),
    			Service: pulumi.String("servicenetworking.googleapis.com"),
    			ReservedPeeringRanges: pulumi.StringArray{
    				privateIpAlloc.Name,
    			},
    		})
    		if err != nil {
    			return err
    		}
    		destinationAlloydbPrimary, err := alloydb.NewInstance(ctx, "destination_alloydb_primary", &alloydb.InstanceArgs{
    			Cluster:      destinationAlloydb.Name,
    			InstanceId:   pulumi.String("destination-alloydb-primary"),
    			InstanceType: pulumi.String("PRIMARY"),
    		}, pulumi.DependsOn([]pulumi.Resource{
    			vpcConnection,
    		}))
    		if err != nil {
    			return err
    		}
    		_, err = databasemigrationservice.NewConnectionProfile(ctx, "existing-alloydb", &databasemigrationservice.ConnectionProfileArgs{
    			Location:            pulumi.String("us-central1"),
    			ConnectionProfileId: pulumi.String("destination-cp"),
    			DisplayName:         pulumi.String("destination-cp_display"),
    			Labels: pulumi.StringMap{
    				"foo": pulumi.String("bar"),
    			},
    			Postgresql: &databasemigrationservice.ConnectionProfilePostgresqlArgs{
    				AlloydbClusterId: pulumi.String("destination-alloydb"),
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			destinationAlloydb,
    			destinationAlloydbPrimary,
    		}))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        var project = Gcp.Organizations.GetProject.Invoke();
    
        var @default = new Gcp.Compute.Network("default", new()
        {
            Name = "destination-alloydb",
        });
    
        var destinationAlloydb = new Gcp.Alloydb.Cluster("destination_alloydb", new()
        {
            ClusterId = "destination-alloydb",
            Location = "us-central1",
            NetworkConfig = new Gcp.Alloydb.Inputs.ClusterNetworkConfigArgs
            {
                Network = @default.Id,
            },
            DatabaseVersion = "POSTGRES_15",
            InitialUser = new Gcp.Alloydb.Inputs.ClusterInitialUserArgs
            {
                User = "destination-alloydb",
                Password = "destination-alloydb",
            },
        });
    
        var privateIpAlloc = new Gcp.Compute.GlobalAddress("private_ip_alloc", new()
        {
            Name = "destination-alloydb",
            AddressType = "INTERNAL",
            Purpose = "VPC_PEERING",
            PrefixLength = 16,
            Network = @default.Id,
        });
    
        var vpcConnection = new Gcp.ServiceNetworking.Connection("vpc_connection", new()
        {
            Network = @default.Id,
            Service = "servicenetworking.googleapis.com",
            ReservedPeeringRanges = new[]
            {
                privateIpAlloc.Name,
            },
        });
    
        var destinationAlloydbPrimary = new Gcp.Alloydb.Instance("destination_alloydb_primary", new()
        {
            Cluster = destinationAlloydb.Name,
            InstanceId = "destination-alloydb-primary",
            InstanceType = "PRIMARY",
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                vpcConnection,
            },
        });
    
        var existing_alloydb = new Gcp.DatabaseMigrationService.ConnectionProfile("existing-alloydb", new()
        {
            Location = "us-central1",
            ConnectionProfileId = "destination-cp",
            DisplayName = "destination-cp_display",
            Labels = 
            {
                { "foo", "bar" },
            },
            Postgresql = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfilePostgresqlArgs
            {
                AlloydbClusterId = "destination-alloydb",
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                destinationAlloydb,
                destinationAlloydbPrimary,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.organizations.OrganizationsFunctions;
    import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
    import com.pulumi.gcp.compute.Network;
    import com.pulumi.gcp.compute.NetworkArgs;
    import com.pulumi.gcp.alloydb.Cluster;
    import com.pulumi.gcp.alloydb.ClusterArgs;
    import com.pulumi.gcp.alloydb.inputs.ClusterNetworkConfigArgs;
    import com.pulumi.gcp.alloydb.inputs.ClusterInitialUserArgs;
    import com.pulumi.gcp.compute.GlobalAddress;
    import com.pulumi.gcp.compute.GlobalAddressArgs;
    import com.pulumi.gcp.servicenetworking.Connection;
    import com.pulumi.gcp.servicenetworking.ConnectionArgs;
    import com.pulumi.gcp.alloydb.Instance;
    import com.pulumi.gcp.alloydb.InstanceArgs;
    import com.pulumi.gcp.databasemigrationservice.ConnectionProfile;
    import com.pulumi.gcp.databasemigrationservice.ConnectionProfileArgs;
    import com.pulumi.gcp.databasemigrationservice.inputs.ConnectionProfilePostgresqlArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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) {
            final var project = OrganizationsFunctions.getProject();
    
            var default_ = new Network("default", NetworkArgs.builder()
                .name("destination-alloydb")
                .build());
    
            var destinationAlloydb = new Cluster("destinationAlloydb", ClusterArgs.builder()
                .clusterId("destination-alloydb")
                .location("us-central1")
                .networkConfig(ClusterNetworkConfigArgs.builder()
                    .network(default_.id())
                    .build())
                .databaseVersion("POSTGRES_15")
                .initialUser(ClusterInitialUserArgs.builder()
                    .user("destination-alloydb")
                    .password("destination-alloydb")
                    .build())
                .build());
    
            var privateIpAlloc = new GlobalAddress("privateIpAlloc", GlobalAddressArgs.builder()
                .name("destination-alloydb")
                .addressType("INTERNAL")
                .purpose("VPC_PEERING")
                .prefixLength(16)
                .network(default_.id())
                .build());
    
            var vpcConnection = new Connection("vpcConnection", ConnectionArgs.builder()
                .network(default_.id())
                .service("servicenetworking.googleapis.com")
                .reservedPeeringRanges(privateIpAlloc.name())
                .build());
    
            var destinationAlloydbPrimary = new Instance("destinationAlloydbPrimary", InstanceArgs.builder()
                .cluster(destinationAlloydb.name())
                .instanceId("destination-alloydb-primary")
                .instanceType("PRIMARY")
                .build(), CustomResourceOptions.builder()
                    .dependsOn(vpcConnection)
                    .build());
    
            var existing_alloydb = new ConnectionProfile("existing-alloydb", ConnectionProfileArgs.builder()
                .location("us-central1")
                .connectionProfileId("destination-cp")
                .displayName("destination-cp_display")
                .labels(Map.of("foo", "bar"))
                .postgresql(ConnectionProfilePostgresqlArgs.builder()
                    .alloydbClusterId("destination-alloydb")
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(                
                        destinationAlloydb,
                        destinationAlloydbPrimary)
                    .build());
    
        }
    }
    
    resources:
      destinationAlloydb:
        type: gcp:alloydb:Cluster
        name: destination_alloydb
        properties:
          clusterId: destination-alloydb
          location: us-central1
          networkConfig:
            network: ${default.id}
          databaseVersion: POSTGRES_15
          initialUser:
            user: destination-alloydb
            password: destination-alloydb
      destinationAlloydbPrimary:
        type: gcp:alloydb:Instance
        name: destination_alloydb_primary
        properties:
          cluster: ${destinationAlloydb.name}
          instanceId: destination-alloydb-primary
          instanceType: PRIMARY
        options:
          dependson:
            - ${vpcConnection}
      privateIpAlloc:
        type: gcp:compute:GlobalAddress
        name: private_ip_alloc
        properties:
          name: destination-alloydb
          addressType: INTERNAL
          purpose: VPC_PEERING
          prefixLength: 16
          network: ${default.id}
      vpcConnection:
        type: gcp:servicenetworking:Connection
        name: vpc_connection
        properties:
          network: ${default.id}
          service: servicenetworking.googleapis.com
          reservedPeeringRanges:
            - ${privateIpAlloc.name}
      default:
        type: gcp:compute:Network
        properties:
          name: destination-alloydb
      existing-alloydb:
        type: gcp:databasemigrationservice:ConnectionProfile
        properties:
          location: us-central1
          connectionProfileId: destination-cp
          displayName: destination-cp_display
          labels:
            foo: bar
          postgresql:
            alloydbClusterId: destination-alloydb
        options:
          dependson:
            - ${destinationAlloydb}
            - ${destinationAlloydbPrimary}
    variables:
      project:
        fn::invoke:
          Function: gcp:organizations:getProject
          Arguments: {}
    

    Create ConnectionProfile Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new ConnectionProfile(name: string, args: ConnectionProfileArgs, opts?: CustomResourceOptions);
    @overload
    def ConnectionProfile(resource_name: str,
                          args: ConnectionProfileArgs,
                          opts: Optional[ResourceOptions] = None)
    
    @overload
    def ConnectionProfile(resource_name: str,
                          opts: Optional[ResourceOptions] = None,
                          connection_profile_id: Optional[str] = None,
                          alloydb: Optional[ConnectionProfileAlloydbArgs] = None,
                          cloudsql: Optional[ConnectionProfileCloudsqlArgs] = None,
                          display_name: Optional[str] = None,
                          labels: Optional[Mapping[str, str]] = None,
                          location: Optional[str] = None,
                          mysql: Optional[ConnectionProfileMysqlArgs] = None,
                          oracle: Optional[ConnectionProfileOracleArgs] = None,
                          postgresql: Optional[ConnectionProfilePostgresqlArgs] = None,
                          project: Optional[str] = None)
    func NewConnectionProfile(ctx *Context, name string, args ConnectionProfileArgs, opts ...ResourceOption) (*ConnectionProfile, error)
    public ConnectionProfile(string name, ConnectionProfileArgs args, CustomResourceOptions? opts = null)
    public ConnectionProfile(String name, ConnectionProfileArgs args)
    public ConnectionProfile(String name, ConnectionProfileArgs args, CustomResourceOptions options)
    
    type: gcp:databasemigrationservice:ConnectionProfile
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args ConnectionProfileArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ConnectionProfileArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ConnectionProfileArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ConnectionProfileArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ConnectionProfileArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var connectionProfileResource = new Gcp.DatabaseMigrationService.ConnectionProfile("connectionProfileResource", new()
    {
        ConnectionProfileId = "string",
        Alloydb = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileAlloydbArgs
        {
            ClusterId = "string",
            Settings = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileAlloydbSettingsArgs
            {
                InitialUser = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileAlloydbSettingsInitialUserArgs
                {
                    Password = "string",
                    User = "string",
                    PasswordSet = false,
                },
                VpcNetwork = "string",
                Labels = 
                {
                    { "string", "string" },
                },
                PrimaryInstanceSettings = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsArgs
                {
                    Id = "string",
                    MachineConfig = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsMachineConfigArgs
                    {
                        CpuCount = 0,
                    },
                    DatabaseFlags = 
                    {
                        { "string", "string" },
                    },
                    Labels = 
                    {
                        { "string", "string" },
                    },
                    PrivateIp = "string",
                },
            },
        },
        Cloudsql = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileCloudsqlArgs
        {
            CloudSqlId = "string",
            PrivateIp = "string",
            PublicIp = "string",
            Settings = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileCloudsqlSettingsArgs
            {
                SourceId = "string",
                DataDiskSizeGb = "string",
                DatabaseVersion = "string",
                Collation = "string",
                ActivationPolicy = "string",
                IpConfig = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileCloudsqlSettingsIpConfigArgs
                {
                    AuthorizedNetworks = new[]
                    {
                        new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileCloudsqlSettingsIpConfigAuthorizedNetworkArgs
                        {
                            Value = "string",
                            ExpireTime = "string",
                            Label = "string",
                            Ttl = "string",
                        },
                    },
                    EnableIpv4 = false,
                    PrivateNetwork = "string",
                    RequireSsl = false,
                },
                DatabaseFlags = 
                {
                    { "string", "string" },
                },
                CmekKeyName = "string",
                Edition = "string",
                DataDiskType = "string",
                RootPassword = "string",
                RootPasswordSet = false,
                AutoStorageIncrease = false,
                StorageAutoResizeLimit = "string",
                Tier = "string",
                UserLabels = 
                {
                    { "string", "string" },
                },
                Zone = "string",
            },
        },
        DisplayName = "string",
        Labels = 
        {
            { "string", "string" },
        },
        Location = "string",
        Mysql = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileMysqlArgs
        {
            CloudSqlId = "string",
            Host = "string",
            Password = "string",
            PasswordSet = false,
            Port = 0,
            Ssl = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileMysqlSslArgs
            {
                CaCertificate = "string",
                ClientCertificate = "string",
                ClientKey = "string",
                Type = "string",
            },
            Username = "string",
        },
        Oracle = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileOracleArgs
        {
            DatabaseService = "string",
            Host = "string",
            Password = "string",
            Port = 0,
            Username = "string",
            ForwardSshConnectivity = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileOracleForwardSshConnectivityArgs
            {
                Hostname = "string",
                Port = 0,
                Username = "string",
                Password = "string",
                PrivateKey = "string",
            },
            PasswordSet = false,
            PrivateConnectivity = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileOraclePrivateConnectivityArgs
            {
                PrivateConnection = "string",
            },
            Ssl = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfileOracleSslArgs
            {
                CaCertificate = "string",
                ClientCertificate = "string",
                ClientKey = "string",
                Type = "string",
            },
            StaticServiceIpConnectivity = null,
        },
        Postgresql = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfilePostgresqlArgs
        {
            AlloydbClusterId = "string",
            CloudSqlId = "string",
            Host = "string",
            NetworkArchitecture = "string",
            Password = "string",
            PasswordSet = false,
            Port = 0,
            Ssl = new Gcp.DatabaseMigrationService.Inputs.ConnectionProfilePostgresqlSslArgs
            {
                CaCertificate = "string",
                ClientCertificate = "string",
                ClientKey = "string",
                Type = "string",
            },
            Username = "string",
        },
        Project = "string",
    });
    
    example, err := databasemigrationservice.NewConnectionProfile(ctx, "connectionProfileResource", &databasemigrationservice.ConnectionProfileArgs{
    	ConnectionProfileId: pulumi.String("string"),
    	Alloydb: &databasemigrationservice.ConnectionProfileAlloydbArgs{
    		ClusterId: pulumi.String("string"),
    		Settings: &databasemigrationservice.ConnectionProfileAlloydbSettingsArgs{
    			InitialUser: &databasemigrationservice.ConnectionProfileAlloydbSettingsInitialUserArgs{
    				Password:    pulumi.String("string"),
    				User:        pulumi.String("string"),
    				PasswordSet: pulumi.Bool(false),
    			},
    			VpcNetwork: pulumi.String("string"),
    			Labels: pulumi.StringMap{
    				"string": pulumi.String("string"),
    			},
    			PrimaryInstanceSettings: &databasemigrationservice.ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsArgs{
    				Id: pulumi.String("string"),
    				MachineConfig: &databasemigrationservice.ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsMachineConfigArgs{
    					CpuCount: pulumi.Int(0),
    				},
    				DatabaseFlags: pulumi.StringMap{
    					"string": pulumi.String("string"),
    				},
    				Labels: pulumi.StringMap{
    					"string": pulumi.String("string"),
    				},
    				PrivateIp: pulumi.String("string"),
    			},
    		},
    	},
    	Cloudsql: &databasemigrationservice.ConnectionProfileCloudsqlArgs{
    		CloudSqlId: pulumi.String("string"),
    		PrivateIp:  pulumi.String("string"),
    		PublicIp:   pulumi.String("string"),
    		Settings: &databasemigrationservice.ConnectionProfileCloudsqlSettingsArgs{
    			SourceId:         pulumi.String("string"),
    			DataDiskSizeGb:   pulumi.String("string"),
    			DatabaseVersion:  pulumi.String("string"),
    			Collation:        pulumi.String("string"),
    			ActivationPolicy: pulumi.String("string"),
    			IpConfig: &databasemigrationservice.ConnectionProfileCloudsqlSettingsIpConfigArgs{
    				AuthorizedNetworks: databasemigrationservice.ConnectionProfileCloudsqlSettingsIpConfigAuthorizedNetworkArray{
    					&databasemigrationservice.ConnectionProfileCloudsqlSettingsIpConfigAuthorizedNetworkArgs{
    						Value:      pulumi.String("string"),
    						ExpireTime: pulumi.String("string"),
    						Label:      pulumi.String("string"),
    						Ttl:        pulumi.String("string"),
    					},
    				},
    				EnableIpv4:     pulumi.Bool(false),
    				PrivateNetwork: pulumi.String("string"),
    				RequireSsl:     pulumi.Bool(false),
    			},
    			DatabaseFlags: pulumi.StringMap{
    				"string": pulumi.String("string"),
    			},
    			CmekKeyName:            pulumi.String("string"),
    			Edition:                pulumi.String("string"),
    			DataDiskType:           pulumi.String("string"),
    			RootPassword:           pulumi.String("string"),
    			RootPasswordSet:        pulumi.Bool(false),
    			AutoStorageIncrease:    pulumi.Bool(false),
    			StorageAutoResizeLimit: pulumi.String("string"),
    			Tier:                   pulumi.String("string"),
    			UserLabels: pulumi.StringMap{
    				"string": pulumi.String("string"),
    			},
    			Zone: pulumi.String("string"),
    		},
    	},
    	DisplayName: pulumi.String("string"),
    	Labels: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Location: pulumi.String("string"),
    	Mysql: &databasemigrationservice.ConnectionProfileMysqlArgs{
    		CloudSqlId:  pulumi.String("string"),
    		Host:        pulumi.String("string"),
    		Password:    pulumi.String("string"),
    		PasswordSet: pulumi.Bool(false),
    		Port:        pulumi.Int(0),
    		Ssl: &databasemigrationservice.ConnectionProfileMysqlSslArgs{
    			CaCertificate:     pulumi.String("string"),
    			ClientCertificate: pulumi.String("string"),
    			ClientKey:         pulumi.String("string"),
    			Type:              pulumi.String("string"),
    		},
    		Username: pulumi.String("string"),
    	},
    	Oracle: &databasemigrationservice.ConnectionProfileOracleArgs{
    		DatabaseService: pulumi.String("string"),
    		Host:            pulumi.String("string"),
    		Password:        pulumi.String("string"),
    		Port:            pulumi.Int(0),
    		Username:        pulumi.String("string"),
    		ForwardSshConnectivity: &databasemigrationservice.ConnectionProfileOracleForwardSshConnectivityArgs{
    			Hostname:   pulumi.String("string"),
    			Port:       pulumi.Int(0),
    			Username:   pulumi.String("string"),
    			Password:   pulumi.String("string"),
    			PrivateKey: pulumi.String("string"),
    		},
    		PasswordSet: pulumi.Bool(false),
    		PrivateConnectivity: &databasemigrationservice.ConnectionProfileOraclePrivateConnectivityArgs{
    			PrivateConnection: pulumi.String("string"),
    		},
    		Ssl: &databasemigrationservice.ConnectionProfileOracleSslArgs{
    			CaCertificate:     pulumi.String("string"),
    			ClientCertificate: pulumi.String("string"),
    			ClientKey:         pulumi.String("string"),
    			Type:              pulumi.String("string"),
    		},
    		StaticServiceIpConnectivity: &databasemigrationservice.ConnectionProfileOracleStaticServiceIpConnectivityArgs{},
    	},
    	Postgresql: &databasemigrationservice.ConnectionProfilePostgresqlArgs{
    		AlloydbClusterId:    pulumi.String("string"),
    		CloudSqlId:          pulumi.String("string"),
    		Host:                pulumi.String("string"),
    		NetworkArchitecture: pulumi.String("string"),
    		Password:            pulumi.String("string"),
    		PasswordSet:         pulumi.Bool(false),
    		Port:                pulumi.Int(0),
    		Ssl: &databasemigrationservice.ConnectionProfilePostgresqlSslArgs{
    			CaCertificate:     pulumi.String("string"),
    			ClientCertificate: pulumi.String("string"),
    			ClientKey:         pulumi.String("string"),
    			Type:              pulumi.String("string"),
    		},
    		Username: pulumi.String("string"),
    	},
    	Project: pulumi.String("string"),
    })
    
    var connectionProfileResource = new ConnectionProfile("connectionProfileResource", ConnectionProfileArgs.builder()
        .connectionProfileId("string")
        .alloydb(ConnectionProfileAlloydbArgs.builder()
            .clusterId("string")
            .settings(ConnectionProfileAlloydbSettingsArgs.builder()
                .initialUser(ConnectionProfileAlloydbSettingsInitialUserArgs.builder()
                    .password("string")
                    .user("string")
                    .passwordSet(false)
                    .build())
                .vpcNetwork("string")
                .labels(Map.of("string", "string"))
                .primaryInstanceSettings(ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsArgs.builder()
                    .id("string")
                    .machineConfig(ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsMachineConfigArgs.builder()
                        .cpuCount(0)
                        .build())
                    .databaseFlags(Map.of("string", "string"))
                    .labels(Map.of("string", "string"))
                    .privateIp("string")
                    .build())
                .build())
            .build())
        .cloudsql(ConnectionProfileCloudsqlArgs.builder()
            .cloudSqlId("string")
            .privateIp("string")
            .publicIp("string")
            .settings(ConnectionProfileCloudsqlSettingsArgs.builder()
                .sourceId("string")
                .dataDiskSizeGb("string")
                .databaseVersion("string")
                .collation("string")
                .activationPolicy("string")
                .ipConfig(ConnectionProfileCloudsqlSettingsIpConfigArgs.builder()
                    .authorizedNetworks(ConnectionProfileCloudsqlSettingsIpConfigAuthorizedNetworkArgs.builder()
                        .value("string")
                        .expireTime("string")
                        .label("string")
                        .ttl("string")
                        .build())
                    .enableIpv4(false)
                    .privateNetwork("string")
                    .requireSsl(false)
                    .build())
                .databaseFlags(Map.of("string", "string"))
                .cmekKeyName("string")
                .edition("string")
                .dataDiskType("string")
                .rootPassword("string")
                .rootPasswordSet(false)
                .autoStorageIncrease(false)
                .storageAutoResizeLimit("string")
                .tier("string")
                .userLabels(Map.of("string", "string"))
                .zone("string")
                .build())
            .build())
        .displayName("string")
        .labels(Map.of("string", "string"))
        .location("string")
        .mysql(ConnectionProfileMysqlArgs.builder()
            .cloudSqlId("string")
            .host("string")
            .password("string")
            .passwordSet(false)
            .port(0)
            .ssl(ConnectionProfileMysqlSslArgs.builder()
                .caCertificate("string")
                .clientCertificate("string")
                .clientKey("string")
                .type("string")
                .build())
            .username("string")
            .build())
        .oracle(ConnectionProfileOracleArgs.builder()
            .databaseService("string")
            .host("string")
            .password("string")
            .port(0)
            .username("string")
            .forwardSshConnectivity(ConnectionProfileOracleForwardSshConnectivityArgs.builder()
                .hostname("string")
                .port(0)
                .username("string")
                .password("string")
                .privateKey("string")
                .build())
            .passwordSet(false)
            .privateConnectivity(ConnectionProfileOraclePrivateConnectivityArgs.builder()
                .privateConnection("string")
                .build())
            .ssl(ConnectionProfileOracleSslArgs.builder()
                .caCertificate("string")
                .clientCertificate("string")
                .clientKey("string")
                .type("string")
                .build())
            .staticServiceIpConnectivity()
            .build())
        .postgresql(ConnectionProfilePostgresqlArgs.builder()
            .alloydbClusterId("string")
            .cloudSqlId("string")
            .host("string")
            .networkArchitecture("string")
            .password("string")
            .passwordSet(false)
            .port(0)
            .ssl(ConnectionProfilePostgresqlSslArgs.builder()
                .caCertificate("string")
                .clientCertificate("string")
                .clientKey("string")
                .type("string")
                .build())
            .username("string")
            .build())
        .project("string")
        .build());
    
    connection_profile_resource = gcp.databasemigrationservice.ConnectionProfile("connectionProfileResource",
        connection_profile_id="string",
        alloydb={
            "cluster_id": "string",
            "settings": {
                "initial_user": {
                    "password": "string",
                    "user": "string",
                    "password_set": False,
                },
                "vpc_network": "string",
                "labels": {
                    "string": "string",
                },
                "primary_instance_settings": {
                    "id": "string",
                    "machine_config": {
                        "cpu_count": 0,
                    },
                    "database_flags": {
                        "string": "string",
                    },
                    "labels": {
                        "string": "string",
                    },
                    "private_ip": "string",
                },
            },
        },
        cloudsql={
            "cloud_sql_id": "string",
            "private_ip": "string",
            "public_ip": "string",
            "settings": {
                "source_id": "string",
                "data_disk_size_gb": "string",
                "database_version": "string",
                "collation": "string",
                "activation_policy": "string",
                "ip_config": {
                    "authorized_networks": [{
                        "value": "string",
                        "expire_time": "string",
                        "label": "string",
                        "ttl": "string",
                    }],
                    "enable_ipv4": False,
                    "private_network": "string",
                    "require_ssl": False,
                },
                "database_flags": {
                    "string": "string",
                },
                "cmek_key_name": "string",
                "edition": "string",
                "data_disk_type": "string",
                "root_password": "string",
                "root_password_set": False,
                "auto_storage_increase": False,
                "storage_auto_resize_limit": "string",
                "tier": "string",
                "user_labels": {
                    "string": "string",
                },
                "zone": "string",
            },
        },
        display_name="string",
        labels={
            "string": "string",
        },
        location="string",
        mysql={
            "cloud_sql_id": "string",
            "host": "string",
            "password": "string",
            "password_set": False,
            "port": 0,
            "ssl": {
                "ca_certificate": "string",
                "client_certificate": "string",
                "client_key": "string",
                "type": "string",
            },
            "username": "string",
        },
        oracle={
            "database_service": "string",
            "host": "string",
            "password": "string",
            "port": 0,
            "username": "string",
            "forward_ssh_connectivity": {
                "hostname": "string",
                "port": 0,
                "username": "string",
                "password": "string",
                "private_key": "string",
            },
            "password_set": False,
            "private_connectivity": {
                "private_connection": "string",
            },
            "ssl": {
                "ca_certificate": "string",
                "client_certificate": "string",
                "client_key": "string",
                "type": "string",
            },
            "static_service_ip_connectivity": {},
        },
        postgresql={
            "alloydb_cluster_id": "string",
            "cloud_sql_id": "string",
            "host": "string",
            "network_architecture": "string",
            "password": "string",
            "password_set": False,
            "port": 0,
            "ssl": {
                "ca_certificate": "string",
                "client_certificate": "string",
                "client_key": "string",
                "type": "string",
            },
            "username": "string",
        },
        project="string")
    
    const connectionProfileResource = new gcp.databasemigrationservice.ConnectionProfile("connectionProfileResource", {
        connectionProfileId: "string",
        alloydb: {
            clusterId: "string",
            settings: {
                initialUser: {
                    password: "string",
                    user: "string",
                    passwordSet: false,
                },
                vpcNetwork: "string",
                labels: {
                    string: "string",
                },
                primaryInstanceSettings: {
                    id: "string",
                    machineConfig: {
                        cpuCount: 0,
                    },
                    databaseFlags: {
                        string: "string",
                    },
                    labels: {
                        string: "string",
                    },
                    privateIp: "string",
                },
            },
        },
        cloudsql: {
            cloudSqlId: "string",
            privateIp: "string",
            publicIp: "string",
            settings: {
                sourceId: "string",
                dataDiskSizeGb: "string",
                databaseVersion: "string",
                collation: "string",
                activationPolicy: "string",
                ipConfig: {
                    authorizedNetworks: [{
                        value: "string",
                        expireTime: "string",
                        label: "string",
                        ttl: "string",
                    }],
                    enableIpv4: false,
                    privateNetwork: "string",
                    requireSsl: false,
                },
                databaseFlags: {
                    string: "string",
                },
                cmekKeyName: "string",
                edition: "string",
                dataDiskType: "string",
                rootPassword: "string",
                rootPasswordSet: false,
                autoStorageIncrease: false,
                storageAutoResizeLimit: "string",
                tier: "string",
                userLabels: {
                    string: "string",
                },
                zone: "string",
            },
        },
        displayName: "string",
        labels: {
            string: "string",
        },
        location: "string",
        mysql: {
            cloudSqlId: "string",
            host: "string",
            password: "string",
            passwordSet: false,
            port: 0,
            ssl: {
                caCertificate: "string",
                clientCertificate: "string",
                clientKey: "string",
                type: "string",
            },
            username: "string",
        },
        oracle: {
            databaseService: "string",
            host: "string",
            password: "string",
            port: 0,
            username: "string",
            forwardSshConnectivity: {
                hostname: "string",
                port: 0,
                username: "string",
                password: "string",
                privateKey: "string",
            },
            passwordSet: false,
            privateConnectivity: {
                privateConnection: "string",
            },
            ssl: {
                caCertificate: "string",
                clientCertificate: "string",
                clientKey: "string",
                type: "string",
            },
            staticServiceIpConnectivity: {},
        },
        postgresql: {
            alloydbClusterId: "string",
            cloudSqlId: "string",
            host: "string",
            networkArchitecture: "string",
            password: "string",
            passwordSet: false,
            port: 0,
            ssl: {
                caCertificate: "string",
                clientCertificate: "string",
                clientKey: "string",
                type: "string",
            },
            username: "string",
        },
        project: "string",
    });
    
    type: gcp:databasemigrationservice:ConnectionProfile
    properties:
        alloydb:
            clusterId: string
            settings:
                initialUser:
                    password: string
                    passwordSet: false
                    user: string
                labels:
                    string: string
                primaryInstanceSettings:
                    databaseFlags:
                        string: string
                    id: string
                    labels:
                        string: string
                    machineConfig:
                        cpuCount: 0
                    privateIp: string
                vpcNetwork: string
        cloudsql:
            cloudSqlId: string
            privateIp: string
            publicIp: string
            settings:
                activationPolicy: string
                autoStorageIncrease: false
                cmekKeyName: string
                collation: string
                dataDiskSizeGb: string
                dataDiskType: string
                databaseFlags:
                    string: string
                databaseVersion: string
                edition: string
                ipConfig:
                    authorizedNetworks:
                        - expireTime: string
                          label: string
                          ttl: string
                          value: string
                    enableIpv4: false
                    privateNetwork: string
                    requireSsl: false
                rootPassword: string
                rootPasswordSet: false
                sourceId: string
                storageAutoResizeLimit: string
                tier: string
                userLabels:
                    string: string
                zone: string
        connectionProfileId: string
        displayName: string
        labels:
            string: string
        location: string
        mysql:
            cloudSqlId: string
            host: string
            password: string
            passwordSet: false
            port: 0
            ssl:
                caCertificate: string
                clientCertificate: string
                clientKey: string
                type: string
            username: string
        oracle:
            databaseService: string
            forwardSshConnectivity:
                hostname: string
                password: string
                port: 0
                privateKey: string
                username: string
            host: string
            password: string
            passwordSet: false
            port: 0
            privateConnectivity:
                privateConnection: string
            ssl:
                caCertificate: string
                clientCertificate: string
                clientKey: string
                type: string
            staticServiceIpConnectivity: {}
            username: string
        postgresql:
            alloydbClusterId: string
            cloudSqlId: string
            host: string
            networkArchitecture: string
            password: string
            passwordSet: false
            port: 0
            ssl:
                caCertificate: string
                clientCertificate: string
                clientKey: string
                type: string
            username: string
        project: string
    

    ConnectionProfile Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The ConnectionProfile resource accepts the following input properties:

    ConnectionProfileId string
    The ID of the connection profile.


    Alloydb ConnectionProfileAlloydb
    Specifies required connection parameters, and the parameters required to create an AlloyDB destination cluster. Structure is documented below.
    Cloudsql ConnectionProfileCloudsql
    Specifies required connection parameters, and, optionally, the parameters required to create a Cloud SQL destination database instance. Structure is documented below.
    DisplayName string
    The connection profile display name.
    Labels Dictionary<string, string>

    The resource labels for connection profile to use to annotate any related underlying resources such as Compute Engine VMs.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.

    Location string
    The location where the connection profile should reside.
    Mysql ConnectionProfileMysql
    Specifies connection parameters required specifically for MySQL databases. Structure is documented below.
    Oracle ConnectionProfileOracle
    Specifies connection parameters required specifically for Oracle databases. Structure is documented below.
    Postgresql ConnectionProfilePostgresql
    Specifies connection parameters required specifically for PostgreSQL databases. Structure is documented below.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    ConnectionProfileId string
    The ID of the connection profile.


    Alloydb ConnectionProfileAlloydbArgs
    Specifies required connection parameters, and the parameters required to create an AlloyDB destination cluster. Structure is documented below.
    Cloudsql ConnectionProfileCloudsqlArgs
    Specifies required connection parameters, and, optionally, the parameters required to create a Cloud SQL destination database instance. Structure is documented below.
    DisplayName string
    The connection profile display name.
    Labels map[string]string

    The resource labels for connection profile to use to annotate any related underlying resources such as Compute Engine VMs.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.

    Location string
    The location where the connection profile should reside.
    Mysql ConnectionProfileMysqlArgs
    Specifies connection parameters required specifically for MySQL databases. Structure is documented below.
    Oracle ConnectionProfileOracleArgs
    Specifies connection parameters required specifically for Oracle databases. Structure is documented below.
    Postgresql ConnectionProfilePostgresqlArgs
    Specifies connection parameters required specifically for PostgreSQL databases. Structure is documented below.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    connectionProfileId String
    The ID of the connection profile.


    alloydb ConnectionProfileAlloydb
    Specifies required connection parameters, and the parameters required to create an AlloyDB destination cluster. Structure is documented below.
    cloudsql ConnectionProfileCloudsql
    Specifies required connection parameters, and, optionally, the parameters required to create a Cloud SQL destination database instance. Structure is documented below.
    displayName String
    The connection profile display name.
    labels Map<String,String>

    The resource labels for connection profile to use to annotate any related underlying resources such as Compute Engine VMs.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.

    location String
    The location where the connection profile should reside.
    mysql ConnectionProfileMysql
    Specifies connection parameters required specifically for MySQL databases. Structure is documented below.
    oracle ConnectionProfileOracle
    Specifies connection parameters required specifically for Oracle databases. Structure is documented below.
    postgresql ConnectionProfilePostgresql
    Specifies connection parameters required specifically for PostgreSQL databases. Structure is documented below.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    connectionProfileId string
    The ID of the connection profile.


    alloydb ConnectionProfileAlloydb
    Specifies required connection parameters, and the parameters required to create an AlloyDB destination cluster. Structure is documented below.
    cloudsql ConnectionProfileCloudsql
    Specifies required connection parameters, and, optionally, the parameters required to create a Cloud SQL destination database instance. Structure is documented below.
    displayName string
    The connection profile display name.
    labels {[key: string]: string}

    The resource labels for connection profile to use to annotate any related underlying resources such as Compute Engine VMs.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.

    location string
    The location where the connection profile should reside.
    mysql ConnectionProfileMysql
    Specifies connection parameters required specifically for MySQL databases. Structure is documented below.
    oracle ConnectionProfileOracle
    Specifies connection parameters required specifically for Oracle databases. Structure is documented below.
    postgresql ConnectionProfilePostgresql
    Specifies connection parameters required specifically for PostgreSQL databases. Structure is documented below.
    project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    connection_profile_id str
    The ID of the connection profile.


    alloydb ConnectionProfileAlloydbArgs
    Specifies required connection parameters, and the parameters required to create an AlloyDB destination cluster. Structure is documented below.
    cloudsql ConnectionProfileCloudsqlArgs
    Specifies required connection parameters, and, optionally, the parameters required to create a Cloud SQL destination database instance. Structure is documented below.
    display_name str
    The connection profile display name.
    labels Mapping[str, str]

    The resource labels for connection profile to use to annotate any related underlying resources such as Compute Engine VMs.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.

    location str
    The location where the connection profile should reside.
    mysql ConnectionProfileMysqlArgs
    Specifies connection parameters required specifically for MySQL databases. Structure is documented below.
    oracle ConnectionProfileOracleArgs
    Specifies connection parameters required specifically for Oracle databases. Structure is documented below.
    postgresql ConnectionProfilePostgresqlArgs
    Specifies connection parameters required specifically for PostgreSQL databases. Structure is documented below.
    project str
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    connectionProfileId String
    The ID of the connection profile.


    alloydb Property Map
    Specifies required connection parameters, and the parameters required to create an AlloyDB destination cluster. Structure is documented below.
    cloudsql Property Map
    Specifies required connection parameters, and, optionally, the parameters required to create a Cloud SQL destination database instance. Structure is documented below.
    displayName String
    The connection profile display name.
    labels Map<String>

    The resource labels for connection profile to use to annotate any related underlying resources such as Compute Engine VMs.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.

    location String
    The location where the connection profile should reside.
    mysql Property Map
    Specifies connection parameters required specifically for MySQL databases. Structure is documented below.
    oracle Property Map
    Specifies connection parameters required specifically for Oracle databases. Structure is documented below.
    postgresql Property Map
    Specifies connection parameters required specifically for PostgreSQL databases. Structure is documented below.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the ConnectionProfile resource produces the following output properties:

    CreateTime string
    Output only. The timestamp when the resource was created. A timestamp in RFC3339 UTC 'Zulu' format, accurate to nanoseconds. Example: '2014-10-02T15:01:23.045123456Z'.
    Dbprovider string
    The database provider.
    EffectiveLabels Dictionary<string, string>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    Errors List<ConnectionProfileError>
    Output only. The error details in case of state FAILED. Structure is documented below.
    Id string
    The provider-assigned unique ID for this managed resource.
    Name string
    The name of this connection profile resource in the form of projects/{project}/locations/{location}/connectionProfiles/{connectionProfile}.
    PulumiLabels Dictionary<string, string>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    State string
    The current connection profile state.
    CreateTime string
    Output only. The timestamp when the resource was created. A timestamp in RFC3339 UTC 'Zulu' format, accurate to nanoseconds. Example: '2014-10-02T15:01:23.045123456Z'.
    Dbprovider string
    The database provider.
    EffectiveLabels map[string]string
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    Errors []ConnectionProfileError
    Output only. The error details in case of state FAILED. Structure is documented below.
    Id string
    The provider-assigned unique ID for this managed resource.
    Name string
    The name of this connection profile resource in the form of projects/{project}/locations/{location}/connectionProfiles/{connectionProfile}.
    PulumiLabels map[string]string
    The combination of labels configured directly on the resource and default labels configured on the provider.
    State string
    The current connection profile state.
    createTime String
    Output only. The timestamp when the resource was created. A timestamp in RFC3339 UTC 'Zulu' format, accurate to nanoseconds. Example: '2014-10-02T15:01:23.045123456Z'.
    dbprovider String
    The database provider.
    effectiveLabels Map<String,String>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    errors List<ConnectionProfileError>
    Output only. The error details in case of state FAILED. Structure is documented below.
    id String
    The provider-assigned unique ID for this managed resource.
    name String
    The name of this connection profile resource in the form of projects/{project}/locations/{location}/connectionProfiles/{connectionProfile}.
    pulumiLabels Map<String,String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    state String
    The current connection profile state.
    createTime string
    Output only. The timestamp when the resource was created. A timestamp in RFC3339 UTC 'Zulu' format, accurate to nanoseconds. Example: '2014-10-02T15:01:23.045123456Z'.
    dbprovider string
    The database provider.
    effectiveLabels {[key: string]: string}
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    errors ConnectionProfileError[]
    Output only. The error details in case of state FAILED. Structure is documented below.
    id string
    The provider-assigned unique ID for this managed resource.
    name string
    The name of this connection profile resource in the form of projects/{project}/locations/{location}/connectionProfiles/{connectionProfile}.
    pulumiLabels {[key: string]: string}
    The combination of labels configured directly on the resource and default labels configured on the provider.
    state string
    The current connection profile state.
    create_time str
    Output only. The timestamp when the resource was created. A timestamp in RFC3339 UTC 'Zulu' format, accurate to nanoseconds. Example: '2014-10-02T15:01:23.045123456Z'.
    dbprovider str
    The database provider.
    effective_labels Mapping[str, str]
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    errors Sequence[ConnectionProfileError]
    Output only. The error details in case of state FAILED. Structure is documented below.
    id str
    The provider-assigned unique ID for this managed resource.
    name str
    The name of this connection profile resource in the form of projects/{project}/locations/{location}/connectionProfiles/{connectionProfile}.
    pulumi_labels Mapping[str, str]
    The combination of labels configured directly on the resource and default labels configured on the provider.
    state str
    The current connection profile state.
    createTime String
    Output only. The timestamp when the resource was created. A timestamp in RFC3339 UTC 'Zulu' format, accurate to nanoseconds. Example: '2014-10-02T15:01:23.045123456Z'.
    dbprovider String
    The database provider.
    effectiveLabels Map<String>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    errors List<Property Map>
    Output only. The error details in case of state FAILED. Structure is documented below.
    id String
    The provider-assigned unique ID for this managed resource.
    name String
    The name of this connection profile resource in the form of projects/{project}/locations/{location}/connectionProfiles/{connectionProfile}.
    pulumiLabels Map<String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    state String
    The current connection profile state.

    Look up Existing ConnectionProfile Resource

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

    public static get(name: string, id: Input<ID>, state?: ConnectionProfileState, opts?: CustomResourceOptions): ConnectionProfile
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            alloydb: Optional[ConnectionProfileAlloydbArgs] = None,
            cloudsql: Optional[ConnectionProfileCloudsqlArgs] = None,
            connection_profile_id: Optional[str] = None,
            create_time: Optional[str] = None,
            dbprovider: Optional[str] = None,
            display_name: Optional[str] = None,
            effective_labels: Optional[Mapping[str, str]] = None,
            errors: Optional[Sequence[ConnectionProfileErrorArgs]] = None,
            labels: Optional[Mapping[str, str]] = None,
            location: Optional[str] = None,
            mysql: Optional[ConnectionProfileMysqlArgs] = None,
            name: Optional[str] = None,
            oracle: Optional[ConnectionProfileOracleArgs] = None,
            postgresql: Optional[ConnectionProfilePostgresqlArgs] = None,
            project: Optional[str] = None,
            pulumi_labels: Optional[Mapping[str, str]] = None,
            state: Optional[str] = None) -> ConnectionProfile
    func GetConnectionProfile(ctx *Context, name string, id IDInput, state *ConnectionProfileState, opts ...ResourceOption) (*ConnectionProfile, error)
    public static ConnectionProfile Get(string name, Input<string> id, ConnectionProfileState? state, CustomResourceOptions? opts = null)
    public static ConnectionProfile get(String name, Output<String> id, ConnectionProfileState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Alloydb ConnectionProfileAlloydb
    Specifies required connection parameters, and the parameters required to create an AlloyDB destination cluster. Structure is documented below.
    Cloudsql ConnectionProfileCloudsql
    Specifies required connection parameters, and, optionally, the parameters required to create a Cloud SQL destination database instance. Structure is documented below.
    ConnectionProfileId string
    The ID of the connection profile.


    CreateTime string
    Output only. The timestamp when the resource was created. A timestamp in RFC3339 UTC 'Zulu' format, accurate to nanoseconds. Example: '2014-10-02T15:01:23.045123456Z'.
    Dbprovider string
    The database provider.
    DisplayName string
    The connection profile display name.
    EffectiveLabels Dictionary<string, string>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    Errors List<ConnectionProfileError>
    Output only. The error details in case of state FAILED. Structure is documented below.
    Labels Dictionary<string, string>

    The resource labels for connection profile to use to annotate any related underlying resources such as Compute Engine VMs.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.

    Location string
    The location where the connection profile should reside.
    Mysql ConnectionProfileMysql
    Specifies connection parameters required specifically for MySQL databases. Structure is documented below.
    Name string
    The name of this connection profile resource in the form of projects/{project}/locations/{location}/connectionProfiles/{connectionProfile}.
    Oracle ConnectionProfileOracle
    Specifies connection parameters required specifically for Oracle databases. Structure is documented below.
    Postgresql ConnectionProfilePostgresql
    Specifies connection parameters required specifically for PostgreSQL databases. Structure is documented below.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    PulumiLabels Dictionary<string, string>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    State string
    The current connection profile state.
    Alloydb ConnectionProfileAlloydbArgs
    Specifies required connection parameters, and the parameters required to create an AlloyDB destination cluster. Structure is documented below.
    Cloudsql ConnectionProfileCloudsqlArgs
    Specifies required connection parameters, and, optionally, the parameters required to create a Cloud SQL destination database instance. Structure is documented below.
    ConnectionProfileId string
    The ID of the connection profile.


    CreateTime string
    Output only. The timestamp when the resource was created. A timestamp in RFC3339 UTC 'Zulu' format, accurate to nanoseconds. Example: '2014-10-02T15:01:23.045123456Z'.
    Dbprovider string
    The database provider.
    DisplayName string
    The connection profile display name.
    EffectiveLabels map[string]string
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    Errors []ConnectionProfileErrorArgs
    Output only. The error details in case of state FAILED. Structure is documented below.
    Labels map[string]string

    The resource labels for connection profile to use to annotate any related underlying resources such as Compute Engine VMs.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.

    Location string
    The location where the connection profile should reside.
    Mysql ConnectionProfileMysqlArgs
    Specifies connection parameters required specifically for MySQL databases. Structure is documented below.
    Name string
    The name of this connection profile resource in the form of projects/{project}/locations/{location}/connectionProfiles/{connectionProfile}.
    Oracle ConnectionProfileOracleArgs
    Specifies connection parameters required specifically for Oracle databases. Structure is documented below.
    Postgresql ConnectionProfilePostgresqlArgs
    Specifies connection parameters required specifically for PostgreSQL databases. Structure is documented below.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    PulumiLabels map[string]string
    The combination of labels configured directly on the resource and default labels configured on the provider.
    State string
    The current connection profile state.
    alloydb ConnectionProfileAlloydb
    Specifies required connection parameters, and the parameters required to create an AlloyDB destination cluster. Structure is documented below.
    cloudsql ConnectionProfileCloudsql
    Specifies required connection parameters, and, optionally, the parameters required to create a Cloud SQL destination database instance. Structure is documented below.
    connectionProfileId String
    The ID of the connection profile.


    createTime String
    Output only. The timestamp when the resource was created. A timestamp in RFC3339 UTC 'Zulu' format, accurate to nanoseconds. Example: '2014-10-02T15:01:23.045123456Z'.
    dbprovider String
    The database provider.
    displayName String
    The connection profile display name.
    effectiveLabels Map<String,String>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    errors List<ConnectionProfileError>
    Output only. The error details in case of state FAILED. Structure is documented below.
    labels Map<String,String>

    The resource labels for connection profile to use to annotate any related underlying resources such as Compute Engine VMs.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.

    location String
    The location where the connection profile should reside.
    mysql ConnectionProfileMysql
    Specifies connection parameters required specifically for MySQL databases. Structure is documented below.
    name String
    The name of this connection profile resource in the form of projects/{project}/locations/{location}/connectionProfiles/{connectionProfile}.
    oracle ConnectionProfileOracle
    Specifies connection parameters required specifically for Oracle databases. Structure is documented below.
    postgresql ConnectionProfilePostgresql
    Specifies connection parameters required specifically for PostgreSQL databases. Structure is documented below.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    pulumiLabels Map<String,String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    state String
    The current connection profile state.
    alloydb ConnectionProfileAlloydb
    Specifies required connection parameters, and the parameters required to create an AlloyDB destination cluster. Structure is documented below.
    cloudsql ConnectionProfileCloudsql
    Specifies required connection parameters, and, optionally, the parameters required to create a Cloud SQL destination database instance. Structure is documented below.
    connectionProfileId string
    The ID of the connection profile.


    createTime string
    Output only. The timestamp when the resource was created. A timestamp in RFC3339 UTC 'Zulu' format, accurate to nanoseconds. Example: '2014-10-02T15:01:23.045123456Z'.
    dbprovider string
    The database provider.
    displayName string
    The connection profile display name.
    effectiveLabels {[key: string]: string}
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    errors ConnectionProfileError[]
    Output only. The error details in case of state FAILED. Structure is documented below.
    labels {[key: string]: string}

    The resource labels for connection profile to use to annotate any related underlying resources such as Compute Engine VMs.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.

    location string
    The location where the connection profile should reside.
    mysql ConnectionProfileMysql
    Specifies connection parameters required specifically for MySQL databases. Structure is documented below.
    name string
    The name of this connection profile resource in the form of projects/{project}/locations/{location}/connectionProfiles/{connectionProfile}.
    oracle ConnectionProfileOracle
    Specifies connection parameters required specifically for Oracle databases. Structure is documented below.
    postgresql ConnectionProfilePostgresql
    Specifies connection parameters required specifically for PostgreSQL databases. Structure is documented below.
    project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    pulumiLabels {[key: string]: string}
    The combination of labels configured directly on the resource and default labels configured on the provider.
    state string
    The current connection profile state.
    alloydb ConnectionProfileAlloydbArgs
    Specifies required connection parameters, and the parameters required to create an AlloyDB destination cluster. Structure is documented below.
    cloudsql ConnectionProfileCloudsqlArgs
    Specifies required connection parameters, and, optionally, the parameters required to create a Cloud SQL destination database instance. Structure is documented below.
    connection_profile_id str
    The ID of the connection profile.


    create_time str
    Output only. The timestamp when the resource was created. A timestamp in RFC3339 UTC 'Zulu' format, accurate to nanoseconds. Example: '2014-10-02T15:01:23.045123456Z'.
    dbprovider str
    The database provider.
    display_name str
    The connection profile display name.
    effective_labels Mapping[str, str]
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    errors Sequence[ConnectionProfileErrorArgs]
    Output only. The error details in case of state FAILED. Structure is documented below.
    labels Mapping[str, str]

    The resource labels for connection profile to use to annotate any related underlying resources such as Compute Engine VMs.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.

    location str
    The location where the connection profile should reside.
    mysql ConnectionProfileMysqlArgs
    Specifies connection parameters required specifically for MySQL databases. Structure is documented below.
    name str
    The name of this connection profile resource in the form of projects/{project}/locations/{location}/connectionProfiles/{connectionProfile}.
    oracle ConnectionProfileOracleArgs
    Specifies connection parameters required specifically for Oracle databases. Structure is documented below.
    postgresql ConnectionProfilePostgresqlArgs
    Specifies connection parameters required specifically for PostgreSQL databases. Structure is documented below.
    project str
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    pulumi_labels Mapping[str, str]
    The combination of labels configured directly on the resource and default labels configured on the provider.
    state str
    The current connection profile state.
    alloydb Property Map
    Specifies required connection parameters, and the parameters required to create an AlloyDB destination cluster. Structure is documented below.
    cloudsql Property Map
    Specifies required connection parameters, and, optionally, the parameters required to create a Cloud SQL destination database instance. Structure is documented below.
    connectionProfileId String
    The ID of the connection profile.


    createTime String
    Output only. The timestamp when the resource was created. A timestamp in RFC3339 UTC 'Zulu' format, accurate to nanoseconds. Example: '2014-10-02T15:01:23.045123456Z'.
    dbprovider String
    The database provider.
    displayName String
    The connection profile display name.
    effectiveLabels Map<String>
    All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
    errors List<Property Map>
    Output only. The error details in case of state FAILED. Structure is documented below.
    labels Map<String>

    The resource labels for connection profile to use to annotate any related underlying resources such as Compute Engine VMs.

    Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.

    location String
    The location where the connection profile should reside.
    mysql Property Map
    Specifies connection parameters required specifically for MySQL databases. Structure is documented below.
    name String
    The name of this connection profile resource in the form of projects/{project}/locations/{location}/connectionProfiles/{connectionProfile}.
    oracle Property Map
    Specifies connection parameters required specifically for Oracle databases. Structure is documented below.
    postgresql Property Map
    Specifies connection parameters required specifically for PostgreSQL databases. Structure is documented below.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    pulumiLabels Map<String>
    The combination of labels configured directly on the resource and default labels configured on the provider.
    state String
    The current connection profile state.

    Supporting Types

    ConnectionProfileAlloydb, ConnectionProfileAlloydbArgs

    ClusterId string
    Required. The AlloyDB cluster ID that this connection profile is associated with.
    Settings ConnectionProfileAlloydbSettings
    Immutable. Metadata used to create the destination AlloyDB cluster. Structure is documented below.
    ClusterId string
    Required. The AlloyDB cluster ID that this connection profile is associated with.
    Settings ConnectionProfileAlloydbSettings
    Immutable. Metadata used to create the destination AlloyDB cluster. Structure is documented below.
    clusterId String
    Required. The AlloyDB cluster ID that this connection profile is associated with.
    settings ConnectionProfileAlloydbSettings
    Immutable. Metadata used to create the destination AlloyDB cluster. Structure is documented below.
    clusterId string
    Required. The AlloyDB cluster ID that this connection profile is associated with.
    settings ConnectionProfileAlloydbSettings
    Immutable. Metadata used to create the destination AlloyDB cluster. Structure is documented below.
    cluster_id str
    Required. The AlloyDB cluster ID that this connection profile is associated with.
    settings ConnectionProfileAlloydbSettings
    Immutable. Metadata used to create the destination AlloyDB cluster. Structure is documented below.
    clusterId String
    Required. The AlloyDB cluster ID that this connection profile is associated with.
    settings Property Map
    Immutable. Metadata used to create the destination AlloyDB cluster. Structure is documented below.

    ConnectionProfileAlloydbSettings, ConnectionProfileAlloydbSettingsArgs

    InitialUser ConnectionProfileAlloydbSettingsInitialUser
    Required. Input only. Initial user to setup during cluster creation. Structure is documented below.
    VpcNetwork string
    Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: 'projects/{project_number}/global/networks/{network_id}'. This is required to create a cluster.
    Labels Dictionary<string, string>
    Labels for the AlloyDB cluster created by DMS.
    PrimaryInstanceSettings ConnectionProfileAlloydbSettingsPrimaryInstanceSettings
    Settings for the cluster's primary instance Structure is documented below.
    InitialUser ConnectionProfileAlloydbSettingsInitialUser
    Required. Input only. Initial user to setup during cluster creation. Structure is documented below.
    VpcNetwork string
    Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: 'projects/{project_number}/global/networks/{network_id}'. This is required to create a cluster.
    Labels map[string]string
    Labels for the AlloyDB cluster created by DMS.
    PrimaryInstanceSettings ConnectionProfileAlloydbSettingsPrimaryInstanceSettings
    Settings for the cluster's primary instance Structure is documented below.
    initialUser ConnectionProfileAlloydbSettingsInitialUser
    Required. Input only. Initial user to setup during cluster creation. Structure is documented below.
    vpcNetwork String
    Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: 'projects/{project_number}/global/networks/{network_id}'. This is required to create a cluster.
    labels Map<String,String>
    Labels for the AlloyDB cluster created by DMS.
    primaryInstanceSettings ConnectionProfileAlloydbSettingsPrimaryInstanceSettings
    Settings for the cluster's primary instance Structure is documented below.
    initialUser ConnectionProfileAlloydbSettingsInitialUser
    Required. Input only. Initial user to setup during cluster creation. Structure is documented below.
    vpcNetwork string
    Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: 'projects/{project_number}/global/networks/{network_id}'. This is required to create a cluster.
    labels {[key: string]: string}
    Labels for the AlloyDB cluster created by DMS.
    primaryInstanceSettings ConnectionProfileAlloydbSettingsPrimaryInstanceSettings
    Settings for the cluster's primary instance Structure is documented below.
    initial_user ConnectionProfileAlloydbSettingsInitialUser
    Required. Input only. Initial user to setup during cluster creation. Structure is documented below.
    vpc_network str
    Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: 'projects/{project_number}/global/networks/{network_id}'. This is required to create a cluster.
    labels Mapping[str, str]
    Labels for the AlloyDB cluster created by DMS.
    primary_instance_settings ConnectionProfileAlloydbSettingsPrimaryInstanceSettings
    Settings for the cluster's primary instance Structure is documented below.
    initialUser Property Map
    Required. Input only. Initial user to setup during cluster creation. Structure is documented below.
    vpcNetwork String
    Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: 'projects/{project_number}/global/networks/{network_id}'. This is required to create a cluster.
    labels Map<String>
    Labels for the AlloyDB cluster created by DMS.
    primaryInstanceSettings Property Map
    Settings for the cluster's primary instance Structure is documented below.

    ConnectionProfileAlloydbSettingsInitialUser, ConnectionProfileAlloydbSettingsInitialUserArgs

    Password string
    The initial password for the user. Note: This property is sensitive and will not be displayed in the plan.
    User string
    The database username.
    PasswordSet bool
    (Output) Output only. Indicates if the initialUser.password field has been set.
    Password string
    The initial password for the user. Note: This property is sensitive and will not be displayed in the plan.
    User string
    The database username.
    PasswordSet bool
    (Output) Output only. Indicates if the initialUser.password field has been set.
    password String
    The initial password for the user. Note: This property is sensitive and will not be displayed in the plan.
    user String
    The database username.
    passwordSet Boolean
    (Output) Output only. Indicates if the initialUser.password field has been set.
    password string
    The initial password for the user. Note: This property is sensitive and will not be displayed in the plan.
    user string
    The database username.
    passwordSet boolean
    (Output) Output only. Indicates if the initialUser.password field has been set.
    password str
    The initial password for the user. Note: This property is sensitive and will not be displayed in the plan.
    user str
    The database username.
    password_set bool
    (Output) Output only. Indicates if the initialUser.password field has been set.
    password String
    The initial password for the user. Note: This property is sensitive and will not be displayed in the plan.
    user String
    The database username.
    passwordSet Boolean
    (Output) Output only. Indicates if the initialUser.password field has been set.

    ConnectionProfileAlloydbSettingsPrimaryInstanceSettings, ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsArgs

    Id string
    The database username.
    MachineConfig ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsMachineConfig
    Configuration for the machines that host the underlying database engine. Structure is documented below.
    DatabaseFlags Dictionary<string, string>
    Database flags to pass to AlloyDB when DMS is creating the AlloyDB cluster and instances. See the AlloyDB documentation for how these can be used.
    Labels Dictionary<string, string>
    Labels for the AlloyDB primary instance created by DMS.
    PrivateIp string
    (Output) Output only. The private IP address for the Instance. This is the connection endpoint for an end-user application.
    Id string
    The database username.
    MachineConfig ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsMachineConfig
    Configuration for the machines that host the underlying database engine. Structure is documented below.
    DatabaseFlags map[string]string
    Database flags to pass to AlloyDB when DMS is creating the AlloyDB cluster and instances. See the AlloyDB documentation for how these can be used.
    Labels map[string]string
    Labels for the AlloyDB primary instance created by DMS.
    PrivateIp string
    (Output) Output only. The private IP address for the Instance. This is the connection endpoint for an end-user application.
    id String
    The database username.
    machineConfig ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsMachineConfig
    Configuration for the machines that host the underlying database engine. Structure is documented below.
    databaseFlags Map<String,String>
    Database flags to pass to AlloyDB when DMS is creating the AlloyDB cluster and instances. See the AlloyDB documentation for how these can be used.
    labels Map<String,String>
    Labels for the AlloyDB primary instance created by DMS.
    privateIp String
    (Output) Output only. The private IP address for the Instance. This is the connection endpoint for an end-user application.
    id string
    The database username.
    machineConfig ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsMachineConfig
    Configuration for the machines that host the underlying database engine. Structure is documented below.
    databaseFlags {[key: string]: string}
    Database flags to pass to AlloyDB when DMS is creating the AlloyDB cluster and instances. See the AlloyDB documentation for how these can be used.
    labels {[key: string]: string}
    Labels for the AlloyDB primary instance created by DMS.
    privateIp string
    (Output) Output only. The private IP address for the Instance. This is the connection endpoint for an end-user application.
    id str
    The database username.
    machine_config ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsMachineConfig
    Configuration for the machines that host the underlying database engine. Structure is documented below.
    database_flags Mapping[str, str]
    Database flags to pass to AlloyDB when DMS is creating the AlloyDB cluster and instances. See the AlloyDB documentation for how these can be used.
    labels Mapping[str, str]
    Labels for the AlloyDB primary instance created by DMS.
    private_ip str
    (Output) Output only. The private IP address for the Instance. This is the connection endpoint for an end-user application.
    id String
    The database username.
    machineConfig Property Map
    Configuration for the machines that host the underlying database engine. Structure is documented below.
    databaseFlags Map<String>
    Database flags to pass to AlloyDB when DMS is creating the AlloyDB cluster and instances. See the AlloyDB documentation for how these can be used.
    labels Map<String>
    Labels for the AlloyDB primary instance created by DMS.
    privateIp String
    (Output) Output only. The private IP address for the Instance. This is the connection endpoint for an end-user application.

    ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsMachineConfig, ConnectionProfileAlloydbSettingsPrimaryInstanceSettingsMachineConfigArgs

    CpuCount int
    The number of CPU's in the VM instance.
    CpuCount int
    The number of CPU's in the VM instance.
    cpuCount Integer
    The number of CPU's in the VM instance.
    cpuCount number
    The number of CPU's in the VM instance.
    cpu_count int
    The number of CPU's in the VM instance.
    cpuCount Number
    The number of CPU's in the VM instance.

    ConnectionProfileCloudsql, ConnectionProfileCloudsqlArgs

    CloudSqlId string
    (Output) Output only. The Cloud SQL instance ID that this connection profile is associated with.
    PrivateIp string
    (Output) Output only. The Cloud SQL database instance's private IP.
    PublicIp string
    (Output) Output only. The Cloud SQL database instance's public IP.
    Settings ConnectionProfileCloudsqlSettings
    Immutable. Metadata used to create the destination Cloud SQL database. Structure is documented below.
    CloudSqlId string
    (Output) Output only. The Cloud SQL instance ID that this connection profile is associated with.
    PrivateIp string
    (Output) Output only. The Cloud SQL database instance's private IP.
    PublicIp string
    (Output) Output only. The Cloud SQL database instance's public IP.
    Settings ConnectionProfileCloudsqlSettings
    Immutable. Metadata used to create the destination Cloud SQL database. Structure is documented below.
    cloudSqlId String
    (Output) Output only. The Cloud SQL instance ID that this connection profile is associated with.
    privateIp String
    (Output) Output only. The Cloud SQL database instance's private IP.
    publicIp String
    (Output) Output only. The Cloud SQL database instance's public IP.
    settings ConnectionProfileCloudsqlSettings
    Immutable. Metadata used to create the destination Cloud SQL database. Structure is documented below.
    cloudSqlId string
    (Output) Output only. The Cloud SQL instance ID that this connection profile is associated with.
    privateIp string
    (Output) Output only. The Cloud SQL database instance's private IP.
    publicIp string
    (Output) Output only. The Cloud SQL database instance's public IP.
    settings ConnectionProfileCloudsqlSettings
    Immutable. Metadata used to create the destination Cloud SQL database. Structure is documented below.
    cloud_sql_id str
    (Output) Output only. The Cloud SQL instance ID that this connection profile is associated with.
    private_ip str
    (Output) Output only. The Cloud SQL database instance's private IP.
    public_ip str
    (Output) Output only. The Cloud SQL database instance's public IP.
    settings ConnectionProfileCloudsqlSettings
    Immutable. Metadata used to create the destination Cloud SQL database. Structure is documented below.
    cloudSqlId String
    (Output) Output only. The Cloud SQL instance ID that this connection profile is associated with.
    privateIp String
    (Output) Output only. The Cloud SQL database instance's private IP.
    publicIp String
    (Output) Output only. The Cloud SQL database instance's public IP.
    settings Property Map
    Immutable. Metadata used to create the destination Cloud SQL database. Structure is documented below.

    ConnectionProfileCloudsqlSettings, ConnectionProfileCloudsqlSettingsArgs

    SourceId string
    The Database Migration Service source connection profile ID, in the format: projects/my_project_name/locations/us-central1/connectionProfiles/connection_profile_ID
    ActivationPolicy string
    The activation policy specifies when the instance is activated; it is applicable only when the instance state is 'RUNNABLE'. Possible values are: ALWAYS, NEVER.
    AutoStorageIncrease bool
    If you enable this setting, Cloud SQL checks your available storage every 30 seconds. If the available storage falls below a threshold size, Cloud SQL automatically adds additional storage capacity. If the available storage repeatedly falls below the threshold size, Cloud SQL continues to add storage until it reaches the maximum of 30 TB.
    CmekKeyName string
    The KMS key name used for the csql instance.
    Collation string
    The Cloud SQL default instance level collation.
    DataDiskSizeGb string
    The storage capacity available to the database, in GB. The minimum (and default) size is 10GB.
    DataDiskType string
    The type of storage. Possible values are: PD_SSD, PD_HDD.
    DatabaseFlags Dictionary<string, string>
    The database flags passed to the Cloud SQL instance at startup.
    DatabaseVersion string
    The database engine type and version. Currently supported values located at https://cloud.google.com/database-migration/docs/reference/rest/v1/projects.locations.connectionProfiles#sqldatabaseversion
    Edition string
    The edition of the given Cloud SQL instance. Possible values are: ENTERPRISE, ENTERPRISE_PLUS.
    IpConfig ConnectionProfileCloudsqlSettingsIpConfig
    The settings for IP Management. This allows to enable or disable the instance IP and manage which external networks can connect to the instance. The IPv4 address cannot be disabled. Structure is documented below.
    RootPassword string
    Input only. Initial root password. Note: This property is sensitive and will not be displayed in the plan.
    RootPasswordSet bool
    (Output) Output only. Indicates If this connection profile root password is stored.
    StorageAutoResizeLimit string
    The maximum size to which storage capacity can be automatically increased. The default value is 0, which specifies that there is no limit.
    Tier string
    The tier (or machine type) for this instance, for example: db-n1-standard-1 (MySQL instances) or db-custom-1-3840 (PostgreSQL instances). For more information, see https://cloud.google.com/sql/docs/mysql/instance-settings
    UserLabels Dictionary<string, string>
    The resource labels for a Cloud SQL instance to use to annotate any related underlying resources such as Compute Engine VMs.
    Zone string
    The Google Cloud Platform zone where your Cloud SQL datdabse instance is located.
    SourceId string
    The Database Migration Service source connection profile ID, in the format: projects/my_project_name/locations/us-central1/connectionProfiles/connection_profile_ID
    ActivationPolicy string
    The activation policy specifies when the instance is activated; it is applicable only when the instance state is 'RUNNABLE'. Possible values are: ALWAYS, NEVER.
    AutoStorageIncrease bool
    If you enable this setting, Cloud SQL checks your available storage every 30 seconds. If the available storage falls below a threshold size, Cloud SQL automatically adds additional storage capacity. If the available storage repeatedly falls below the threshold size, Cloud SQL continues to add storage until it reaches the maximum of 30 TB.
    CmekKeyName string
    The KMS key name used for the csql instance.
    Collation string
    The Cloud SQL default instance level collation.
    DataDiskSizeGb string
    The storage capacity available to the database, in GB. The minimum (and default) size is 10GB.
    DataDiskType string
    The type of storage. Possible values are: PD_SSD, PD_HDD.
    DatabaseFlags map[string]string
    The database flags passed to the Cloud SQL instance at startup.
    DatabaseVersion string
    The database engine type and version. Currently supported values located at https://cloud.google.com/database-migration/docs/reference/rest/v1/projects.locations.connectionProfiles#sqldatabaseversion
    Edition string
    The edition of the given Cloud SQL instance. Possible values are: ENTERPRISE, ENTERPRISE_PLUS.
    IpConfig ConnectionProfileCloudsqlSettingsIpConfig
    The settings for IP Management. This allows to enable or disable the instance IP and manage which external networks can connect to the instance. The IPv4 address cannot be disabled. Structure is documented below.
    RootPassword string
    Input only. Initial root password. Note: This property is sensitive and will not be displayed in the plan.
    RootPasswordSet bool
    (Output) Output only. Indicates If this connection profile root password is stored.
    StorageAutoResizeLimit string
    The maximum size to which storage capacity can be automatically increased. The default value is 0, which specifies that there is no limit.
    Tier string
    The tier (or machine type) for this instance, for example: db-n1-standard-1 (MySQL instances) or db-custom-1-3840 (PostgreSQL instances). For more information, see https://cloud.google.com/sql/docs/mysql/instance-settings
    UserLabels map[string]string
    The resource labels for a Cloud SQL instance to use to annotate any related underlying resources such as Compute Engine VMs.
    Zone string
    The Google Cloud Platform zone where your Cloud SQL datdabse instance is located.
    sourceId String
    The Database Migration Service source connection profile ID, in the format: projects/my_project_name/locations/us-central1/connectionProfiles/connection_profile_ID
    activationPolicy String
    The activation policy specifies when the instance is activated; it is applicable only when the instance state is 'RUNNABLE'. Possible values are: ALWAYS, NEVER.
    autoStorageIncrease Boolean
    If you enable this setting, Cloud SQL checks your available storage every 30 seconds. If the available storage falls below a threshold size, Cloud SQL automatically adds additional storage capacity. If the available storage repeatedly falls below the threshold size, Cloud SQL continues to add storage until it reaches the maximum of 30 TB.
    cmekKeyName String
    The KMS key name used for the csql instance.
    collation String
    The Cloud SQL default instance level collation.
    dataDiskSizeGb String
    The storage capacity available to the database, in GB. The minimum (and default) size is 10GB.
    dataDiskType String
    The type of storage. Possible values are: PD_SSD, PD_HDD.
    databaseFlags Map<String,String>
    The database flags passed to the Cloud SQL instance at startup.
    databaseVersion String
    The database engine type and version. Currently supported values located at https://cloud.google.com/database-migration/docs/reference/rest/v1/projects.locations.connectionProfiles#sqldatabaseversion
    edition String
    The edition of the given Cloud SQL instance. Possible values are: ENTERPRISE, ENTERPRISE_PLUS.
    ipConfig ConnectionProfileCloudsqlSettingsIpConfig
    The settings for IP Management. This allows to enable or disable the instance IP and manage which external networks can connect to the instance. The IPv4 address cannot be disabled. Structure is documented below.
    rootPassword String
    Input only. Initial root password. Note: This property is sensitive and will not be displayed in the plan.
    rootPasswordSet Boolean
    (Output) Output only. Indicates If this connection profile root password is stored.
    storageAutoResizeLimit String
    The maximum size to which storage capacity can be automatically increased. The default value is 0, which specifies that there is no limit.
    tier String
    The tier (or machine type) for this instance, for example: db-n1-standard-1 (MySQL instances) or db-custom-1-3840 (PostgreSQL instances). For more information, see https://cloud.google.com/sql/docs/mysql/instance-settings
    userLabels Map<String,String>
    The resource labels for a Cloud SQL instance to use to annotate any related underlying resources such as Compute Engine VMs.
    zone String
    The Google Cloud Platform zone where your Cloud SQL datdabse instance is located.
    sourceId string
    The Database Migration Service source connection profile ID, in the format: projects/my_project_name/locations/us-central1/connectionProfiles/connection_profile_ID
    activationPolicy string
    The activation policy specifies when the instance is activated; it is applicable only when the instance state is 'RUNNABLE'. Possible values are: ALWAYS, NEVER.
    autoStorageIncrease boolean
    If you enable this setting, Cloud SQL checks your available storage every 30 seconds. If the available storage falls below a threshold size, Cloud SQL automatically adds additional storage capacity. If the available storage repeatedly falls below the threshold size, Cloud SQL continues to add storage until it reaches the maximum of 30 TB.
    cmekKeyName string
    The KMS key name used for the csql instance.
    collation string
    The Cloud SQL default instance level collation.
    dataDiskSizeGb string
    The storage capacity available to the database, in GB. The minimum (and default) size is 10GB.
    dataDiskType string
    The type of storage. Possible values are: PD_SSD, PD_HDD.
    databaseFlags {[key: string]: string}
    The database flags passed to the Cloud SQL instance at startup.
    databaseVersion string
    The database engine type and version. Currently supported values located at https://cloud.google.com/database-migration/docs/reference/rest/v1/projects.locations.connectionProfiles#sqldatabaseversion
    edition string
    The edition of the given Cloud SQL instance. Possible values are: ENTERPRISE, ENTERPRISE_PLUS.
    ipConfig ConnectionProfileCloudsqlSettingsIpConfig
    The settings for IP Management. This allows to enable or disable the instance IP and manage which external networks can connect to the instance. The IPv4 address cannot be disabled. Structure is documented below.
    rootPassword string
    Input only. Initial root password. Note: This property is sensitive and will not be displayed in the plan.
    rootPasswordSet boolean
    (Output) Output only. Indicates If this connection profile root password is stored.
    storageAutoResizeLimit string
    The maximum size to which storage capacity can be automatically increased. The default value is 0, which specifies that there is no limit.
    tier string
    The tier (or machine type) for this instance, for example: db-n1-standard-1 (MySQL instances) or db-custom-1-3840 (PostgreSQL instances). For more information, see https://cloud.google.com/sql/docs/mysql/instance-settings
    userLabels {[key: string]: string}
    The resource labels for a Cloud SQL instance to use to annotate any related underlying resources such as Compute Engine VMs.
    zone string
    The Google Cloud Platform zone where your Cloud SQL datdabse instance is located.
    source_id str
    The Database Migration Service source connection profile ID, in the format: projects/my_project_name/locations/us-central1/connectionProfiles/connection_profile_ID
    activation_policy str
    The activation policy specifies when the instance is activated; it is applicable only when the instance state is 'RUNNABLE'. Possible values are: ALWAYS, NEVER.
    auto_storage_increase bool
    If you enable this setting, Cloud SQL checks your available storage every 30 seconds. If the available storage falls below a threshold size, Cloud SQL automatically adds additional storage capacity. If the available storage repeatedly falls below the threshold size, Cloud SQL continues to add storage until it reaches the maximum of 30 TB.
    cmek_key_name str
    The KMS key name used for the csql instance.
    collation str
    The Cloud SQL default instance level collation.
    data_disk_size_gb str
    The storage capacity available to the database, in GB. The minimum (and default) size is 10GB.
    data_disk_type str
    The type of storage. Possible values are: PD_SSD, PD_HDD.
    database_flags Mapping[str, str]
    The database flags passed to the Cloud SQL instance at startup.
    database_version str
    The database engine type and version. Currently supported values located at https://cloud.google.com/database-migration/docs/reference/rest/v1/projects.locations.connectionProfiles#sqldatabaseversion
    edition str
    The edition of the given Cloud SQL instance. Possible values are: ENTERPRISE, ENTERPRISE_PLUS.
    ip_config ConnectionProfileCloudsqlSettingsIpConfig
    The settings for IP Management. This allows to enable or disable the instance IP and manage which external networks can connect to the instance. The IPv4 address cannot be disabled. Structure is documented below.
    root_password str
    Input only. Initial root password. Note: This property is sensitive and will not be displayed in the plan.
    root_password_set bool
    (Output) Output only. Indicates If this connection profile root password is stored.
    storage_auto_resize_limit str
    The maximum size to which storage capacity can be automatically increased. The default value is 0, which specifies that there is no limit.
    tier str
    The tier (or machine type) for this instance, for example: db-n1-standard-1 (MySQL instances) or db-custom-1-3840 (PostgreSQL instances). For more information, see https://cloud.google.com/sql/docs/mysql/instance-settings
    user_labels Mapping[str, str]
    The resource labels for a Cloud SQL instance to use to annotate any related underlying resources such as Compute Engine VMs.
    zone str
    The Google Cloud Platform zone where your Cloud SQL datdabse instance is located.
    sourceId String
    The Database Migration Service source connection profile ID, in the format: projects/my_project_name/locations/us-central1/connectionProfiles/connection_profile_ID
    activationPolicy String
    The activation policy specifies when the instance is activated; it is applicable only when the instance state is 'RUNNABLE'. Possible values are: ALWAYS, NEVER.
    autoStorageIncrease Boolean
    If you enable this setting, Cloud SQL checks your available storage every 30 seconds. If the available storage falls below a threshold size, Cloud SQL automatically adds additional storage capacity. If the available storage repeatedly falls below the threshold size, Cloud SQL continues to add storage until it reaches the maximum of 30 TB.
    cmekKeyName String
    The KMS key name used for the csql instance.
    collation String
    The Cloud SQL default instance level collation.
    dataDiskSizeGb String
    The storage capacity available to the database, in GB. The minimum (and default) size is 10GB.
    dataDiskType String
    The type of storage. Possible values are: PD_SSD, PD_HDD.
    databaseFlags Map<String>
    The database flags passed to the Cloud SQL instance at startup.
    databaseVersion String
    The database engine type and version. Currently supported values located at https://cloud.google.com/database-migration/docs/reference/rest/v1/projects.locations.connectionProfiles#sqldatabaseversion
    edition String
    The edition of the given Cloud SQL instance. Possible values are: ENTERPRISE, ENTERPRISE_PLUS.
    ipConfig Property Map
    The settings for IP Management. This allows to enable or disable the instance IP and manage which external networks can connect to the instance. The IPv4 address cannot be disabled. Structure is documented below.
    rootPassword String
    Input only. Initial root password. Note: This property is sensitive and will not be displayed in the plan.
    rootPasswordSet Boolean
    (Output) Output only. Indicates If this connection profile root password is stored.
    storageAutoResizeLimit String
    The maximum size to which storage capacity can be automatically increased. The default value is 0, which specifies that there is no limit.
    tier String
    The tier (or machine type) for this instance, for example: db-n1-standard-1 (MySQL instances) or db-custom-1-3840 (PostgreSQL instances). For more information, see https://cloud.google.com/sql/docs/mysql/instance-settings
    userLabels Map<String>
    The resource labels for a Cloud SQL instance to use to annotate any related underlying resources such as Compute Engine VMs.
    zone String
    The Google Cloud Platform zone where your Cloud SQL datdabse instance is located.

    ConnectionProfileCloudsqlSettingsIpConfig, ConnectionProfileCloudsqlSettingsIpConfigArgs

    AuthorizedNetworks List<ConnectionProfileCloudsqlSettingsIpConfigAuthorizedNetwork>
    The list of external networks that are allowed to connect to the instance using the IP. Structure is documented below.
    EnableIpv4 bool
    Whether the instance should be assigned an IPv4 address or not.
    PrivateNetwork string
    The resource link for the VPC network from which the Cloud SQL instance is accessible for private IP. For example, projects/myProject/global/networks/default. This setting can be updated, but it cannot be removed after it is set.
    RequireSsl bool
    Whether SSL connections over IP should be enforced or not.
    AuthorizedNetworks []ConnectionProfileCloudsqlSettingsIpConfigAuthorizedNetwork
    The list of external networks that are allowed to connect to the instance using the IP. Structure is documented below.
    EnableIpv4 bool
    Whether the instance should be assigned an IPv4 address or not.
    PrivateNetwork string
    The resource link for the VPC network from which the Cloud SQL instance is accessible for private IP. For example, projects/myProject/global/networks/default. This setting can be updated, but it cannot be removed after it is set.
    RequireSsl bool
    Whether SSL connections over IP should be enforced or not.
    authorizedNetworks List<ConnectionProfileCloudsqlSettingsIpConfigAuthorizedNetwork>
    The list of external networks that are allowed to connect to the instance using the IP. Structure is documented below.
    enableIpv4 Boolean
    Whether the instance should be assigned an IPv4 address or not.
    privateNetwork String
    The resource link for the VPC network from which the Cloud SQL instance is accessible for private IP. For example, projects/myProject/global/networks/default. This setting can be updated, but it cannot be removed after it is set.
    requireSsl Boolean
    Whether SSL connections over IP should be enforced or not.
    authorizedNetworks ConnectionProfileCloudsqlSettingsIpConfigAuthorizedNetwork[]
    The list of external networks that are allowed to connect to the instance using the IP. Structure is documented below.
    enableIpv4 boolean
    Whether the instance should be assigned an IPv4 address or not.
    privateNetwork string
    The resource link for the VPC network from which the Cloud SQL instance is accessible for private IP. For example, projects/myProject/global/networks/default. This setting can be updated, but it cannot be removed after it is set.
    requireSsl boolean
    Whether SSL connections over IP should be enforced or not.
    authorized_networks Sequence[ConnectionProfileCloudsqlSettingsIpConfigAuthorizedNetwork]
    The list of external networks that are allowed to connect to the instance using the IP. Structure is documented below.
    enable_ipv4 bool
    Whether the instance should be assigned an IPv4 address or not.
    private_network str
    The resource link for the VPC network from which the Cloud SQL instance is accessible for private IP. For example, projects/myProject/global/networks/default. This setting can be updated, but it cannot be removed after it is set.
    require_ssl bool
    Whether SSL connections over IP should be enforced or not.
    authorizedNetworks List<Property Map>
    The list of external networks that are allowed to connect to the instance using the IP. Structure is documented below.
    enableIpv4 Boolean
    Whether the instance should be assigned an IPv4 address or not.
    privateNetwork String
    The resource link for the VPC network from which the Cloud SQL instance is accessible for private IP. For example, projects/myProject/global/networks/default. This setting can be updated, but it cannot be removed after it is set.
    requireSsl Boolean
    Whether SSL connections over IP should be enforced or not.

    ConnectionProfileCloudsqlSettingsIpConfigAuthorizedNetwork, ConnectionProfileCloudsqlSettingsIpConfigAuthorizedNetworkArgs

    Value string
    The allowlisted value for the access control list.
    ExpireTime string
    The time when this access control entry expires in RFC 3339 format.
    Label string
    A label to identify this entry.
    Ttl string
    Input only. The time-to-leave of this access control entry.
    Value string
    The allowlisted value for the access control list.
    ExpireTime string
    The time when this access control entry expires in RFC 3339 format.
    Label string
    A label to identify this entry.
    Ttl string
    Input only. The time-to-leave of this access control entry.
    value String
    The allowlisted value for the access control list.
    expireTime String
    The time when this access control entry expires in RFC 3339 format.
    label String
    A label to identify this entry.
    ttl String
    Input only. The time-to-leave of this access control entry.
    value string
    The allowlisted value for the access control list.
    expireTime string
    The time when this access control entry expires in RFC 3339 format.
    label string
    A label to identify this entry.
    ttl string
    Input only. The time-to-leave of this access control entry.
    value str
    The allowlisted value for the access control list.
    expire_time str
    The time when this access control entry expires in RFC 3339 format.
    label str
    A label to identify this entry.
    ttl str
    Input only. The time-to-leave of this access control entry.
    value String
    The allowlisted value for the access control list.
    expireTime String
    The time when this access control entry expires in RFC 3339 format.
    label String
    A label to identify this entry.
    ttl String
    Input only. The time-to-leave of this access control entry.

    ConnectionProfileError, ConnectionProfileErrorArgs

    Code int
    (Output) The status code, which should be an enum value of google.rpc.Code.
    Details List<ImmutableDictionary<string, string>>
    (Output) A list of messages that carry the error details.
    Message string
    (Output) Human readable message indicating details about the current status.
    Code int
    (Output) The status code, which should be an enum value of google.rpc.Code.
    Details []map[string]string
    (Output) A list of messages that carry the error details.
    Message string
    (Output) Human readable message indicating details about the current status.
    code Integer
    (Output) The status code, which should be an enum value of google.rpc.Code.
    details List<Map<String,String>>
    (Output) A list of messages that carry the error details.
    message String
    (Output) Human readable message indicating details about the current status.
    code number
    (Output) The status code, which should be an enum value of google.rpc.Code.
    details {[key: string]: string}[]
    (Output) A list of messages that carry the error details.
    message string
    (Output) Human readable message indicating details about the current status.
    code int
    (Output) The status code, which should be an enum value of google.rpc.Code.
    details Sequence[Mapping[str, str]]
    (Output) A list of messages that carry the error details.
    message str
    (Output) Human readable message indicating details about the current status.
    code Number
    (Output) The status code, which should be an enum value of google.rpc.Code.
    details List<Map<String>>
    (Output) A list of messages that carry the error details.
    message String
    (Output) Human readable message indicating details about the current status.

    ConnectionProfileMysql, ConnectionProfileMysqlArgs

    CloudSqlId string
    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.
    Host string
    The IP or hostname of the source MySQL database.
    Password string
    Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    PasswordSet bool
    (Output) Output only. Indicates If this connection profile password is stored.
    Port int
    The network port of the source MySQL database.
    Ssl ConnectionProfileMysqlSsl
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    Username string
    The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.
    CloudSqlId string
    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.
    Host string
    The IP or hostname of the source MySQL database.
    Password string
    Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    PasswordSet bool
    (Output) Output only. Indicates If this connection profile password is stored.
    Port int
    The network port of the source MySQL database.
    Ssl ConnectionProfileMysqlSsl
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    Username string
    The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.
    cloudSqlId String
    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.
    host String
    The IP or hostname of the source MySQL database.
    password String
    Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    passwordSet Boolean
    (Output) Output only. Indicates If this connection profile password is stored.
    port Integer
    The network port of the source MySQL database.
    ssl ConnectionProfileMysqlSsl
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    username String
    The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.
    cloudSqlId string
    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.
    host string
    The IP or hostname of the source MySQL database.
    password string
    Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    passwordSet boolean
    (Output) Output only. Indicates If this connection profile password is stored.
    port number
    The network port of the source MySQL database.
    ssl ConnectionProfileMysqlSsl
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    username string
    The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.
    cloud_sql_id str
    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.
    host str
    The IP or hostname of the source MySQL database.
    password str
    Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    password_set bool
    (Output) Output only. Indicates If this connection profile password is stored.
    port int
    The network port of the source MySQL database.
    ssl ConnectionProfileMysqlSsl
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    username str
    The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.
    cloudSqlId String
    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.
    host String
    The IP or hostname of the source MySQL database.
    password String
    Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    passwordSet Boolean
    (Output) Output only. Indicates If this connection profile password is stored.
    port Number
    The network port of the source MySQL database.
    ssl Property Map
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    username String
    The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.

    ConnectionProfileMysqlSsl, ConnectionProfileMysqlSslArgs

    CaCertificate string
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    ClientCertificate string
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    ClientKey string
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    Type string
    (Output) The current connection profile state.
    CaCertificate string
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    ClientCertificate string
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    ClientKey string
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    Type string
    (Output) The current connection profile state.
    caCertificate String
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    clientCertificate String
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    clientKey String
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    type String
    (Output) The current connection profile state.
    caCertificate string
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    clientCertificate string
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    clientKey string
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    type string
    (Output) The current connection profile state.
    ca_certificate str
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    client_certificate str
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    client_key str
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    type str
    (Output) The current connection profile state.
    caCertificate String
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    clientCertificate String
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    clientKey String
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    type String
    (Output) The current connection profile state.

    ConnectionProfileOracle, ConnectionProfileOracleArgs

    DatabaseService string
    Required. Database service for the Oracle connection.
    Host string
    Required. The IP or hostname of the source Oracle database.
    Password string
    Required. Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    Port int
    Required. The network port of the source Oracle database.
    Username string
    Required. The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.
    ForwardSshConnectivity ConnectionProfileOracleForwardSshConnectivity
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    PasswordSet bool
    (Output) Output only. Indicates If this connection profile password is stored.
    PrivateConnectivity ConnectionProfileOraclePrivateConnectivity
    Configuration for using a private network to communicate with the source database Structure is documented below.
    Ssl ConnectionProfileOracleSsl
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    StaticServiceIpConnectivity ConnectionProfileOracleStaticServiceIpConnectivity
    This object has no nested fields. Static IP address connectivity configured on service project.
    DatabaseService string
    Required. Database service for the Oracle connection.
    Host string
    Required. The IP or hostname of the source Oracle database.
    Password string
    Required. Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    Port int
    Required. The network port of the source Oracle database.
    Username string
    Required. The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.
    ForwardSshConnectivity ConnectionProfileOracleForwardSshConnectivity
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    PasswordSet bool
    (Output) Output only. Indicates If this connection profile password is stored.
    PrivateConnectivity ConnectionProfileOraclePrivateConnectivity
    Configuration for using a private network to communicate with the source database Structure is documented below.
    Ssl ConnectionProfileOracleSsl
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    StaticServiceIpConnectivity ConnectionProfileOracleStaticServiceIpConnectivity
    This object has no nested fields. Static IP address connectivity configured on service project.
    databaseService String
    Required. Database service for the Oracle connection.
    host String
    Required. The IP or hostname of the source Oracle database.
    password String
    Required. Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    port Integer
    Required. The network port of the source Oracle database.
    username String
    Required. The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.
    forwardSshConnectivity ConnectionProfileOracleForwardSshConnectivity
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    passwordSet Boolean
    (Output) Output only. Indicates If this connection profile password is stored.
    privateConnectivity ConnectionProfileOraclePrivateConnectivity
    Configuration for using a private network to communicate with the source database Structure is documented below.
    ssl ConnectionProfileOracleSsl
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    staticServiceIpConnectivity ConnectionProfileOracleStaticServiceIpConnectivity
    This object has no nested fields. Static IP address connectivity configured on service project.
    databaseService string
    Required. Database service for the Oracle connection.
    host string
    Required. The IP or hostname of the source Oracle database.
    password string
    Required. Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    port number
    Required. The network port of the source Oracle database.
    username string
    Required. The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.
    forwardSshConnectivity ConnectionProfileOracleForwardSshConnectivity
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    passwordSet boolean
    (Output) Output only. Indicates If this connection profile password is stored.
    privateConnectivity ConnectionProfileOraclePrivateConnectivity
    Configuration for using a private network to communicate with the source database Structure is documented below.
    ssl ConnectionProfileOracleSsl
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    staticServiceIpConnectivity ConnectionProfileOracleStaticServiceIpConnectivity
    This object has no nested fields. Static IP address connectivity configured on service project.
    database_service str
    Required. Database service for the Oracle connection.
    host str
    Required. The IP or hostname of the source Oracle database.
    password str
    Required. Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    port int
    Required. The network port of the source Oracle database.
    username str
    Required. The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.
    forward_ssh_connectivity ConnectionProfileOracleForwardSshConnectivity
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    password_set bool
    (Output) Output only. Indicates If this connection profile password is stored.
    private_connectivity ConnectionProfileOraclePrivateConnectivity
    Configuration for using a private network to communicate with the source database Structure is documented below.
    ssl ConnectionProfileOracleSsl
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    static_service_ip_connectivity ConnectionProfileOracleStaticServiceIpConnectivity
    This object has no nested fields. Static IP address connectivity configured on service project.
    databaseService String
    Required. Database service for the Oracle connection.
    host String
    Required. The IP or hostname of the source Oracle database.
    password String
    Required. Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    port Number
    Required. The network port of the source Oracle database.
    username String
    Required. The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.
    forwardSshConnectivity Property Map
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    passwordSet Boolean
    (Output) Output only. Indicates If this connection profile password is stored.
    privateConnectivity Property Map
    Configuration for using a private network to communicate with the source database Structure is documented below.
    ssl Property Map
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    staticServiceIpConnectivity Property Map
    This object has no nested fields. Static IP address connectivity configured on service project.

    ConnectionProfileOracleForwardSshConnectivity, ConnectionProfileOracleForwardSshConnectivityArgs

    Hostname string
    Required. Hostname for the SSH tunnel.
    Port int
    Port for the SSH tunnel, default value is 22.
    Username string
    Required. Username for the SSH tunnel.
    Password string
    Input only. SSH password. Only one of password and private_key can be configured. Note: This property is sensitive and will not be displayed in the plan.
    PrivateKey string
    Input only. SSH private key. Only one of password and private_key can be configured. Note: This property is sensitive and will not be displayed in the plan.
    Hostname string
    Required. Hostname for the SSH tunnel.
    Port int
    Port for the SSH tunnel, default value is 22.
    Username string
    Required. Username for the SSH tunnel.
    Password string
    Input only. SSH password. Only one of password and private_key can be configured. Note: This property is sensitive and will not be displayed in the plan.
    PrivateKey string
    Input only. SSH private key. Only one of password and private_key can be configured. Note: This property is sensitive and will not be displayed in the plan.
    hostname String
    Required. Hostname for the SSH tunnel.
    port Integer
    Port for the SSH tunnel, default value is 22.
    username String
    Required. Username for the SSH tunnel.
    password String
    Input only. SSH password. Only one of password and private_key can be configured. Note: This property is sensitive and will not be displayed in the plan.
    privateKey String
    Input only. SSH private key. Only one of password and private_key can be configured. Note: This property is sensitive and will not be displayed in the plan.
    hostname string
    Required. Hostname for the SSH tunnel.
    port number
    Port for the SSH tunnel, default value is 22.
    username string
    Required. Username for the SSH tunnel.
    password string
    Input only. SSH password. Only one of password and private_key can be configured. Note: This property is sensitive and will not be displayed in the plan.
    privateKey string
    Input only. SSH private key. Only one of password and private_key can be configured. Note: This property is sensitive and will not be displayed in the plan.
    hostname str
    Required. Hostname for the SSH tunnel.
    port int
    Port for the SSH tunnel, default value is 22.
    username str
    Required. Username for the SSH tunnel.
    password str
    Input only. SSH password. Only one of password and private_key can be configured. Note: This property is sensitive and will not be displayed in the plan.
    private_key str
    Input only. SSH private key. Only one of password and private_key can be configured. Note: This property is sensitive and will not be displayed in the plan.
    hostname String
    Required. Hostname for the SSH tunnel.
    port Number
    Port for the SSH tunnel, default value is 22.
    username String
    Required. Username for the SSH tunnel.
    password String
    Input only. SSH password. Only one of password and private_key can be configured. Note: This property is sensitive and will not be displayed in the plan.
    privateKey String
    Input only. SSH private key. Only one of password and private_key can be configured. Note: This property is sensitive and will not be displayed in the plan.

    ConnectionProfileOraclePrivateConnectivity, ConnectionProfileOraclePrivateConnectivityArgs

    PrivateConnection string
    Required. The resource name (URI) of the private connection.
    PrivateConnection string
    Required. The resource name (URI) of the private connection.
    privateConnection String
    Required. The resource name (URI) of the private connection.
    privateConnection string
    Required. The resource name (URI) of the private connection.
    private_connection str
    Required. The resource name (URI) of the private connection.
    privateConnection String
    Required. The resource name (URI) of the private connection.

    ConnectionProfileOracleSsl, ConnectionProfileOracleSslArgs

    CaCertificate string
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    ClientCertificate string
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    ClientKey string
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    Type string
    (Output) The current connection profile state.
    CaCertificate string
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    ClientCertificate string
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    ClientKey string
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    Type string
    (Output) The current connection profile state.
    caCertificate String
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    clientCertificate String
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    clientKey String
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    type String
    (Output) The current connection profile state.
    caCertificate string
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    clientCertificate string
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    clientKey string
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    type string
    (Output) The current connection profile state.
    ca_certificate str
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    client_certificate str
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    client_key str
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    type str
    (Output) The current connection profile state.
    caCertificate String
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    clientCertificate String
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    clientKey String
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    type String
    (Output) The current connection profile state.

    ConnectionProfilePostgresql, ConnectionProfilePostgresqlArgs

    AlloydbClusterId string
    If the connected database is an AlloyDB instance, use this field to provide the AlloyDB cluster ID.
    CloudSqlId string
    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.
    Host string
    The IP or hostname of the source MySQL database.
    NetworkArchitecture string
    (Output) Output only. If the source is a Cloud SQL database, this field indicates the network architecture it's associated with.
    Password string
    Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    PasswordSet bool
    (Output) Output only. Indicates If this connection profile password is stored.
    Port int
    The network port of the source MySQL database.
    Ssl ConnectionProfilePostgresqlSsl
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    Username string
    The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.
    AlloydbClusterId string
    If the connected database is an AlloyDB instance, use this field to provide the AlloyDB cluster ID.
    CloudSqlId string
    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.
    Host string
    The IP or hostname of the source MySQL database.
    NetworkArchitecture string
    (Output) Output only. If the source is a Cloud SQL database, this field indicates the network architecture it's associated with.
    Password string
    Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    PasswordSet bool
    (Output) Output only. Indicates If this connection profile password is stored.
    Port int
    The network port of the source MySQL database.
    Ssl ConnectionProfilePostgresqlSsl
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    Username string
    The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.
    alloydbClusterId String
    If the connected database is an AlloyDB instance, use this field to provide the AlloyDB cluster ID.
    cloudSqlId String
    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.
    host String
    The IP or hostname of the source MySQL database.
    networkArchitecture String
    (Output) Output only. If the source is a Cloud SQL database, this field indicates the network architecture it's associated with.
    password String
    Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    passwordSet Boolean
    (Output) Output only. Indicates If this connection profile password is stored.
    port Integer
    The network port of the source MySQL database.
    ssl ConnectionProfilePostgresqlSsl
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    username String
    The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.
    alloydbClusterId string
    If the connected database is an AlloyDB instance, use this field to provide the AlloyDB cluster ID.
    cloudSqlId string
    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.
    host string
    The IP or hostname of the source MySQL database.
    networkArchitecture string
    (Output) Output only. If the source is a Cloud SQL database, this field indicates the network architecture it's associated with.
    password string
    Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    passwordSet boolean
    (Output) Output only. Indicates If this connection profile password is stored.
    port number
    The network port of the source MySQL database.
    ssl ConnectionProfilePostgresqlSsl
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    username string
    The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.
    alloydb_cluster_id str
    If the connected database is an AlloyDB instance, use this field to provide the AlloyDB cluster ID.
    cloud_sql_id str
    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.
    host str
    The IP or hostname of the source MySQL database.
    network_architecture str
    (Output) Output only. If the source is a Cloud SQL database, this field indicates the network architecture it's associated with.
    password str
    Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    password_set bool
    (Output) Output only. Indicates If this connection profile password is stored.
    port int
    The network port of the source MySQL database.
    ssl ConnectionProfilePostgresqlSsl
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    username str
    The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.
    alloydbClusterId String
    If the connected database is an AlloyDB instance, use this field to provide the AlloyDB cluster ID.
    cloudSqlId String
    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.
    host String
    The IP or hostname of the source MySQL database.
    networkArchitecture String
    (Output) Output only. If the source is a Cloud SQL database, this field indicates the network architecture it's associated with.
    password String
    Input only. The password for the user that Database Migration Service will be using to connect to the database. This field is not returned on request, and the value is encrypted when stored in Database Migration Service. Note: This property is sensitive and will not be displayed in the plan.
    passwordSet Boolean
    (Output) Output only. Indicates If this connection profile password is stored.
    port Number
    The network port of the source MySQL database.
    ssl Property Map
    SSL configuration for the destination to connect to the source database. Structure is documented below.
    username String
    The username that Database Migration Service will use to connect to the database. The value is encrypted when stored in Database Migration Service.

    ConnectionProfilePostgresqlSsl, ConnectionProfilePostgresqlSslArgs

    CaCertificate string
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    ClientCertificate string
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    ClientKey string
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    Type string
    (Output) The current connection profile state.
    CaCertificate string
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    ClientCertificate string
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    ClientKey string
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    Type string
    (Output) The current connection profile state.
    caCertificate String
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    clientCertificate String
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    clientKey String
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    type String
    (Output) The current connection profile state.
    caCertificate string
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    clientCertificate string
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    clientKey string
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    type string
    (Output) The current connection profile state.
    ca_certificate str
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    client_certificate str
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    client_key str
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    type str
    (Output) The current connection profile state.
    caCertificate String
    Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate. The replica will use this certificate to verify it's connecting to the right host. Note: This property is sensitive and will not be displayed in the plan.
    clientCertificate String
    Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server. If this field is used then the 'clientKey' field is mandatory Note: This property is sensitive and will not be displayed in the plan.
    clientKey String
    Input only. The unencrypted PKCS#1 or PKCS#8 PEM-encoded private key associated with the Client Certificate. If this field is used then the 'clientCertificate' field is mandatory. Note: This property is sensitive and will not be displayed in the plan.
    type String
    (Output) The current connection profile state.

    Import

    ConnectionProfile can be imported using any of these accepted formats:

    • projects/{{project}}/locations/{{location}}/connectionProfiles/{{connection_profile_id}}

    • {{project}}/{{location}}/{{connection_profile_id}}

    • {{location}}/{{connection_profile_id}}

    When using the pulumi import command, ConnectionProfile can be imported using one of the formats above. For example:

    $ pulumi import gcp:databasemigrationservice/connectionProfile:ConnectionProfile default projects/{{project}}/locations/{{location}}/connectionProfiles/{{connection_profile_id}}
    
    $ pulumi import gcp:databasemigrationservice/connectionProfile:ConnectionProfile default {{project}}/{{location}}/{{connection_profile_id}}
    
    $ pulumi import gcp:databasemigrationservice/connectionProfile:ConnectionProfile default {{location}}/{{connection_profile_id}}
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Google Cloud (GCP) Classic pulumi/pulumi-gcp
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the google-beta Terraform Provider.
    gcp logo
    Google Cloud Classic v8.9.3 published on Monday, Nov 18, 2024 by Pulumi