1. Packages
  2. Google Cloud (GCP) Classic
  3. API Docs
  4. databasemigrationservice
  5. ConnectionProfile
Google Cloud Classic v6.67.0 published on Wednesday, Sep 27, 2023 by Pulumi

gcp.databasemigrationservice.ConnectionProfile

Explore with Pulumi AI

gcp logo
Google Cloud Classic v6.67.0 published on Wednesday, Sep 27, 2023 by Pulumi

    A connection profile definition.

    To get more information about ConnectionProfile, see:

    Warning: All arguments including the following potentially sensitive values will be stored in the raw state as plain text: mysql.password, mysql.ssl.client_key, mysql.ssl.client_certificate, mysql.ssl.ca_certificate, postgresql.password, postgresql.ssl.client_key, postgresql.ssl.client_certificate, postgresql.ssl.ca_certificate, cloudsql.settings.root_password, alloydb.settings.initial_user.password. Read more about sensitive data in state.

    Example Usage

    Database Migration Service Connection Profile Cloudsql

    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()
        {
            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("sqlClientCert", new()
        {
            CommonName = "my-cert",
            Instance = cloudsqldb.Name,
        }, new CustomResourceOptions
        {
            DependsOn = new[]
            {
                cloudsqldb,
            },
        });
    
        var sqldbUser = new Gcp.Sql.User("sqldbUser", new()
        {
            Instance = cloudsqldb.Name,
            Password = "my-password",
        }, new CustomResourceOptions
        {
            DependsOn = new[]
            {
                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 = new[]
            {
                sqldbUser,
            },
        });
    
        var cloudsqlprofileDestination = new Gcp.DatabaseMigrationService.ConnectionProfile("cloudsqlprofileDestination", 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 = new[]
            {
                cloudsqlprofile,
            },
        });
    
    });
    
    package main
    
    import (
    	"fmt"
    
    	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/databasemigrationservice"
    	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
    	"github.com/pulumi/pulumi-gcp/sdk/v6/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, nil, nil)
    		if err != nil {
    			return err
    		}
    		cloudsqldb, err := sql.NewDatabaseInstance(ctx, "cloudsqldb", &sql.DatabaseInstanceArgs{
    			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, "sqlClientCert", &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, "sqldbUser", &sql.UserArgs{
    			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, "cloudsqlprofileDestination", &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.String(fmt.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
    	})
    }
    
    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()        
                .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()        
                .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());
    
        }
    }
    
    import pulumi
    import pulumi_gcp as gcp
    
    project = gcp.organizations.get_project()
    cloudsqldb = gcp.sql.DatabaseInstance("cloudsqldb",
        database_version="MYSQL_5_7",
        settings=gcp.sql.DatabaseInstanceSettingsArgs(
            tier="db-n1-standard-1",
            deletion_protection_enabled=False,
        ),
        deletion_protection=False)
    sql_client_cert = gcp.sql.SslCert("sqlClientCert",
        common_name="my-cert",
        instance=cloudsqldb.name,
        opts=pulumi.ResourceOptions(depends_on=[cloudsqldb]))
    sqldb_user = gcp.sql.User("sqldbUser",
        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=gcp.databasemigrationservice.ConnectionProfileMysqlArgs(
            host=cloudsqldb.ip_addresses[0].ip_address,
            port=3306,
            username=sqldb_user.name,
            password=sqldb_user.password,
            ssl=gcp.databasemigrationservice.ConnectionProfileMysqlSslArgs(
                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("cloudsqlprofileDestination",
        location="us-central1",
        connection_profile_id="my-toprofileid",
        display_name="my-toprofileid_displayname",
        labels={
            "foo": "bar",
        },
        cloudsql=gcp.databasemigrationservice.ConnectionProfileCloudsqlArgs(
            settings=gcp.databasemigrationservice.ConnectionProfileCloudsqlSettingsArgs(
                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=gcp.databasemigrationservice.ConnectionProfileCloudsqlSettingsIpConfigArgs(
                    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]))
    
    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const project = gcp.organizations.getProject({});
    const cloudsqldb = new gcp.sql.DatabaseInstance("cloudsqldb", {
        databaseVersion: "MYSQL_5_7",
        settings: {
            tier: "db-n1-standard-1",
            deletionProtectionEnabled: false,
        },
        deletionProtection: false,
    });
    const sqlClientCert = new gcp.sql.SslCert("sqlClientCert", {
        commonName: "my-cert",
        instance: cloudsqldb.name,
    }, {
        dependsOn: [cloudsqldb],
    });
    const sqldbUser = new gcp.sql.User("sqldbUser", {
        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("cloudsqlprofileDestination", {
        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],
    });
    
    resources:
      cloudsqldb:
        type: gcp:sql:DatabaseInstance
        properties:
          databaseVersion: MYSQL_5_7
          settings:
            tier: db-n1-standard-1
            deletionProtectionEnabled: false
          deletionProtection: false
      sqlClientCert:
        type: gcp:sql:SslCert
        properties:
          commonName: my-cert
          instance: ${cloudsqldb.name}
        options:
          dependson:
            - ${cloudsqldb}
      sqldbUser:
        type: gcp:sql:User
        properties:
          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
        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

    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()
        {
            DatabaseVersion = "POSTGRES_12",
            Settings = new Gcp.Sql.Inputs.DatabaseInstanceSettingsArgs
            {
                Tier = "db-custom-2-13312",
            },
            DeletionProtection = false,
        });
    
        var sqlClientCert = new Gcp.Sql.SslCert("sqlClientCert", new()
        {
            CommonName = "my-cert",
            Instance = postgresqldb.Name,
        }, new CustomResourceOptions
        {
            DependsOn = new[]
            {
                postgresqldb,
            },
        });
    
        var sqldbUser = new Gcp.Sql.User("sqldbUser", new()
        {
            Instance = postgresqldb.Name,
            Password = "my-password",
        }, new CustomResourceOptions
        {
            DependsOn = new[]
            {
                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 = new[]
            {
                sqldbUser,
            },
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/databasemigrationservice"
    	"github.com/pulumi/pulumi-gcp/sdk/v6/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{
    			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, "sqlClientCert", &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, "sqldbUser", &sql.UserArgs{
    			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
    	})
    }
    
    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()        
                .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()        
                .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());
    
        }
    }
    
    import pulumi
    import pulumi_gcp as gcp
    
    postgresqldb = gcp.sql.DatabaseInstance("postgresqldb",
        database_version="POSTGRES_12",
        settings=gcp.sql.DatabaseInstanceSettingsArgs(
            tier="db-custom-2-13312",
        ),
        deletion_protection=False)
    sql_client_cert = gcp.sql.SslCert("sqlClientCert",
        common_name="my-cert",
        instance=postgresqldb.name,
        opts=pulumi.ResourceOptions(depends_on=[postgresqldb]))
    sqldb_user = gcp.sql.User("sqldbUser",
        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=gcp.databasemigrationservice.ConnectionProfilePostgresqlArgs(
            host=postgresqldb.ip_addresses[0].ip_address,
            port=5432,
            username=sqldb_user.name,
            password=sqldb_user.password,
            ssl=gcp.databasemigrationservice.ConnectionProfilePostgresqlSslArgs(
                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]))
    
    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    const postgresqldb = new gcp.sql.DatabaseInstance("postgresqldb", {
        databaseVersion: "POSTGRES_12",
        settings: {
            tier: "db-custom-2-13312",
        },
        deletionProtection: false,
    });
    const sqlClientCert = new gcp.sql.SslCert("sqlClientCert", {
        commonName: "my-cert",
        instance: postgresqldb.name,
    }, {
        dependsOn: [postgresqldb],
    });
    const sqldbUser = new gcp.sql.User("sqldbUser", {
        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],
    });
    
    resources:
      postgresqldb:
        type: gcp:sql:DatabaseInstance
        properties:
          databaseVersion: POSTGRES_12
          settings:
            tier: db-custom-2-13312
          deletionProtection: false
      sqlClientCert:
        type: gcp:sql:SslCert
        properties:
          commonName: my-cert
          instance: ${postgresqldb.name}
        options:
          dependson:
            - ${postgresqldb}
      sqldbUser:
        type: gcp:sql:User
        properties:
          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}
    

    Create ConnectionProfile Resource

    new ConnectionProfile(name: string, args: ConnectionProfileArgs, opts?: CustomResourceOptions);
    @overload
    def ConnectionProfile(resource_name: str,
                          opts: Optional[ResourceOptions] = None,
                          alloydb: Optional[ConnectionProfileAlloydbArgs] = None,
                          cloudsql: Optional[ConnectionProfileCloudsqlArgs] = None,
                          connection_profile_id: Optional[str] = None,
                          display_name: Optional[str] = None,
                          labels: Optional[Mapping[str, str]] = None,
                          location: Optional[str] = None,
                          mysql: Optional[ConnectionProfileMysqlArgs] = None,
                          postgresql: Optional[ConnectionProfilePostgresqlArgs] = None,
                          project: Optional[str] = None)
    @overload
    def ConnectionProfile(resource_name: str,
                          args: ConnectionProfileArgs,
                          opts: Optional[ResourceOptions] = 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.
    
    
    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.

    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

    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.

    Location string

    The location where the connection profile should reside.

    Mysql ConnectionProfileMysql

    Specifies connection parameters required specifically for MySQL 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.

    Location string

    The location where the connection profile should reside.

    Mysql ConnectionProfileMysqlArgs

    Specifies connection parameters required specifically for MySQL 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.

    location String

    The location where the connection profile should reside.

    mysql ConnectionProfileMysql

    Specifies connection parameters required specifically for MySQL 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.

    location string

    The location where the connection profile should reside.

    mysql ConnectionProfileMysql

    Specifies connection parameters required specifically for MySQL 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.

    location str

    The location where the connection profile should reside.

    mysql ConnectionProfileMysqlArgs

    Specifies connection parameters required specifically for MySQL 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.

    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.

    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.

    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}.

    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.

    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}.

    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.

    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}.

    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.

    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}.

    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.

    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}.

    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.

    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}.

    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,
            errors: Optional[Sequence[ConnectionProfileErrorArgs]] = None,
            labels: Optional[Mapping[str, str]] = None,
            location: Optional[str] = None,
            mysql: Optional[ConnectionProfileMysqlArgs] = None,
            name: Optional[str] = None,
            postgresql: Optional[ConnectionProfilePostgresqlArgs] = None,
            project: Optional[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.

    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.

    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}.

    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.

    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.

    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.

    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}.

    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.

    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.

    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.

    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}.

    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.

    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.

    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.

    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}.

    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.

    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.

    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.

    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}.

    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.

    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.

    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.

    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}.

    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.

    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, object>>

    (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]interface{}

    (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,Object>>

    (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]: any}[]

    (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, Any]]

    (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<Any>>

    (Output) A list of messages that carry the error details.

    message String

    (Output) Human readable message indicating details about the current status.

    ConnectionProfileMysql, ConnectionProfileMysqlArgs

    Host string

    Required. The IP or hostname of the source MySQL 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 MySQL 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.

    CloudSqlId string

    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.

    PasswordSet bool

    (Output) Output only. Indicates If this connection profile password is stored.

    Ssl ConnectionProfileMysqlSsl

    SSL configuration for the destination to connect to the source database. Structure is documented below.

    Host string

    Required. The IP or hostname of the source MySQL 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 MySQL 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.

    CloudSqlId string

    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.

    PasswordSet bool

    (Output) Output only. Indicates If this connection profile password is stored.

    Ssl ConnectionProfileMysqlSsl

    SSL configuration for the destination to connect to the source database. Structure is documented below.

    host String

    Required. The IP or hostname of the source MySQL 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 MySQL 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.

    cloudSqlId String

    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.

    passwordSet Boolean

    (Output) Output only. Indicates If this connection profile password is stored.

    ssl ConnectionProfileMysqlSsl

    SSL configuration for the destination to connect to the source database. Structure is documented below.

    host string

    Required. The IP or hostname of the source MySQL 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 MySQL 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.

    cloudSqlId string

    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.

    passwordSet boolean

    (Output) Output only. Indicates If this connection profile password is stored.

    ssl ConnectionProfileMysqlSsl

    SSL configuration for the destination to connect to the source database. Structure is documented below.

    host str

    Required. The IP or hostname of the source MySQL 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 MySQL 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.

    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.

    password_set bool

    (Output) Output only. Indicates If this connection profile password is stored.

    ssl ConnectionProfileMysqlSsl

    SSL configuration for the destination to connect to the source database. Structure is documented below.

    host String

    Required. The IP or hostname of the source MySQL 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 MySQL 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.

    cloudSqlId String

    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.

    passwordSet Boolean

    (Output) Output only. Indicates If this connection profile password is stored.

    ssl Property Map

    SSL configuration for the destination to connect to the source database. Structure is documented below.

    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.

    ConnectionProfilePostgresql, ConnectionProfilePostgresqlArgs

    Host string

    Required. The IP or hostname of the source MySQL 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 MySQL 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.

    CloudSqlId string

    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.

    NetworkArchitecture string

    (Output) Output only. If the source is a Cloud SQL database, this field indicates the network architecture it's associated with.

    PasswordSet bool

    (Output) Output only. Indicates If this connection profile password is stored.

    Ssl ConnectionProfilePostgresqlSsl

    SSL configuration for the destination to connect to the source database. Structure is documented below.

    Host string

    Required. The IP or hostname of the source MySQL 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 MySQL 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.

    CloudSqlId string

    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.

    NetworkArchitecture string

    (Output) Output only. If the source is a Cloud SQL database, this field indicates the network architecture it's associated with.

    PasswordSet bool

    (Output) Output only. Indicates If this connection profile password is stored.

    Ssl ConnectionProfilePostgresqlSsl

    SSL configuration for the destination to connect to the source database. Structure is documented below.

    host String

    Required. The IP or hostname of the source MySQL 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 MySQL 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.

    cloudSqlId String

    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.

    networkArchitecture String

    (Output) Output only. If the source is a Cloud SQL database, this field indicates the network architecture it's associated with.

    passwordSet Boolean

    (Output) Output only. Indicates If this connection profile password is stored.

    ssl ConnectionProfilePostgresqlSsl

    SSL configuration for the destination to connect to the source database. Structure is documented below.

    host string

    Required. The IP or hostname of the source MySQL 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 MySQL 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.

    cloudSqlId string

    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.

    networkArchitecture string

    (Output) Output only. If the source is a Cloud SQL database, this field indicates the network architecture it's associated with.

    passwordSet boolean

    (Output) Output only. Indicates If this connection profile password is stored.

    ssl ConnectionProfilePostgresqlSsl

    SSL configuration for the destination to connect to the source database. Structure is documented below.

    host str

    Required. The IP or hostname of the source MySQL 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 MySQL 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.

    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.

    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_set bool

    (Output) Output only. Indicates If this connection profile password is stored.

    ssl ConnectionProfilePostgresqlSsl

    SSL configuration for the destination to connect to the source database. Structure is documented below.

    host String

    Required. The IP or hostname of the source MySQL 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 MySQL 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.

    cloudSqlId String

    If the source is a Cloud SQL database, use this field to provide the Cloud SQL instance ID of the source.

    networkArchitecture String

    (Output) Output only. If the source is a Cloud SQL database, this field indicates the network architecture it's associated with.

    passwordSet Boolean

    (Output) Output only. Indicates If this connection profile password is stored.

    ssl Property Map

    SSL configuration for the destination to connect to the source database. Structure is documented below.

    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

     $ 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}}
    

    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 v6.67.0 published on Wednesday, Sep 27, 2023 by Pulumi