1. Packages
  2. Azure Native
  3. API Docs
  4. dbforpostgresql
  5. Migration
This is the latest version of Azure Native. Use the Azure Native v2 docs if using the v2 version of this package.
Azure Native v3.7.1 published on Wednesday, Aug 13, 2025 by Pulumi

azure-native.dbforpostgresql.Migration

Explore with Pulumi AI

azure-native logo
This is the latest version of Azure Native. Use the Azure Native v2 docs if using the v2 version of this package.
Azure Native v3.7.1 published on Wednesday, Aug 13, 2025 by Pulumi

    Migration.

    Uses Azure REST API version 2024-08-01. In version 2.x of the Azure Native provider, it used API version 2023-03-01-preview.

    Other available API versions: 2023-03-01-preview, 2023-06-01-preview, 2023-12-01-preview, 2024-03-01-preview, 2024-11-01-preview, 2025-01-01-preview, 2025-06-01-preview. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native dbforpostgresql [ApiVersion]. See the version guide for details.

    Example Usage

    Create a migration for validating only.

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var migration = new AzureNative.DBforPostgreSQL.Migration("migration", new()
        {
            DbsToMigrate = new[]
            {
                "exampledatabase1",
                "exampledatabase2",
                "exampledatabase3",
                "exampledatabase4",
            },
            Location = "westus",
            MigrationMode = AzureNative.DBforPostgreSQL.MigrationMode.Offline,
            MigrationName = "examplemigration",
            MigrationOption = AzureNative.DBforPostgreSQL.MigrationOption.Validate,
            OverwriteDbsInTarget = AzureNative.DBforPostgreSQL.OverwriteDbsInTargetEnum.True,
            ResourceGroupName = "exampleresourcegroup",
            SecretParameters = new AzureNative.DBforPostgreSQL.Inputs.MigrationSecretParametersArgs
            {
                AdminCredentials = new AzureNative.DBforPostgreSQL.Inputs.AdminCredentialsArgs
                {
                    SourceServerPassword = "examplesourcepassword",
                    TargetServerPassword = "exampletargetpassword",
                },
            },
            SourceDbServerResourceId = "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource",
            TargetDbServerName = "exampletarget",
        });
    
    });
    
    package main
    
    import (
    	dbforpostgresql "github.com/pulumi/pulumi-azure-native-sdk/dbforpostgresql/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := dbforpostgresql.NewMigration(ctx, "migration", &dbforpostgresql.MigrationArgs{
    			DbsToMigrate: pulumi.StringArray{
    				pulumi.String("exampledatabase1"),
    				pulumi.String("exampledatabase2"),
    				pulumi.String("exampledatabase3"),
    				pulumi.String("exampledatabase4"),
    			},
    			Location:             pulumi.String("westus"),
    			MigrationMode:        pulumi.String(dbforpostgresql.MigrationModeOffline),
    			MigrationName:        pulumi.String("examplemigration"),
    			MigrationOption:      pulumi.String(dbforpostgresql.MigrationOptionValidate),
    			OverwriteDbsInTarget: pulumi.String(dbforpostgresql.OverwriteDbsInTargetEnumTrue),
    			ResourceGroupName:    pulumi.String("exampleresourcegroup"),
    			SecretParameters: &dbforpostgresql.MigrationSecretParametersArgs{
    				AdminCredentials: &dbforpostgresql.AdminCredentialsArgs{
    					SourceServerPassword: pulumi.String("examplesourcepassword"),
    					TargetServerPassword: pulumi.String("exampletargetpassword"),
    				},
    			},
    			SourceDbServerResourceId: pulumi.String("/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource"),
    			TargetDbServerName:       pulumi.String("exampletarget"),
    		})
    		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.azurenative.dbforpostgresql.Migration;
    import com.pulumi.azurenative.dbforpostgresql.MigrationArgs;
    import com.pulumi.azurenative.dbforpostgresql.inputs.MigrationSecretParametersArgs;
    import com.pulumi.azurenative.dbforpostgresql.inputs.AdminCredentialsArgs;
    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 migration = new Migration("migration", MigrationArgs.builder()
                .dbsToMigrate(            
                    "exampledatabase1",
                    "exampledatabase2",
                    "exampledatabase3",
                    "exampledatabase4")
                .location("westus")
                .migrationMode("Offline")
                .migrationName("examplemigration")
                .migrationOption("Validate")
                .overwriteDbsInTarget("True")
                .resourceGroupName("exampleresourcegroup")
                .secretParameters(MigrationSecretParametersArgs.builder()
                    .adminCredentials(AdminCredentialsArgs.builder()
                        .sourceServerPassword("examplesourcepassword")
                        .targetServerPassword("exampletargetpassword")
                        .build())
                    .build())
                .sourceDbServerResourceId("/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource")
                .targetDbServerName("exampletarget")
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const migration = new azure_native.dbforpostgresql.Migration("migration", {
        dbsToMigrate: [
            "exampledatabase1",
            "exampledatabase2",
            "exampledatabase3",
            "exampledatabase4",
        ],
        location: "westus",
        migrationMode: azure_native.dbforpostgresql.MigrationMode.Offline,
        migrationName: "examplemigration",
        migrationOption: azure_native.dbforpostgresql.MigrationOption.Validate,
        overwriteDbsInTarget: azure_native.dbforpostgresql.OverwriteDbsInTargetEnum.True,
        resourceGroupName: "exampleresourcegroup",
        secretParameters: {
            adminCredentials: {
                sourceServerPassword: "examplesourcepassword",
                targetServerPassword: "exampletargetpassword",
            },
        },
        sourceDbServerResourceId: "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource",
        targetDbServerName: "exampletarget",
    });
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    migration = azure_native.dbforpostgresql.Migration("migration",
        dbs_to_migrate=[
            "exampledatabase1",
            "exampledatabase2",
            "exampledatabase3",
            "exampledatabase4",
        ],
        location="westus",
        migration_mode=azure_native.dbforpostgresql.MigrationMode.OFFLINE,
        migration_name="examplemigration",
        migration_option=azure_native.dbforpostgresql.MigrationOption.VALIDATE,
        overwrite_dbs_in_target=azure_native.dbforpostgresql.OverwriteDbsInTargetEnum.TRUE,
        resource_group_name="exampleresourcegroup",
        secret_parameters={
            "admin_credentials": {
                "source_server_password": "examplesourcepassword",
                "target_server_password": "exampletargetpassword",
            },
        },
        source_db_server_resource_id="/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource",
        target_db_server_name="exampletarget")
    
    resources:
      migration:
        type: azure-native:dbforpostgresql:Migration
        properties:
          dbsToMigrate:
            - exampledatabase1
            - exampledatabase2
            - exampledatabase3
            - exampledatabase4
          location: westus
          migrationMode: Offline
          migrationName: examplemigration
          migrationOption: Validate
          overwriteDbsInTarget: True
          resourceGroupName: exampleresourcegroup
          secretParameters:
            adminCredentials:
              sourceServerPassword: examplesourcepassword
              targetServerPassword: exampletargetpassword
          sourceDbServerResourceId: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource
          targetDbServerName: exampletarget
    

    Create a migration specifying user names.

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var migration = new AzureNative.DBforPostgreSQL.Migration("migration", new()
        {
            DbsToMigrate = new[]
            {
                "exampledatabase1",
                "exampledatabase2",
                "exampledatabase3",
                "exampledatabase4",
            },
            Location = "westus",
            MigrationMode = AzureNative.DBforPostgreSQL.MigrationMode.Offline,
            MigrationName = "examplemigration",
            ResourceGroupName = "exampleresourcegroup",
            SecretParameters = new AzureNative.DBforPostgreSQL.Inputs.MigrationSecretParametersArgs
            {
                AdminCredentials = new AzureNative.DBforPostgreSQL.Inputs.AdminCredentialsArgs
                {
                    SourceServerPassword = "examplesourcepassword",
                    TargetServerPassword = "exampletargetpassword",
                },
                SourceServerUsername = "newadmin@examplesource",
                TargetServerUsername = "targetadmin",
            },
            SourceDbServerResourceId = "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource",
            TargetDbServerName = "exampletarget",
        });
    
    });
    
    package main
    
    import (
    	dbforpostgresql "github.com/pulumi/pulumi-azure-native-sdk/dbforpostgresql/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := dbforpostgresql.NewMigration(ctx, "migration", &dbforpostgresql.MigrationArgs{
    			DbsToMigrate: pulumi.StringArray{
    				pulumi.String("exampledatabase1"),
    				pulumi.String("exampledatabase2"),
    				pulumi.String("exampledatabase3"),
    				pulumi.String("exampledatabase4"),
    			},
    			Location:          pulumi.String("westus"),
    			MigrationMode:     pulumi.String(dbforpostgresql.MigrationModeOffline),
    			MigrationName:     pulumi.String("examplemigration"),
    			ResourceGroupName: pulumi.String("exampleresourcegroup"),
    			SecretParameters: &dbforpostgresql.MigrationSecretParametersArgs{
    				AdminCredentials: &dbforpostgresql.AdminCredentialsArgs{
    					SourceServerPassword: pulumi.String("examplesourcepassword"),
    					TargetServerPassword: pulumi.String("exampletargetpassword"),
    				},
    				SourceServerUsername: pulumi.String("newadmin@examplesource"),
    				TargetServerUsername: pulumi.String("targetadmin"),
    			},
    			SourceDbServerResourceId: pulumi.String("/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource"),
    			TargetDbServerName:       pulumi.String("exampletarget"),
    		})
    		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.azurenative.dbforpostgresql.Migration;
    import com.pulumi.azurenative.dbforpostgresql.MigrationArgs;
    import com.pulumi.azurenative.dbforpostgresql.inputs.MigrationSecretParametersArgs;
    import com.pulumi.azurenative.dbforpostgresql.inputs.AdminCredentialsArgs;
    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 migration = new Migration("migration", MigrationArgs.builder()
                .dbsToMigrate(            
                    "exampledatabase1",
                    "exampledatabase2",
                    "exampledatabase3",
                    "exampledatabase4")
                .location("westus")
                .migrationMode("Offline")
                .migrationName("examplemigration")
                .resourceGroupName("exampleresourcegroup")
                .secretParameters(MigrationSecretParametersArgs.builder()
                    .adminCredentials(AdminCredentialsArgs.builder()
                        .sourceServerPassword("examplesourcepassword")
                        .targetServerPassword("exampletargetpassword")
                        .build())
                    .sourceServerUsername("newadmin@examplesource")
                    .targetServerUsername("targetadmin")
                    .build())
                .sourceDbServerResourceId("/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource")
                .targetDbServerName("exampletarget")
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const migration = new azure_native.dbforpostgresql.Migration("migration", {
        dbsToMigrate: [
            "exampledatabase1",
            "exampledatabase2",
            "exampledatabase3",
            "exampledatabase4",
        ],
        location: "westus",
        migrationMode: azure_native.dbforpostgresql.MigrationMode.Offline,
        migrationName: "examplemigration",
        resourceGroupName: "exampleresourcegroup",
        secretParameters: {
            adminCredentials: {
                sourceServerPassword: "examplesourcepassword",
                targetServerPassword: "exampletargetpassword",
            },
            sourceServerUsername: "newadmin@examplesource",
            targetServerUsername: "targetadmin",
        },
        sourceDbServerResourceId: "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource",
        targetDbServerName: "exampletarget",
    });
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    migration = azure_native.dbforpostgresql.Migration("migration",
        dbs_to_migrate=[
            "exampledatabase1",
            "exampledatabase2",
            "exampledatabase3",
            "exampledatabase4",
        ],
        location="westus",
        migration_mode=azure_native.dbforpostgresql.MigrationMode.OFFLINE,
        migration_name="examplemigration",
        resource_group_name="exampleresourcegroup",
        secret_parameters={
            "admin_credentials": {
                "source_server_password": "examplesourcepassword",
                "target_server_password": "exampletargetpassword",
            },
            "source_server_username": "newadmin@examplesource",
            "target_server_username": "targetadmin",
        },
        source_db_server_resource_id="/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource",
        target_db_server_name="exampletarget")
    
    resources:
      migration:
        type: azure-native:dbforpostgresql:Migration
        properties:
          dbsToMigrate:
            - exampledatabase1
            - exampledatabase2
            - exampledatabase3
            - exampledatabase4
          location: westus
          migrationMode: Offline
          migrationName: examplemigration
          resourceGroupName: exampleresourcegroup
          secretParameters:
            adminCredentials:
              sourceServerPassword: examplesourcepassword
              targetServerPassword: exampletargetpassword
            sourceServerUsername: newadmin@examplesource
            targetServerUsername: targetadmin
          sourceDbServerResourceId: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource
          targetDbServerName: exampletarget
    

    Create a migration with other source type for validating and migrating.

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var migration = new AzureNative.DBforPostgreSQL.Migration("migration", new()
        {
            DbsToMigrate = new[]
            {
                "exampledatabase1",
                "exampledatabase2",
                "exampledatabase3",
                "exampledatabase4",
            },
            Location = "westus",
            MigrationMode = AzureNative.DBforPostgreSQL.MigrationMode.Offline,
            MigrationName = "examplemigration",
            MigrationOption = AzureNative.DBforPostgreSQL.MigrationOption.ValidateAndMigrate,
            OverwriteDbsInTarget = AzureNative.DBforPostgreSQL.OverwriteDbsInTargetEnum.True,
            ResourceGroupName = "exampleresourcegroup",
            SecretParameters = new AzureNative.DBforPostgreSQL.Inputs.MigrationSecretParametersArgs
            {
                AdminCredentials = new AzureNative.DBforPostgreSQL.Inputs.AdminCredentialsArgs
                {
                    SourceServerPassword = "examplesourcepassword",
                    TargetServerPassword = "exampletargetpassword",
                },
            },
            SourceDbServerResourceId = "examplesource:5432@exampleuser",
            SourceType = AzureNative.DBforPostgreSQL.SourceType.OnPremises,
            SslMode = AzureNative.DBforPostgreSQL.SslMode.Prefer,
            TargetDbServerName = "exampletarget",
        });
    
    });
    
    package main
    
    import (
    	dbforpostgresql "github.com/pulumi/pulumi-azure-native-sdk/dbforpostgresql/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := dbforpostgresql.NewMigration(ctx, "migration", &dbforpostgresql.MigrationArgs{
    			DbsToMigrate: pulumi.StringArray{
    				pulumi.String("exampledatabase1"),
    				pulumi.String("exampledatabase2"),
    				pulumi.String("exampledatabase3"),
    				pulumi.String("exampledatabase4"),
    			},
    			Location:             pulumi.String("westus"),
    			MigrationMode:        pulumi.String(dbforpostgresql.MigrationModeOffline),
    			MigrationName:        pulumi.String("examplemigration"),
    			MigrationOption:      pulumi.String(dbforpostgresql.MigrationOptionValidateAndMigrate),
    			OverwriteDbsInTarget: pulumi.String(dbforpostgresql.OverwriteDbsInTargetEnumTrue),
    			ResourceGroupName:    pulumi.String("exampleresourcegroup"),
    			SecretParameters: &dbforpostgresql.MigrationSecretParametersArgs{
    				AdminCredentials: &dbforpostgresql.AdminCredentialsArgs{
    					SourceServerPassword: pulumi.String("examplesourcepassword"),
    					TargetServerPassword: pulumi.String("exampletargetpassword"),
    				},
    			},
    			SourceDbServerResourceId: pulumi.String("examplesource:5432@exampleuser"),
    			SourceType:               pulumi.String(dbforpostgresql.SourceTypeOnPremises),
    			SslMode:                  pulumi.String(dbforpostgresql.SslModePrefer),
    			TargetDbServerName:       pulumi.String("exampletarget"),
    		})
    		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.azurenative.dbforpostgresql.Migration;
    import com.pulumi.azurenative.dbforpostgresql.MigrationArgs;
    import com.pulumi.azurenative.dbforpostgresql.inputs.MigrationSecretParametersArgs;
    import com.pulumi.azurenative.dbforpostgresql.inputs.AdminCredentialsArgs;
    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 migration = new Migration("migration", MigrationArgs.builder()
                .dbsToMigrate(            
                    "exampledatabase1",
                    "exampledatabase2",
                    "exampledatabase3",
                    "exampledatabase4")
                .location("westus")
                .migrationMode("Offline")
                .migrationName("examplemigration")
                .migrationOption("ValidateAndMigrate")
                .overwriteDbsInTarget("True")
                .resourceGroupName("exampleresourcegroup")
                .secretParameters(MigrationSecretParametersArgs.builder()
                    .adminCredentials(AdminCredentialsArgs.builder()
                        .sourceServerPassword("examplesourcepassword")
                        .targetServerPassword("exampletargetpassword")
                        .build())
                    .build())
                .sourceDbServerResourceId("examplesource:5432@exampleuser")
                .sourceType("OnPremises")
                .sslMode("Prefer")
                .targetDbServerName("exampletarget")
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const migration = new azure_native.dbforpostgresql.Migration("migration", {
        dbsToMigrate: [
            "exampledatabase1",
            "exampledatabase2",
            "exampledatabase3",
            "exampledatabase4",
        ],
        location: "westus",
        migrationMode: azure_native.dbforpostgresql.MigrationMode.Offline,
        migrationName: "examplemigration",
        migrationOption: azure_native.dbforpostgresql.MigrationOption.ValidateAndMigrate,
        overwriteDbsInTarget: azure_native.dbforpostgresql.OverwriteDbsInTargetEnum.True,
        resourceGroupName: "exampleresourcegroup",
        secretParameters: {
            adminCredentials: {
                sourceServerPassword: "examplesourcepassword",
                targetServerPassword: "exampletargetpassword",
            },
        },
        sourceDbServerResourceId: "examplesource:5432@exampleuser",
        sourceType: azure_native.dbforpostgresql.SourceType.OnPremises,
        sslMode: azure_native.dbforpostgresql.SslMode.Prefer,
        targetDbServerName: "exampletarget",
    });
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    migration = azure_native.dbforpostgresql.Migration("migration",
        dbs_to_migrate=[
            "exampledatabase1",
            "exampledatabase2",
            "exampledatabase3",
            "exampledatabase4",
        ],
        location="westus",
        migration_mode=azure_native.dbforpostgresql.MigrationMode.OFFLINE,
        migration_name="examplemigration",
        migration_option=azure_native.dbforpostgresql.MigrationOption.VALIDATE_AND_MIGRATE,
        overwrite_dbs_in_target=azure_native.dbforpostgresql.OverwriteDbsInTargetEnum.TRUE,
        resource_group_name="exampleresourcegroup",
        secret_parameters={
            "admin_credentials": {
                "source_server_password": "examplesourcepassword",
                "target_server_password": "exampletargetpassword",
            },
        },
        source_db_server_resource_id="examplesource:5432@exampleuser",
        source_type=azure_native.dbforpostgresql.SourceType.ON_PREMISES,
        ssl_mode=azure_native.dbforpostgresql.SslMode.PREFER,
        target_db_server_name="exampletarget")
    
    resources:
      migration:
        type: azure-native:dbforpostgresql:Migration
        properties:
          dbsToMigrate:
            - exampledatabase1
            - exampledatabase2
            - exampledatabase3
            - exampledatabase4
          location: westus
          migrationMode: Offline
          migrationName: examplemigration
          migrationOption: ValidateAndMigrate
          overwriteDbsInTarget: True
          resourceGroupName: exampleresourcegroup
          secretParameters:
            adminCredentials:
              sourceServerPassword: examplesourcepassword
              targetServerPassword: exampletargetpassword
          sourceDbServerResourceId: examplesource:5432@exampleuser
          sourceType: OnPremises
          sslMode: Prefer
          targetDbServerName: exampletarget
    

    Create a migration with private endpoint.

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var migration = new AzureNative.DBforPostgreSQL.Migration("migration", new()
        {
            DbsToMigrate = new[]
            {
                "exampledatabase1",
                "exampledatabase2",
                "exampledatabase3",
                "exampledatabase4",
            },
            Location = "westus",
            MigrationInstanceResourceId = "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/flexibleServers/examplesourcemigration",
            MigrationMode = AzureNative.DBforPostgreSQL.MigrationMode.Offline,
            MigrationName = "examplemigration",
            OverwriteDbsInTarget = AzureNative.DBforPostgreSQL.OverwriteDbsInTargetEnum.True,
            ResourceGroupName = "exampleresourcegroup",
            SecretParameters = new AzureNative.DBforPostgreSQL.Inputs.MigrationSecretParametersArgs
            {
                AdminCredentials = new AzureNative.DBforPostgreSQL.Inputs.AdminCredentialsArgs
                {
                    SourceServerPassword = "examplesourcepassword",
                    TargetServerPassword = "exampletargetpassword",
                },
            },
            SourceDbServerResourceId = "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource",
            TargetDbServerName = "exampletarget",
        });
    
    });
    
    package main
    
    import (
    	dbforpostgresql "github.com/pulumi/pulumi-azure-native-sdk/dbforpostgresql/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := dbforpostgresql.NewMigration(ctx, "migration", &dbforpostgresql.MigrationArgs{
    			DbsToMigrate: pulumi.StringArray{
    				pulumi.String("exampledatabase1"),
    				pulumi.String("exampledatabase2"),
    				pulumi.String("exampledatabase3"),
    				pulumi.String("exampledatabase4"),
    			},
    			Location:                    pulumi.String("westus"),
    			MigrationInstanceResourceId: pulumi.String("/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/flexibleServers/examplesourcemigration"),
    			MigrationMode:               pulumi.String(dbforpostgresql.MigrationModeOffline),
    			MigrationName:               pulumi.String("examplemigration"),
    			OverwriteDbsInTarget:        pulumi.String(dbforpostgresql.OverwriteDbsInTargetEnumTrue),
    			ResourceGroupName:           pulumi.String("exampleresourcegroup"),
    			SecretParameters: &dbforpostgresql.MigrationSecretParametersArgs{
    				AdminCredentials: &dbforpostgresql.AdminCredentialsArgs{
    					SourceServerPassword: pulumi.String("examplesourcepassword"),
    					TargetServerPassword: pulumi.String("exampletargetpassword"),
    				},
    			},
    			SourceDbServerResourceId: pulumi.String("/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource"),
    			TargetDbServerName:       pulumi.String("exampletarget"),
    		})
    		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.azurenative.dbforpostgresql.Migration;
    import com.pulumi.azurenative.dbforpostgresql.MigrationArgs;
    import com.pulumi.azurenative.dbforpostgresql.inputs.MigrationSecretParametersArgs;
    import com.pulumi.azurenative.dbforpostgresql.inputs.AdminCredentialsArgs;
    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 migration = new Migration("migration", MigrationArgs.builder()
                .dbsToMigrate(            
                    "exampledatabase1",
                    "exampledatabase2",
                    "exampledatabase3",
                    "exampledatabase4")
                .location("westus")
                .migrationInstanceResourceId("/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/flexibleServers/examplesourcemigration")
                .migrationMode("Offline")
                .migrationName("examplemigration")
                .overwriteDbsInTarget("True")
                .resourceGroupName("exampleresourcegroup")
                .secretParameters(MigrationSecretParametersArgs.builder()
                    .adminCredentials(AdminCredentialsArgs.builder()
                        .sourceServerPassword("examplesourcepassword")
                        .targetServerPassword("exampletargetpassword")
                        .build())
                    .build())
                .sourceDbServerResourceId("/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource")
                .targetDbServerName("exampletarget")
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const migration = new azure_native.dbforpostgresql.Migration("migration", {
        dbsToMigrate: [
            "exampledatabase1",
            "exampledatabase2",
            "exampledatabase3",
            "exampledatabase4",
        ],
        location: "westus",
        migrationInstanceResourceId: "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/flexibleServers/examplesourcemigration",
        migrationMode: azure_native.dbforpostgresql.MigrationMode.Offline,
        migrationName: "examplemigration",
        overwriteDbsInTarget: azure_native.dbforpostgresql.OverwriteDbsInTargetEnum.True,
        resourceGroupName: "exampleresourcegroup",
        secretParameters: {
            adminCredentials: {
                sourceServerPassword: "examplesourcepassword",
                targetServerPassword: "exampletargetpassword",
            },
        },
        sourceDbServerResourceId: "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource",
        targetDbServerName: "exampletarget",
    });
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    migration = azure_native.dbforpostgresql.Migration("migration",
        dbs_to_migrate=[
            "exampledatabase1",
            "exampledatabase2",
            "exampledatabase3",
            "exampledatabase4",
        ],
        location="westus",
        migration_instance_resource_id="/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/flexibleServers/examplesourcemigration",
        migration_mode=azure_native.dbforpostgresql.MigrationMode.OFFLINE,
        migration_name="examplemigration",
        overwrite_dbs_in_target=azure_native.dbforpostgresql.OverwriteDbsInTargetEnum.TRUE,
        resource_group_name="exampleresourcegroup",
        secret_parameters={
            "admin_credentials": {
                "source_server_password": "examplesourcepassword",
                "target_server_password": "exampletargetpassword",
            },
        },
        source_db_server_resource_id="/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource",
        target_db_server_name="exampletarget")
    
    resources:
      migration:
        type: azure-native:dbforpostgresql:Migration
        properties:
          dbsToMigrate:
            - exampledatabase1
            - exampledatabase2
            - exampledatabase3
            - exampledatabase4
          location: westus
          migrationInstanceResourceId: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/flexibleServers/examplesourcemigration
          migrationMode: Offline
          migrationName: examplemigration
          overwriteDbsInTarget: True
          resourceGroupName: exampleresourcegroup
          secretParameters:
            adminCredentials:
              sourceServerPassword: examplesourcepassword
              targetServerPassword: exampletargetpassword
          sourceDbServerResourceId: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource
          targetDbServerName: exampletarget
    

    Create a migration with roles.

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var migration = new AzureNative.DBforPostgreSQL.Migration("migration", new()
        {
            DbsToMigrate = new[]
            {
                "exampledatabase1",
                "exampledatabase2",
                "exampledatabase3",
                "exampledatabase4",
            },
            Location = "westus",
            MigrateRoles = AzureNative.DBforPostgreSQL.MigrateRolesEnum.True,
            MigrationMode = AzureNative.DBforPostgreSQL.MigrationMode.Offline,
            MigrationName = "examplemigration",
            OverwriteDbsInTarget = AzureNative.DBforPostgreSQL.OverwriteDbsInTargetEnum.True,
            ResourceGroupName = "exampleresourcegroup",
            SecretParameters = new AzureNative.DBforPostgreSQL.Inputs.MigrationSecretParametersArgs
            {
                AdminCredentials = new AzureNative.DBforPostgreSQL.Inputs.AdminCredentialsArgs
                {
                    SourceServerPassword = "examplesourcepassword",
                    TargetServerPassword = "exampletargetpassword",
                },
            },
            SourceDbServerResourceId = "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource",
            TargetDbServerName = "exampletarget",
        });
    
    });
    
    package main
    
    import (
    	dbforpostgresql "github.com/pulumi/pulumi-azure-native-sdk/dbforpostgresql/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := dbforpostgresql.NewMigration(ctx, "migration", &dbforpostgresql.MigrationArgs{
    			DbsToMigrate: pulumi.StringArray{
    				pulumi.String("exampledatabase1"),
    				pulumi.String("exampledatabase2"),
    				pulumi.String("exampledatabase3"),
    				pulumi.String("exampledatabase4"),
    			},
    			Location:             pulumi.String("westus"),
    			MigrateRoles:         pulumi.String(dbforpostgresql.MigrateRolesEnumTrue),
    			MigrationMode:        pulumi.String(dbforpostgresql.MigrationModeOffline),
    			MigrationName:        pulumi.String("examplemigration"),
    			OverwriteDbsInTarget: pulumi.String(dbforpostgresql.OverwriteDbsInTargetEnumTrue),
    			ResourceGroupName:    pulumi.String("exampleresourcegroup"),
    			SecretParameters: &dbforpostgresql.MigrationSecretParametersArgs{
    				AdminCredentials: &dbforpostgresql.AdminCredentialsArgs{
    					SourceServerPassword: pulumi.String("examplesourcepassword"),
    					TargetServerPassword: pulumi.String("exampletargetpassword"),
    				},
    			},
    			SourceDbServerResourceId: pulumi.String("/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource"),
    			TargetDbServerName:       pulumi.String("exampletarget"),
    		})
    		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.azurenative.dbforpostgresql.Migration;
    import com.pulumi.azurenative.dbforpostgresql.MigrationArgs;
    import com.pulumi.azurenative.dbforpostgresql.inputs.MigrationSecretParametersArgs;
    import com.pulumi.azurenative.dbforpostgresql.inputs.AdminCredentialsArgs;
    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 migration = new Migration("migration", MigrationArgs.builder()
                .dbsToMigrate(            
                    "exampledatabase1",
                    "exampledatabase2",
                    "exampledatabase3",
                    "exampledatabase4")
                .location("westus")
                .migrateRoles("True")
                .migrationMode("Offline")
                .migrationName("examplemigration")
                .overwriteDbsInTarget("True")
                .resourceGroupName("exampleresourcegroup")
                .secretParameters(MigrationSecretParametersArgs.builder()
                    .adminCredentials(AdminCredentialsArgs.builder()
                        .sourceServerPassword("examplesourcepassword")
                        .targetServerPassword("exampletargetpassword")
                        .build())
                    .build())
                .sourceDbServerResourceId("/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource")
                .targetDbServerName("exampletarget")
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const migration = new azure_native.dbforpostgresql.Migration("migration", {
        dbsToMigrate: [
            "exampledatabase1",
            "exampledatabase2",
            "exampledatabase3",
            "exampledatabase4",
        ],
        location: "westus",
        migrateRoles: azure_native.dbforpostgresql.MigrateRolesEnum.True,
        migrationMode: azure_native.dbforpostgresql.MigrationMode.Offline,
        migrationName: "examplemigration",
        overwriteDbsInTarget: azure_native.dbforpostgresql.OverwriteDbsInTargetEnum.True,
        resourceGroupName: "exampleresourcegroup",
        secretParameters: {
            adminCredentials: {
                sourceServerPassword: "examplesourcepassword",
                targetServerPassword: "exampletargetpassword",
            },
        },
        sourceDbServerResourceId: "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource",
        targetDbServerName: "exampletarget",
    });
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    migration = azure_native.dbforpostgresql.Migration("migration",
        dbs_to_migrate=[
            "exampledatabase1",
            "exampledatabase2",
            "exampledatabase3",
            "exampledatabase4",
        ],
        location="westus",
        migrate_roles=azure_native.dbforpostgresql.MigrateRolesEnum.TRUE,
        migration_mode=azure_native.dbforpostgresql.MigrationMode.OFFLINE,
        migration_name="examplemigration",
        overwrite_dbs_in_target=azure_native.dbforpostgresql.OverwriteDbsInTargetEnum.TRUE,
        resource_group_name="exampleresourcegroup",
        secret_parameters={
            "admin_credentials": {
                "source_server_password": "examplesourcepassword",
                "target_server_password": "exampletargetpassword",
            },
        },
        source_db_server_resource_id="/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource",
        target_db_server_name="exampletarget")
    
    resources:
      migration:
        type: azure-native:dbforpostgresql:Migration
        properties:
          dbsToMigrate:
            - exampledatabase1
            - exampledatabase2
            - exampledatabase3
            - exampledatabase4
          location: westus
          migrateRoles: True
          migrationMode: Offline
          migrationName: examplemigration
          overwriteDbsInTarget: True
          resourceGroupName: exampleresourcegroup
          secretParameters:
            adminCredentials:
              sourceServerPassword: examplesourcepassword
              targetServerPassword: exampletargetpassword
          sourceDbServerResourceId: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource
          targetDbServerName: exampletarget
    

    Create a migration.

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var migration = new AzureNative.DBforPostgreSQL.Migration("migration", new()
        {
            DbsToMigrate = new[]
            {
                "exampledatabase1",
                "exampledatabase2",
                "exampledatabase3",
                "exampledatabase4",
            },
            Location = "westus",
            MigrationMode = AzureNative.DBforPostgreSQL.MigrationMode.Offline,
            MigrationName = "examplemigration",
            OverwriteDbsInTarget = AzureNative.DBforPostgreSQL.OverwriteDbsInTargetEnum.True,
            ResourceGroupName = "exampleresourcegroup",
            SecretParameters = new AzureNative.DBforPostgreSQL.Inputs.MigrationSecretParametersArgs
            {
                AdminCredentials = new AzureNative.DBforPostgreSQL.Inputs.AdminCredentialsArgs
                {
                    SourceServerPassword = "examplesourcepassword",
                    TargetServerPassword = "exampletargetpassword",
                },
            },
            SourceDbServerResourceId = "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource",
            TargetDbServerName = "exampletarget",
        });
    
    });
    
    package main
    
    import (
    	dbforpostgresql "github.com/pulumi/pulumi-azure-native-sdk/dbforpostgresql/v3"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := dbforpostgresql.NewMigration(ctx, "migration", &dbforpostgresql.MigrationArgs{
    			DbsToMigrate: pulumi.StringArray{
    				pulumi.String("exampledatabase1"),
    				pulumi.String("exampledatabase2"),
    				pulumi.String("exampledatabase3"),
    				pulumi.String("exampledatabase4"),
    			},
    			Location:             pulumi.String("westus"),
    			MigrationMode:        pulumi.String(dbforpostgresql.MigrationModeOffline),
    			MigrationName:        pulumi.String("examplemigration"),
    			OverwriteDbsInTarget: pulumi.String(dbforpostgresql.OverwriteDbsInTargetEnumTrue),
    			ResourceGroupName:    pulumi.String("exampleresourcegroup"),
    			SecretParameters: &dbforpostgresql.MigrationSecretParametersArgs{
    				AdminCredentials: &dbforpostgresql.AdminCredentialsArgs{
    					SourceServerPassword: pulumi.String("examplesourcepassword"),
    					TargetServerPassword: pulumi.String("exampletargetpassword"),
    				},
    			},
    			SourceDbServerResourceId: pulumi.String("/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource"),
    			TargetDbServerName:       pulumi.String("exampletarget"),
    		})
    		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.azurenative.dbforpostgresql.Migration;
    import com.pulumi.azurenative.dbforpostgresql.MigrationArgs;
    import com.pulumi.azurenative.dbforpostgresql.inputs.MigrationSecretParametersArgs;
    import com.pulumi.azurenative.dbforpostgresql.inputs.AdminCredentialsArgs;
    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 migration = new Migration("migration", MigrationArgs.builder()
                .dbsToMigrate(            
                    "exampledatabase1",
                    "exampledatabase2",
                    "exampledatabase3",
                    "exampledatabase4")
                .location("westus")
                .migrationMode("Offline")
                .migrationName("examplemigration")
                .overwriteDbsInTarget("True")
                .resourceGroupName("exampleresourcegroup")
                .secretParameters(MigrationSecretParametersArgs.builder()
                    .adminCredentials(AdminCredentialsArgs.builder()
                        .sourceServerPassword("examplesourcepassword")
                        .targetServerPassword("exampletargetpassword")
                        .build())
                    .build())
                .sourceDbServerResourceId("/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource")
                .targetDbServerName("exampletarget")
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const migration = new azure_native.dbforpostgresql.Migration("migration", {
        dbsToMigrate: [
            "exampledatabase1",
            "exampledatabase2",
            "exampledatabase3",
            "exampledatabase4",
        ],
        location: "westus",
        migrationMode: azure_native.dbforpostgresql.MigrationMode.Offline,
        migrationName: "examplemigration",
        overwriteDbsInTarget: azure_native.dbforpostgresql.OverwriteDbsInTargetEnum.True,
        resourceGroupName: "exampleresourcegroup",
        secretParameters: {
            adminCredentials: {
                sourceServerPassword: "examplesourcepassword",
                targetServerPassword: "exampletargetpassword",
            },
        },
        sourceDbServerResourceId: "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource",
        targetDbServerName: "exampletarget",
    });
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    migration = azure_native.dbforpostgresql.Migration("migration",
        dbs_to_migrate=[
            "exampledatabase1",
            "exampledatabase2",
            "exampledatabase3",
            "exampledatabase4",
        ],
        location="westus",
        migration_mode=azure_native.dbforpostgresql.MigrationMode.OFFLINE,
        migration_name="examplemigration",
        overwrite_dbs_in_target=azure_native.dbforpostgresql.OverwriteDbsInTargetEnum.TRUE,
        resource_group_name="exampleresourcegroup",
        secret_parameters={
            "admin_credentials": {
                "source_server_password": "examplesourcepassword",
                "target_server_password": "exampletargetpassword",
            },
        },
        source_db_server_resource_id="/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource",
        target_db_server_name="exampletarget")
    
    resources:
      migration:
        type: azure-native:dbforpostgresql:Migration
        properties:
          dbsToMigrate:
            - exampledatabase1
            - exampledatabase2
            - exampledatabase3
            - exampledatabase4
          location: westus
          migrationMode: Offline
          migrationName: examplemigration
          overwriteDbsInTarget: True
          resourceGroupName: exampleresourcegroup
          secretParameters:
            adminCredentials:
              sourceServerPassword: examplesourcepassword
              targetServerPassword: exampletargetpassword
          sourceDbServerResourceId: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/exampleresourcegroup/providers/Microsoft.DBForPostgreSql/servers/examplesource
          targetDbServerName: exampletarget
    

    Create Migration Resource

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

    Constructor syntax

    new Migration(name: string, args: MigrationArgs, opts?: CustomResourceOptions);
    @overload
    def Migration(resource_name: str,
                  args: MigrationArgs,
                  opts: Optional[ResourceOptions] = None)
    
    @overload
    def Migration(resource_name: str,
                  opts: Optional[ResourceOptions] = None,
                  resource_group_name: Optional[str] = None,
                  target_db_server_name: Optional[str] = None,
                  overwrite_dbs_in_target: Optional[Union[str, OverwriteDbsInTargetEnum]] = None,
                  migration_name: Optional[str] = None,
                  location: Optional[str] = None,
                  migrate_roles: Optional[Union[str, MigrateRolesEnum]] = None,
                  migration_instance_resource_id: Optional[str] = None,
                  migration_mode: Optional[Union[str, MigrationMode]] = None,
                  dbs_to_migrate: Optional[Sequence[str]] = None,
                  migration_option: Optional[Union[str, MigrationOption]] = None,
                  migration_window_end_time_in_utc: Optional[str] = None,
                  migration_window_start_time_in_utc: Optional[str] = None,
                  dbs_to_trigger_cutover_on: Optional[Sequence[str]] = None,
                  cancel: Optional[Union[str, CancelEnum]] = None,
                  source_type: Optional[Union[str, SourceType]] = None,
                  setup_logical_replication_on_source_db_if_needed: Optional[Union[str, LogicalReplicationOnSourceDbEnum]] = None,
                  source_db_server_fully_qualified_domain_name: Optional[str] = None,
                  source_db_server_resource_id: Optional[str] = None,
                  secret_parameters: Optional[MigrationSecretParametersArgs] = None,
                  ssl_mode: Optional[Union[str, SslMode]] = None,
                  start_data_migration: Optional[Union[str, StartDataMigrationEnum]] = None,
                  subscription_id: Optional[str] = None,
                  tags: Optional[Mapping[str, str]] = None,
                  target_db_server_fully_qualified_domain_name: Optional[str] = None,
                  dbs_to_cancel_migration_on: Optional[Sequence[str]] = None,
                  trigger_cutover: Optional[Union[str, TriggerCutoverEnum]] = None)
    func NewMigration(ctx *Context, name string, args MigrationArgs, opts ...ResourceOption) (*Migration, error)
    public Migration(string name, MigrationArgs args, CustomResourceOptions? opts = null)
    public Migration(String name, MigrationArgs args)
    public Migration(String name, MigrationArgs args, CustomResourceOptions options)
    
    type: azure-native:dbforpostgresql:Migration
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args MigrationArgs
    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 MigrationArgs
    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 MigrationArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args MigrationArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args MigrationArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

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

    var migrationResource = new AzureNative.DBforPostgreSQL.Migration("migrationResource", new()
    {
        ResourceGroupName = "string",
        TargetDbServerName = "string",
        OverwriteDbsInTarget = "string",
        MigrationName = "string",
        Location = "string",
        MigrateRoles = "string",
        MigrationInstanceResourceId = "string",
        MigrationMode = "string",
        DbsToMigrate = new[]
        {
            "string",
        },
        MigrationOption = "string",
        MigrationWindowEndTimeInUtc = "string",
        MigrationWindowStartTimeInUtc = "string",
        DbsToTriggerCutoverOn = new[]
        {
            "string",
        },
        Cancel = "string",
        SourceType = "string",
        SetupLogicalReplicationOnSourceDbIfNeeded = "string",
        SourceDbServerFullyQualifiedDomainName = "string",
        SourceDbServerResourceId = "string",
        SecretParameters = new AzureNative.DBforPostgreSQL.Inputs.MigrationSecretParametersArgs
        {
            AdminCredentials = new AzureNative.DBforPostgreSQL.Inputs.AdminCredentialsArgs
            {
                SourceServerPassword = "string",
                TargetServerPassword = "string",
            },
            SourceServerUsername = "string",
            TargetServerUsername = "string",
        },
        SslMode = "string",
        StartDataMigration = "string",
        SubscriptionId = "string",
        Tags = 
        {
            { "string", "string" },
        },
        TargetDbServerFullyQualifiedDomainName = "string",
        DbsToCancelMigrationOn = new[]
        {
            "string",
        },
        TriggerCutover = "string",
    });
    
    example, err := dbforpostgresql.NewMigration(ctx, "migrationResource", &dbforpostgresql.MigrationArgs{
    	ResourceGroupName:           pulumi.String("string"),
    	TargetDbServerName:          pulumi.String("string"),
    	OverwriteDbsInTarget:        pulumi.String("string"),
    	MigrationName:               pulumi.String("string"),
    	Location:                    pulumi.String("string"),
    	MigrateRoles:                pulumi.String("string"),
    	MigrationInstanceResourceId: pulumi.String("string"),
    	MigrationMode:               pulumi.String("string"),
    	DbsToMigrate: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	MigrationOption:               pulumi.String("string"),
    	MigrationWindowEndTimeInUtc:   pulumi.String("string"),
    	MigrationWindowStartTimeInUtc: pulumi.String("string"),
    	DbsToTriggerCutoverOn: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Cancel:     pulumi.String("string"),
    	SourceType: pulumi.String("string"),
    	SetupLogicalReplicationOnSourceDbIfNeeded: pulumi.String("string"),
    	SourceDbServerFullyQualifiedDomainName:    pulumi.String("string"),
    	SourceDbServerResourceId:                  pulumi.String("string"),
    	SecretParameters: &dbforpostgresql.MigrationSecretParametersArgs{
    		AdminCredentials: &dbforpostgresql.AdminCredentialsArgs{
    			SourceServerPassword: pulumi.String("string"),
    			TargetServerPassword: pulumi.String("string"),
    		},
    		SourceServerUsername: pulumi.String("string"),
    		TargetServerUsername: pulumi.String("string"),
    	},
    	SslMode:            pulumi.String("string"),
    	StartDataMigration: pulumi.String("string"),
    	SubscriptionId:     pulumi.String("string"),
    	Tags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	TargetDbServerFullyQualifiedDomainName: pulumi.String("string"),
    	DbsToCancelMigrationOn: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	TriggerCutover: pulumi.String("string"),
    })
    
    var migrationResource = new Migration("migrationResource", MigrationArgs.builder()
        .resourceGroupName("string")
        .targetDbServerName("string")
        .overwriteDbsInTarget("string")
        .migrationName("string")
        .location("string")
        .migrateRoles("string")
        .migrationInstanceResourceId("string")
        .migrationMode("string")
        .dbsToMigrate("string")
        .migrationOption("string")
        .migrationWindowEndTimeInUtc("string")
        .migrationWindowStartTimeInUtc("string")
        .dbsToTriggerCutoverOn("string")
        .cancel("string")
        .sourceType("string")
        .setupLogicalReplicationOnSourceDbIfNeeded("string")
        .sourceDbServerFullyQualifiedDomainName("string")
        .sourceDbServerResourceId("string")
        .secretParameters(MigrationSecretParametersArgs.builder()
            .adminCredentials(AdminCredentialsArgs.builder()
                .sourceServerPassword("string")
                .targetServerPassword("string")
                .build())
            .sourceServerUsername("string")
            .targetServerUsername("string")
            .build())
        .sslMode("string")
        .startDataMigration("string")
        .subscriptionId("string")
        .tags(Map.of("string", "string"))
        .targetDbServerFullyQualifiedDomainName("string")
        .dbsToCancelMigrationOn("string")
        .triggerCutover("string")
        .build());
    
    migration_resource = azure_native.dbforpostgresql.Migration("migrationResource",
        resource_group_name="string",
        target_db_server_name="string",
        overwrite_dbs_in_target="string",
        migration_name="string",
        location="string",
        migrate_roles="string",
        migration_instance_resource_id="string",
        migration_mode="string",
        dbs_to_migrate=["string"],
        migration_option="string",
        migration_window_end_time_in_utc="string",
        migration_window_start_time_in_utc="string",
        dbs_to_trigger_cutover_on=["string"],
        cancel="string",
        source_type="string",
        setup_logical_replication_on_source_db_if_needed="string",
        source_db_server_fully_qualified_domain_name="string",
        source_db_server_resource_id="string",
        secret_parameters={
            "admin_credentials": {
                "source_server_password": "string",
                "target_server_password": "string",
            },
            "source_server_username": "string",
            "target_server_username": "string",
        },
        ssl_mode="string",
        start_data_migration="string",
        subscription_id="string",
        tags={
            "string": "string",
        },
        target_db_server_fully_qualified_domain_name="string",
        dbs_to_cancel_migration_on=["string"],
        trigger_cutover="string")
    
    const migrationResource = new azure_native.dbforpostgresql.Migration("migrationResource", {
        resourceGroupName: "string",
        targetDbServerName: "string",
        overwriteDbsInTarget: "string",
        migrationName: "string",
        location: "string",
        migrateRoles: "string",
        migrationInstanceResourceId: "string",
        migrationMode: "string",
        dbsToMigrate: ["string"],
        migrationOption: "string",
        migrationWindowEndTimeInUtc: "string",
        migrationWindowStartTimeInUtc: "string",
        dbsToTriggerCutoverOn: ["string"],
        cancel: "string",
        sourceType: "string",
        setupLogicalReplicationOnSourceDbIfNeeded: "string",
        sourceDbServerFullyQualifiedDomainName: "string",
        sourceDbServerResourceId: "string",
        secretParameters: {
            adminCredentials: {
                sourceServerPassword: "string",
                targetServerPassword: "string",
            },
            sourceServerUsername: "string",
            targetServerUsername: "string",
        },
        sslMode: "string",
        startDataMigration: "string",
        subscriptionId: "string",
        tags: {
            string: "string",
        },
        targetDbServerFullyQualifiedDomainName: "string",
        dbsToCancelMigrationOn: ["string"],
        triggerCutover: "string",
    });
    
    type: azure-native:dbforpostgresql:Migration
    properties:
        cancel: string
        dbsToCancelMigrationOn:
            - string
        dbsToMigrate:
            - string
        dbsToTriggerCutoverOn:
            - string
        location: string
        migrateRoles: string
        migrationInstanceResourceId: string
        migrationMode: string
        migrationName: string
        migrationOption: string
        migrationWindowEndTimeInUtc: string
        migrationWindowStartTimeInUtc: string
        overwriteDbsInTarget: string
        resourceGroupName: string
        secretParameters:
            adminCredentials:
                sourceServerPassword: string
                targetServerPassword: string
            sourceServerUsername: string
            targetServerUsername: string
        setupLogicalReplicationOnSourceDbIfNeeded: string
        sourceDbServerFullyQualifiedDomainName: string
        sourceDbServerResourceId: string
        sourceType: string
        sslMode: string
        startDataMigration: string
        subscriptionId: string
        tags:
            string: string
        targetDbServerFullyQualifiedDomainName: string
        targetDbServerName: string
        triggerCutover: string
    

    Migration Resource Properties

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

    Inputs

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

    The Migration resource accepts the following input properties:

    ResourceGroupName string
    Name of resource group of target database server.
    TargetDbServerName string
    Name of target database server.
    Cancel string | Pulumi.AzureNative.DBforPostgreSQL.CancelEnum
    Indicates if cancel must be triggered for the entire migration.
    DbsToCancelMigrationOn List<string>
    When you want to trigger cancel for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array.
    DbsToMigrate List<string>
    Names of databases to migrate.
    DbsToTriggerCutoverOn List<string>
    When you want to trigger cutover for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array.
    Location string
    The geo-location where the resource lives
    MigrateRoles string | Pulumi.AzureNative.DBforPostgreSQL.MigrateRolesEnum
    Indicates if roles and permissions must be migrated.
    MigrationInstanceResourceId string
    Identifier of the private endpoint migration instance.
    MigrationMode string | Pulumi.AzureNative.DBforPostgreSQL.MigrationMode
    Mode used to perform the migration: Online or Offline.
    MigrationName string
    Name of migration.
    MigrationOption string | Pulumi.AzureNative.DBforPostgreSQL.MigrationOption
    Supported option for a migration.
    MigrationWindowEndTimeInUtc string
    End time (UTC) for migration window.
    MigrationWindowStartTimeInUtc string
    Start time (UTC) for migration window.
    OverwriteDbsInTarget string | Pulumi.AzureNative.DBforPostgreSQL.OverwriteDbsInTargetEnum
    Indicates if databases on the target server can be overwritten when already present. If set to 'False', when the migration workflow detects that the database already exists on the target server, it will wait for a confirmation.
    SecretParameters Pulumi.AzureNative.DBforPostgreSQL.Inputs.MigrationSecretParameters
    Migration secret parameters.
    SetupLogicalReplicationOnSourceDbIfNeeded string | Pulumi.AzureNative.DBforPostgreSQL.LogicalReplicationOnSourceDbEnum
    Indicates whether to setup LogicalReplicationOnSourceDb, if needed.
    SourceDbServerFullyQualifiedDomainName string
    Fully qualified domain name (FQDN) or IP address of the source server. This property is optional. When provided, the migration service will always use it to connect to the source server.
    SourceDbServerResourceId string
    Identifier of the source database server resource, when 'sourceType' is 'PostgreSQLSingleServer'. For other source types this must be set to ipaddress:port@username or hostname:port@username.
    SourceType string | Pulumi.AzureNative.DBforPostgreSQL.SourceType
    Source server type used for the migration: ApsaraDB_RDS, AWS, AWS_AURORA, AWS_EC2, AWS_RDS, AzureVM, Crunchy_PostgreSQL, Digital_Ocean_Droplets, Digital_Ocean_PostgreSQL, EDB, EDB_Oracle_Server, EDB_PostgreSQL, GCP, GCP_AlloyDB, GCP_CloudSQL, GCP_Compute, Heroku_PostgreSQL, Huawei_Compute, Huawei_RDS, OnPremises, PostgreSQLCosmosDB, PostgreSQLFlexibleServer, PostgreSQLSingleServer, or Supabase_PostgreSQL
    SslMode string | Pulumi.AzureNative.DBforPostgreSQL.SslMode
    SSL mode used by a migration. Default SSL mode for 'PostgreSQLSingleServer' is 'VerifyFull'. Default SSL mode for other source types is 'Prefer'.
    StartDataMigration string | Pulumi.AzureNative.DBforPostgreSQL.StartDataMigrationEnum
    Indicates if data migration must start right away.
    SubscriptionId string
    Identifier of subscription of target database server.
    Tags Dictionary<string, string>
    Resource tags.
    TargetDbServerFullyQualifiedDomainName string
    Fully qualified domain name (FQDN) or IP address of the target server. This property is optional. When provided, the migration service will always use it to connect to the target server.
    TriggerCutover string | Pulumi.AzureNative.DBforPostgreSQL.TriggerCutoverEnum
    Indicates if cutover must be triggered for the entire migration.
    ResourceGroupName string
    Name of resource group of target database server.
    TargetDbServerName string
    Name of target database server.
    Cancel string | CancelEnum
    Indicates if cancel must be triggered for the entire migration.
    DbsToCancelMigrationOn []string
    When you want to trigger cancel for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array.
    DbsToMigrate []string
    Names of databases to migrate.
    DbsToTriggerCutoverOn []string
    When you want to trigger cutover for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array.
    Location string
    The geo-location where the resource lives
    MigrateRoles string | MigrateRolesEnum
    Indicates if roles and permissions must be migrated.
    MigrationInstanceResourceId string
    Identifier of the private endpoint migration instance.
    MigrationMode string | MigrationMode
    Mode used to perform the migration: Online or Offline.
    MigrationName string
    Name of migration.
    MigrationOption string | MigrationOption
    Supported option for a migration.
    MigrationWindowEndTimeInUtc string
    End time (UTC) for migration window.
    MigrationWindowStartTimeInUtc string
    Start time (UTC) for migration window.
    OverwriteDbsInTarget string | OverwriteDbsInTargetEnum
    Indicates if databases on the target server can be overwritten when already present. If set to 'False', when the migration workflow detects that the database already exists on the target server, it will wait for a confirmation.
    SecretParameters MigrationSecretParametersArgs
    Migration secret parameters.
    SetupLogicalReplicationOnSourceDbIfNeeded string | LogicalReplicationOnSourceDbEnum
    Indicates whether to setup LogicalReplicationOnSourceDb, if needed.
    SourceDbServerFullyQualifiedDomainName string
    Fully qualified domain name (FQDN) or IP address of the source server. This property is optional. When provided, the migration service will always use it to connect to the source server.
    SourceDbServerResourceId string
    Identifier of the source database server resource, when 'sourceType' is 'PostgreSQLSingleServer'. For other source types this must be set to ipaddress:port@username or hostname:port@username.
    SourceType string | SourceType
    Source server type used for the migration: ApsaraDB_RDS, AWS, AWS_AURORA, AWS_EC2, AWS_RDS, AzureVM, Crunchy_PostgreSQL, Digital_Ocean_Droplets, Digital_Ocean_PostgreSQL, EDB, EDB_Oracle_Server, EDB_PostgreSQL, GCP, GCP_AlloyDB, GCP_CloudSQL, GCP_Compute, Heroku_PostgreSQL, Huawei_Compute, Huawei_RDS, OnPremises, PostgreSQLCosmosDB, PostgreSQLFlexibleServer, PostgreSQLSingleServer, or Supabase_PostgreSQL
    SslMode string | SslMode
    SSL mode used by a migration. Default SSL mode for 'PostgreSQLSingleServer' is 'VerifyFull'. Default SSL mode for other source types is 'Prefer'.
    StartDataMigration string | StartDataMigrationEnum
    Indicates if data migration must start right away.
    SubscriptionId string
    Identifier of subscription of target database server.
    Tags map[string]string
    Resource tags.
    TargetDbServerFullyQualifiedDomainName string
    Fully qualified domain name (FQDN) or IP address of the target server. This property is optional. When provided, the migration service will always use it to connect to the target server.
    TriggerCutover string | TriggerCutoverEnum
    Indicates if cutover must be triggered for the entire migration.
    resourceGroupName String
    Name of resource group of target database server.
    targetDbServerName String
    Name of target database server.
    cancel String | CancelEnum
    Indicates if cancel must be triggered for the entire migration.
    dbsToCancelMigrationOn List<String>
    When you want to trigger cancel for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array.
    dbsToMigrate List<String>
    Names of databases to migrate.
    dbsToTriggerCutoverOn List<String>
    When you want to trigger cutover for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array.
    location String
    The geo-location where the resource lives
    migrateRoles String | MigrateRolesEnum
    Indicates if roles and permissions must be migrated.
    migrationInstanceResourceId String
    Identifier of the private endpoint migration instance.
    migrationMode String | MigrationMode
    Mode used to perform the migration: Online or Offline.
    migrationName String
    Name of migration.
    migrationOption String | MigrationOption
    Supported option for a migration.
    migrationWindowEndTimeInUtc String
    End time (UTC) for migration window.
    migrationWindowStartTimeInUtc String
    Start time (UTC) for migration window.
    overwriteDbsInTarget String | OverwriteDbsInTargetEnum
    Indicates if databases on the target server can be overwritten when already present. If set to 'False', when the migration workflow detects that the database already exists on the target server, it will wait for a confirmation.
    secretParameters MigrationSecretParameters
    Migration secret parameters.
    setupLogicalReplicationOnSourceDbIfNeeded String | LogicalReplicationOnSourceDbEnum
    Indicates whether to setup LogicalReplicationOnSourceDb, if needed.
    sourceDbServerFullyQualifiedDomainName String
    Fully qualified domain name (FQDN) or IP address of the source server. This property is optional. When provided, the migration service will always use it to connect to the source server.
    sourceDbServerResourceId String
    Identifier of the source database server resource, when 'sourceType' is 'PostgreSQLSingleServer'. For other source types this must be set to ipaddress:port@username or hostname:port@username.
    sourceType String | SourceType
    Source server type used for the migration: ApsaraDB_RDS, AWS, AWS_AURORA, AWS_EC2, AWS_RDS, AzureVM, Crunchy_PostgreSQL, Digital_Ocean_Droplets, Digital_Ocean_PostgreSQL, EDB, EDB_Oracle_Server, EDB_PostgreSQL, GCP, GCP_AlloyDB, GCP_CloudSQL, GCP_Compute, Heroku_PostgreSQL, Huawei_Compute, Huawei_RDS, OnPremises, PostgreSQLCosmosDB, PostgreSQLFlexibleServer, PostgreSQLSingleServer, or Supabase_PostgreSQL
    sslMode String | SslMode
    SSL mode used by a migration. Default SSL mode for 'PostgreSQLSingleServer' is 'VerifyFull'. Default SSL mode for other source types is 'Prefer'.
    startDataMigration String | StartDataMigrationEnum
    Indicates if data migration must start right away.
    subscriptionId String
    Identifier of subscription of target database server.
    tags Map<String,String>
    Resource tags.
    targetDbServerFullyQualifiedDomainName String
    Fully qualified domain name (FQDN) or IP address of the target server. This property is optional. When provided, the migration service will always use it to connect to the target server.
    triggerCutover String | TriggerCutoverEnum
    Indicates if cutover must be triggered for the entire migration.
    resourceGroupName string
    Name of resource group of target database server.
    targetDbServerName string
    Name of target database server.
    cancel string | CancelEnum
    Indicates if cancel must be triggered for the entire migration.
    dbsToCancelMigrationOn string[]
    When you want to trigger cancel for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array.
    dbsToMigrate string[]
    Names of databases to migrate.
    dbsToTriggerCutoverOn string[]
    When you want to trigger cutover for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array.
    location string
    The geo-location where the resource lives
    migrateRoles string | MigrateRolesEnum
    Indicates if roles and permissions must be migrated.
    migrationInstanceResourceId string
    Identifier of the private endpoint migration instance.
    migrationMode string | MigrationMode
    Mode used to perform the migration: Online or Offline.
    migrationName string
    Name of migration.
    migrationOption string | MigrationOption
    Supported option for a migration.
    migrationWindowEndTimeInUtc string
    End time (UTC) for migration window.
    migrationWindowStartTimeInUtc string
    Start time (UTC) for migration window.
    overwriteDbsInTarget string | OverwriteDbsInTargetEnum
    Indicates if databases on the target server can be overwritten when already present. If set to 'False', when the migration workflow detects that the database already exists on the target server, it will wait for a confirmation.
    secretParameters MigrationSecretParameters
    Migration secret parameters.
    setupLogicalReplicationOnSourceDbIfNeeded string | LogicalReplicationOnSourceDbEnum
    Indicates whether to setup LogicalReplicationOnSourceDb, if needed.
    sourceDbServerFullyQualifiedDomainName string
    Fully qualified domain name (FQDN) or IP address of the source server. This property is optional. When provided, the migration service will always use it to connect to the source server.
    sourceDbServerResourceId string
    Identifier of the source database server resource, when 'sourceType' is 'PostgreSQLSingleServer'. For other source types this must be set to ipaddress:port@username or hostname:port@username.
    sourceType string | SourceType
    Source server type used for the migration: ApsaraDB_RDS, AWS, AWS_AURORA, AWS_EC2, AWS_RDS, AzureVM, Crunchy_PostgreSQL, Digital_Ocean_Droplets, Digital_Ocean_PostgreSQL, EDB, EDB_Oracle_Server, EDB_PostgreSQL, GCP, GCP_AlloyDB, GCP_CloudSQL, GCP_Compute, Heroku_PostgreSQL, Huawei_Compute, Huawei_RDS, OnPremises, PostgreSQLCosmosDB, PostgreSQLFlexibleServer, PostgreSQLSingleServer, or Supabase_PostgreSQL
    sslMode string | SslMode
    SSL mode used by a migration. Default SSL mode for 'PostgreSQLSingleServer' is 'VerifyFull'. Default SSL mode for other source types is 'Prefer'.
    startDataMigration string | StartDataMigrationEnum
    Indicates if data migration must start right away.
    subscriptionId string
    Identifier of subscription of target database server.
    tags {[key: string]: string}
    Resource tags.
    targetDbServerFullyQualifiedDomainName string
    Fully qualified domain name (FQDN) or IP address of the target server. This property is optional. When provided, the migration service will always use it to connect to the target server.
    triggerCutover string | TriggerCutoverEnum
    Indicates if cutover must be triggered for the entire migration.
    resource_group_name str
    Name of resource group of target database server.
    target_db_server_name str
    Name of target database server.
    cancel str | CancelEnum
    Indicates if cancel must be triggered for the entire migration.
    dbs_to_cancel_migration_on Sequence[str]
    When you want to trigger cancel for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array.
    dbs_to_migrate Sequence[str]
    Names of databases to migrate.
    dbs_to_trigger_cutover_on Sequence[str]
    When you want to trigger cutover for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array.
    location str
    The geo-location where the resource lives
    migrate_roles str | MigrateRolesEnum
    Indicates if roles and permissions must be migrated.
    migration_instance_resource_id str
    Identifier of the private endpoint migration instance.
    migration_mode str | MigrationMode
    Mode used to perform the migration: Online or Offline.
    migration_name str
    Name of migration.
    migration_option str | MigrationOption
    Supported option for a migration.
    migration_window_end_time_in_utc str
    End time (UTC) for migration window.
    migration_window_start_time_in_utc str
    Start time (UTC) for migration window.
    overwrite_dbs_in_target str | OverwriteDbsInTargetEnum
    Indicates if databases on the target server can be overwritten when already present. If set to 'False', when the migration workflow detects that the database already exists on the target server, it will wait for a confirmation.
    secret_parameters MigrationSecretParametersArgs
    Migration secret parameters.
    setup_logical_replication_on_source_db_if_needed str | LogicalReplicationOnSourceDbEnum
    Indicates whether to setup LogicalReplicationOnSourceDb, if needed.
    source_db_server_fully_qualified_domain_name str
    Fully qualified domain name (FQDN) or IP address of the source server. This property is optional. When provided, the migration service will always use it to connect to the source server.
    source_db_server_resource_id str
    Identifier of the source database server resource, when 'sourceType' is 'PostgreSQLSingleServer'. For other source types this must be set to ipaddress:port@username or hostname:port@username.
    source_type str | SourceType
    Source server type used for the migration: ApsaraDB_RDS, AWS, AWS_AURORA, AWS_EC2, AWS_RDS, AzureVM, Crunchy_PostgreSQL, Digital_Ocean_Droplets, Digital_Ocean_PostgreSQL, EDB, EDB_Oracle_Server, EDB_PostgreSQL, GCP, GCP_AlloyDB, GCP_CloudSQL, GCP_Compute, Heroku_PostgreSQL, Huawei_Compute, Huawei_RDS, OnPremises, PostgreSQLCosmosDB, PostgreSQLFlexibleServer, PostgreSQLSingleServer, or Supabase_PostgreSQL
    ssl_mode str | SslMode
    SSL mode used by a migration. Default SSL mode for 'PostgreSQLSingleServer' is 'VerifyFull'. Default SSL mode for other source types is 'Prefer'.
    start_data_migration str | StartDataMigrationEnum
    Indicates if data migration must start right away.
    subscription_id str
    Identifier of subscription of target database server.
    tags Mapping[str, str]
    Resource tags.
    target_db_server_fully_qualified_domain_name str
    Fully qualified domain name (FQDN) or IP address of the target server. This property is optional. When provided, the migration service will always use it to connect to the target server.
    trigger_cutover str | TriggerCutoverEnum
    Indicates if cutover must be triggered for the entire migration.
    resourceGroupName String
    Name of resource group of target database server.
    targetDbServerName String
    Name of target database server.
    cancel String | "True" | "False"
    Indicates if cancel must be triggered for the entire migration.
    dbsToCancelMigrationOn List<String>
    When you want to trigger cancel for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array.
    dbsToMigrate List<String>
    Names of databases to migrate.
    dbsToTriggerCutoverOn List<String>
    When you want to trigger cutover for specific databases set 'triggerCutover' to 'True' and the names of the specific databases in this array.
    location String
    The geo-location where the resource lives
    migrateRoles String | "True" | "False"
    Indicates if roles and permissions must be migrated.
    migrationInstanceResourceId String
    Identifier of the private endpoint migration instance.
    migrationMode String | "Offline" | "Online"
    Mode used to perform the migration: Online or Offline.
    migrationName String
    Name of migration.
    migrationOption String | "Validate" | "Migrate" | "ValidateAndMigrate"
    Supported option for a migration.
    migrationWindowEndTimeInUtc String
    End time (UTC) for migration window.
    migrationWindowStartTimeInUtc String
    Start time (UTC) for migration window.
    overwriteDbsInTarget String | "True" | "False"
    Indicates if databases on the target server can be overwritten when already present. If set to 'False', when the migration workflow detects that the database already exists on the target server, it will wait for a confirmation.
    secretParameters Property Map
    Migration secret parameters.
    setupLogicalReplicationOnSourceDbIfNeeded String | "True" | "False"
    Indicates whether to setup LogicalReplicationOnSourceDb, if needed.
    sourceDbServerFullyQualifiedDomainName String
    Fully qualified domain name (FQDN) or IP address of the source server. This property is optional. When provided, the migration service will always use it to connect to the source server.
    sourceDbServerResourceId String
    Identifier of the source database server resource, when 'sourceType' is 'PostgreSQLSingleServer'. For other source types this must be set to ipaddress:port@username or hostname:port@username.
    sourceType String | "OnPremises" | "AWS" | "GCP" | "AzureVM" | "PostgreSQLSingleServer" | "AWS_RDS" | "AWS_AURORA" | "AWS_EC2" | "GCP_CloudSQL" | "GCP_AlloyDB" | "GCP_Compute" | "EDB"
    Source server type used for the migration: ApsaraDB_RDS, AWS, AWS_AURORA, AWS_EC2, AWS_RDS, AzureVM, Crunchy_PostgreSQL, Digital_Ocean_Droplets, Digital_Ocean_PostgreSQL, EDB, EDB_Oracle_Server, EDB_PostgreSQL, GCP, GCP_AlloyDB, GCP_CloudSQL, GCP_Compute, Heroku_PostgreSQL, Huawei_Compute, Huawei_RDS, OnPremises, PostgreSQLCosmosDB, PostgreSQLFlexibleServer, PostgreSQLSingleServer, or Supabase_PostgreSQL
    sslMode String | "Prefer" | "Require" | "VerifyCA" | "VerifyFull"
    SSL mode used by a migration. Default SSL mode for 'PostgreSQLSingleServer' is 'VerifyFull'. Default SSL mode for other source types is 'Prefer'.
    startDataMigration String | "True" | "False"
    Indicates if data migration must start right away.
    subscriptionId String
    Identifier of subscription of target database server.
    tags Map<String>
    Resource tags.
    targetDbServerFullyQualifiedDomainName String
    Fully qualified domain name (FQDN) or IP address of the target server. This property is optional. When provided, the migration service will always use it to connect to the target server.
    triggerCutover String | "True" | "False"
    Indicates if cutover must be triggered for the entire migration.

    Outputs

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

    AzureApiVersion string
    The Azure API version of the resource.
    CurrentStatus Pulumi.AzureNative.DBforPostgreSQL.Outputs.MigrationStatusResponse
    Current status of a migration.
    Id string
    The provider-assigned unique ID for this managed resource.
    MigrationId string
    Identifier of a migration.
    Name string
    The name of the resource
    SourceDbServerMetadata Pulumi.AzureNative.DBforPostgreSQL.Outputs.DbServerMetadataResponse
    Metadata of source database server.
    SystemData Pulumi.AzureNative.DBforPostgreSQL.Outputs.SystemDataResponse
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    TargetDbServerMetadata Pulumi.AzureNative.DBforPostgreSQL.Outputs.DbServerMetadataResponse
    Metadata of target database server.
    TargetDbServerResourceId string
    Identifier of the target database server resource.
    Type string
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
    AzureApiVersion string
    The Azure API version of the resource.
    CurrentStatus MigrationStatusResponse
    Current status of a migration.
    Id string
    The provider-assigned unique ID for this managed resource.
    MigrationId string
    Identifier of a migration.
    Name string
    The name of the resource
    SourceDbServerMetadata DbServerMetadataResponse
    Metadata of source database server.
    SystemData SystemDataResponse
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    TargetDbServerMetadata DbServerMetadataResponse
    Metadata of target database server.
    TargetDbServerResourceId string
    Identifier of the target database server resource.
    Type string
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
    azureApiVersion String
    The Azure API version of the resource.
    currentStatus MigrationStatusResponse
    Current status of a migration.
    id String
    The provider-assigned unique ID for this managed resource.
    migrationId String
    Identifier of a migration.
    name String
    The name of the resource
    sourceDbServerMetadata DbServerMetadataResponse
    Metadata of source database server.
    systemData SystemDataResponse
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    targetDbServerMetadata DbServerMetadataResponse
    Metadata of target database server.
    targetDbServerResourceId String
    Identifier of the target database server resource.
    type String
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
    azureApiVersion string
    The Azure API version of the resource.
    currentStatus MigrationStatusResponse
    Current status of a migration.
    id string
    The provider-assigned unique ID for this managed resource.
    migrationId string
    Identifier of a migration.
    name string
    The name of the resource
    sourceDbServerMetadata DbServerMetadataResponse
    Metadata of source database server.
    systemData SystemDataResponse
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    targetDbServerMetadata DbServerMetadataResponse
    Metadata of target database server.
    targetDbServerResourceId string
    Identifier of the target database server resource.
    type string
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
    azure_api_version str
    The Azure API version of the resource.
    current_status MigrationStatusResponse
    Current status of a migration.
    id str
    The provider-assigned unique ID for this managed resource.
    migration_id str
    Identifier of a migration.
    name str
    The name of the resource
    source_db_server_metadata DbServerMetadataResponse
    Metadata of source database server.
    system_data SystemDataResponse
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    target_db_server_metadata DbServerMetadataResponse
    Metadata of target database server.
    target_db_server_resource_id str
    Identifier of the target database server resource.
    type str
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
    azureApiVersion String
    The Azure API version of the resource.
    currentStatus Property Map
    Current status of a migration.
    id String
    The provider-assigned unique ID for this managed resource.
    migrationId String
    Identifier of a migration.
    name String
    The name of the resource
    sourceDbServerMetadata Property Map
    Metadata of source database server.
    systemData Property Map
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    targetDbServerMetadata Property Map
    Metadata of target database server.
    targetDbServerResourceId String
    Identifier of the target database server resource.
    type String
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

    Supporting Types

    AdminCredentials, AdminCredentialsArgs

    SourceServerPassword string
    Password for the user of the source server.
    TargetServerPassword string
    Password for the user of the target server.
    SourceServerPassword string
    Password for the user of the source server.
    TargetServerPassword string
    Password for the user of the target server.
    sourceServerPassword String
    Password for the user of the source server.
    targetServerPassword String
    Password for the user of the target server.
    sourceServerPassword string
    Password for the user of the source server.
    targetServerPassword string
    Password for the user of the target server.
    source_server_password str
    Password for the user of the source server.
    target_server_password str
    Password for the user of the target server.
    sourceServerPassword String
    Password for the user of the source server.
    targetServerPassword String
    Password for the user of the target server.

    CancelEnum, CancelEnumArgs

    True
    True
    False
    False
    CancelEnumTrue
    True
    CancelEnumFalse
    False
    True
    True
    False
    False
    True
    True
    False
    False
    TRUE
    True
    FALSE
    False
    "True"
    True
    "False"
    False

    DbLevelValidationStatusResponse, DbLevelValidationStatusResponseArgs

    DatabaseName string
    Name of database.
    EndedOn string
    End time of a database level validation.
    StartedOn string
    Start time of a database level validation.
    Summary List<Pulumi.AzureNative.DBforPostgreSQL.Inputs.ValidationSummaryItemResponse>
    Summary of database level validations.
    DatabaseName string
    Name of database.
    EndedOn string
    End time of a database level validation.
    StartedOn string
    Start time of a database level validation.
    Summary []ValidationSummaryItemResponse
    Summary of database level validations.
    databaseName String
    Name of database.
    endedOn String
    End time of a database level validation.
    startedOn String
    Start time of a database level validation.
    summary List<ValidationSummaryItemResponse>
    Summary of database level validations.
    databaseName string
    Name of database.
    endedOn string
    End time of a database level validation.
    startedOn string
    Start time of a database level validation.
    summary ValidationSummaryItemResponse[]
    Summary of database level validations.
    database_name str
    Name of database.
    ended_on str
    End time of a database level validation.
    started_on str
    Start time of a database level validation.
    summary Sequence[ValidationSummaryItemResponse]
    Summary of database level validations.
    databaseName String
    Name of database.
    endedOn String
    End time of a database level validation.
    startedOn String
    Start time of a database level validation.
    summary List<Property Map>
    Summary of database level validations.

    DbMigrationStatusResponse, DbMigrationStatusResponseArgs

    AppliedChanges int
    Change Data Capture applied changes counter.
    CdcDeleteCounter int
    Change Data Capture delete counter.
    CdcInsertCounter int
    Change Data Capture insert counter.
    CdcUpdateCounter int
    Change Data Capture update counter.
    DatabaseName string
    Name of database.
    EndedOn string
    End time of a migration state.
    FullLoadCompletedTables int
    Number of tables loaded during the migration of a database.
    FullLoadErroredTables int
    Number of tables encountering errors during the migration of a database.
    FullLoadLoadingTables int
    Number of tables loading during the migration of a database.
    FullLoadQueuedTables int
    Number of tables queued for the migration of a database.
    IncomingChanges int
    Change Data Capture incoming changes counter.
    Latency int
    Lag in seconds between source and target during online phase.
    Message string
    Error message, if any, for the migration state.
    MigrationOperation string
    Migration operation of a database.
    MigrationState string
    Migration state of a database.
    StartedOn string
    Start time of a migration state.
    AppliedChanges int
    Change Data Capture applied changes counter.
    CdcDeleteCounter int
    Change Data Capture delete counter.
    CdcInsertCounter int
    Change Data Capture insert counter.
    CdcUpdateCounter int
    Change Data Capture update counter.
    DatabaseName string
    Name of database.
    EndedOn string
    End time of a migration state.
    FullLoadCompletedTables int
    Number of tables loaded during the migration of a database.
    FullLoadErroredTables int
    Number of tables encountering errors during the migration of a database.
    FullLoadLoadingTables int
    Number of tables loading during the migration of a database.
    FullLoadQueuedTables int
    Number of tables queued for the migration of a database.
    IncomingChanges int
    Change Data Capture incoming changes counter.
    Latency int
    Lag in seconds between source and target during online phase.
    Message string
    Error message, if any, for the migration state.
    MigrationOperation string
    Migration operation of a database.
    MigrationState string
    Migration state of a database.
    StartedOn string
    Start time of a migration state.
    appliedChanges Integer
    Change Data Capture applied changes counter.
    cdcDeleteCounter Integer
    Change Data Capture delete counter.
    cdcInsertCounter Integer
    Change Data Capture insert counter.
    cdcUpdateCounter Integer
    Change Data Capture update counter.
    databaseName String
    Name of database.
    endedOn String
    End time of a migration state.
    fullLoadCompletedTables Integer
    Number of tables loaded during the migration of a database.
    fullLoadErroredTables Integer
    Number of tables encountering errors during the migration of a database.
    fullLoadLoadingTables Integer
    Number of tables loading during the migration of a database.
    fullLoadQueuedTables Integer
    Number of tables queued for the migration of a database.
    incomingChanges Integer
    Change Data Capture incoming changes counter.
    latency Integer
    Lag in seconds between source and target during online phase.
    message String
    Error message, if any, for the migration state.
    migrationOperation String
    Migration operation of a database.
    migrationState String
    Migration state of a database.
    startedOn String
    Start time of a migration state.
    appliedChanges number
    Change Data Capture applied changes counter.
    cdcDeleteCounter number
    Change Data Capture delete counter.
    cdcInsertCounter number
    Change Data Capture insert counter.
    cdcUpdateCounter number
    Change Data Capture update counter.
    databaseName string
    Name of database.
    endedOn string
    End time of a migration state.
    fullLoadCompletedTables number
    Number of tables loaded during the migration of a database.
    fullLoadErroredTables number
    Number of tables encountering errors during the migration of a database.
    fullLoadLoadingTables number
    Number of tables loading during the migration of a database.
    fullLoadQueuedTables number
    Number of tables queued for the migration of a database.
    incomingChanges number
    Change Data Capture incoming changes counter.
    latency number
    Lag in seconds between source and target during online phase.
    message string
    Error message, if any, for the migration state.
    migrationOperation string
    Migration operation of a database.
    migrationState string
    Migration state of a database.
    startedOn string
    Start time of a migration state.
    applied_changes int
    Change Data Capture applied changes counter.
    cdc_delete_counter int
    Change Data Capture delete counter.
    cdc_insert_counter int
    Change Data Capture insert counter.
    cdc_update_counter int
    Change Data Capture update counter.
    database_name str
    Name of database.
    ended_on str
    End time of a migration state.
    full_load_completed_tables int
    Number of tables loaded during the migration of a database.
    full_load_errored_tables int
    Number of tables encountering errors during the migration of a database.
    full_load_loading_tables int
    Number of tables loading during the migration of a database.
    full_load_queued_tables int
    Number of tables queued for the migration of a database.
    incoming_changes int
    Change Data Capture incoming changes counter.
    latency int
    Lag in seconds between source and target during online phase.
    message str
    Error message, if any, for the migration state.
    migration_operation str
    Migration operation of a database.
    migration_state str
    Migration state of a database.
    started_on str
    Start time of a migration state.
    appliedChanges Number
    Change Data Capture applied changes counter.
    cdcDeleteCounter Number
    Change Data Capture delete counter.
    cdcInsertCounter Number
    Change Data Capture insert counter.
    cdcUpdateCounter Number
    Change Data Capture update counter.
    databaseName String
    Name of database.
    endedOn String
    End time of a migration state.
    fullLoadCompletedTables Number
    Number of tables loaded during the migration of a database.
    fullLoadErroredTables Number
    Number of tables encountering errors during the migration of a database.
    fullLoadLoadingTables Number
    Number of tables loading during the migration of a database.
    fullLoadQueuedTables Number
    Number of tables queued for the migration of a database.
    incomingChanges Number
    Change Data Capture incoming changes counter.
    latency Number
    Lag in seconds between source and target during online phase.
    message String
    Error message, if any, for the migration state.
    migrationOperation String
    Migration operation of a database.
    migrationState String
    Migration state of a database.
    startedOn String
    Start time of a migration state.

    DbServerMetadataResponse, DbServerMetadataResponseArgs

    Location string
    Location of database server.
    Sku Pulumi.AzureNative.DBforPostgreSQL.Inputs.ServerSkuResponse
    Compute tier and size of the database server. This object is empty for an Azure Database for PostgreSQL single server.
    StorageMb int
    Storage size (in MB) for database server.
    Version string
    Major version of PostgreSQL database engine.
    Location string
    Location of database server.
    Sku ServerSkuResponse
    Compute tier and size of the database server. This object is empty for an Azure Database for PostgreSQL single server.
    StorageMb int
    Storage size (in MB) for database server.
    Version string
    Major version of PostgreSQL database engine.
    location String
    Location of database server.
    sku ServerSkuResponse
    Compute tier and size of the database server. This object is empty for an Azure Database for PostgreSQL single server.
    storageMb Integer
    Storage size (in MB) for database server.
    version String
    Major version of PostgreSQL database engine.
    location string
    Location of database server.
    sku ServerSkuResponse
    Compute tier and size of the database server. This object is empty for an Azure Database for PostgreSQL single server.
    storageMb number
    Storage size (in MB) for database server.
    version string
    Major version of PostgreSQL database engine.
    location str
    Location of database server.
    sku ServerSkuResponse
    Compute tier and size of the database server. This object is empty for an Azure Database for PostgreSQL single server.
    storage_mb int
    Storage size (in MB) for database server.
    version str
    Major version of PostgreSQL database engine.
    location String
    Location of database server.
    sku Property Map
    Compute tier and size of the database server. This object is empty for an Azure Database for PostgreSQL single server.
    storageMb Number
    Storage size (in MB) for database server.
    version String
    Major version of PostgreSQL database engine.

    LogicalReplicationOnSourceDbEnum, LogicalReplicationOnSourceDbEnumArgs

    True
    True
    False
    False
    LogicalReplicationOnSourceDbEnumTrue
    True
    LogicalReplicationOnSourceDbEnumFalse
    False
    True
    True
    False
    False
    True
    True
    False
    False
    TRUE
    True
    FALSE
    False
    "True"
    True
    "False"
    False

    MigrateRolesEnum, MigrateRolesEnumArgs

    True
    True
    False
    False
    MigrateRolesEnumTrue
    True
    MigrateRolesEnumFalse
    False
    True
    True
    False
    False
    True
    True
    False
    False
    TRUE
    True
    FALSE
    False
    "True"
    True
    "False"
    False

    MigrationMode, MigrationModeArgs

    Offline
    Offline
    Online
    Online
    MigrationModeOffline
    Offline
    MigrationModeOnline
    Online
    Offline
    Offline
    Online
    Online
    Offline
    Offline
    Online
    Online
    OFFLINE
    Offline
    ONLINE
    Online
    "Offline"
    Offline
    "Online"
    Online

    MigrationOption, MigrationOptionArgs

    Validate
    Validate
    Migrate
    Migrate
    ValidateAndMigrate
    ValidateAndMigrate
    MigrationOptionValidate
    Validate
    MigrationOptionMigrate
    Migrate
    MigrationOptionValidateAndMigrate
    ValidateAndMigrate
    Validate
    Validate
    Migrate
    Migrate
    ValidateAndMigrate
    ValidateAndMigrate
    Validate
    Validate
    Migrate
    Migrate
    ValidateAndMigrate
    ValidateAndMigrate
    VALIDATE
    Validate
    MIGRATE
    Migrate
    VALIDATE_AND_MIGRATE
    ValidateAndMigrate
    "Validate"
    Validate
    "Migrate"
    Migrate
    "ValidateAndMigrate"
    ValidateAndMigrate

    MigrationSecretParameters, MigrationSecretParametersArgs

    AdminCredentials Pulumi.AzureNative.DBforPostgreSQL.Inputs.AdminCredentials
    Credentials of administrator users for source and target servers.
    SourceServerUsername string
    Gets or sets the name of the user for the source server. This user doesn't need to be an administrator.
    TargetServerUsername string
    Gets or sets the name of the user for the target server. This user doesn't need to be an administrator.
    AdminCredentials AdminCredentials
    Credentials of administrator users for source and target servers.
    SourceServerUsername string
    Gets or sets the name of the user for the source server. This user doesn't need to be an administrator.
    TargetServerUsername string
    Gets or sets the name of the user for the target server. This user doesn't need to be an administrator.
    adminCredentials AdminCredentials
    Credentials of administrator users for source and target servers.
    sourceServerUsername String
    Gets or sets the name of the user for the source server. This user doesn't need to be an administrator.
    targetServerUsername String
    Gets or sets the name of the user for the target server. This user doesn't need to be an administrator.
    adminCredentials AdminCredentials
    Credentials of administrator users for source and target servers.
    sourceServerUsername string
    Gets or sets the name of the user for the source server. This user doesn't need to be an administrator.
    targetServerUsername string
    Gets or sets the name of the user for the target server. This user doesn't need to be an administrator.
    admin_credentials AdminCredentials
    Credentials of administrator users for source and target servers.
    source_server_username str
    Gets or sets the name of the user for the source server. This user doesn't need to be an administrator.
    target_server_username str
    Gets or sets the name of the user for the target server. This user doesn't need to be an administrator.
    adminCredentials Property Map
    Credentials of administrator users for source and target servers.
    sourceServerUsername String
    Gets or sets the name of the user for the source server. This user doesn't need to be an administrator.
    targetServerUsername String
    Gets or sets the name of the user for the target server. This user doesn't need to be an administrator.

    MigrationStatusResponse, MigrationStatusResponseArgs

    CurrentSubStateDetails Pulumi.AzureNative.DBforPostgreSQL.Inputs.MigrationSubStateDetailsResponse
    Current migration sub state details.
    Error string
    Error message, if any, for the migration state.
    State string
    State of migration.
    CurrentSubStateDetails MigrationSubStateDetailsResponse
    Current migration sub state details.
    Error string
    Error message, if any, for the migration state.
    State string
    State of migration.
    currentSubStateDetails MigrationSubStateDetailsResponse
    Current migration sub state details.
    error String
    Error message, if any, for the migration state.
    state String
    State of migration.
    currentSubStateDetails MigrationSubStateDetailsResponse
    Current migration sub state details.
    error string
    Error message, if any, for the migration state.
    state string
    State of migration.
    current_sub_state_details MigrationSubStateDetailsResponse
    Current migration sub state details.
    error str
    Error message, if any, for the migration state.
    state str
    State of migration.
    currentSubStateDetails Property Map
    Current migration sub state details.
    error String
    Error message, if any, for the migration state.
    state String
    State of migration.

    MigrationSubStateDetailsResponse, MigrationSubStateDetailsResponseArgs

    CurrentSubState string
    Substate of migration.
    DbDetails Dictionary<string, Pulumi.AzureNative.DBforPostgreSQL.Inputs.DbMigrationStatusResponse>
    ValidationDetails Pulumi.AzureNative.DBforPostgreSQL.Inputs.ValidationDetailsResponse
    Details for the validation for migration.
    CurrentSubState string
    Substate of migration.
    DbDetails map[string]DbMigrationStatusResponse
    ValidationDetails ValidationDetailsResponse
    Details for the validation for migration.
    currentSubState String
    Substate of migration.
    dbDetails Map<String,DbMigrationStatusResponse>
    validationDetails ValidationDetailsResponse
    Details for the validation for migration.
    currentSubState string
    Substate of migration.
    dbDetails {[key: string]: DbMigrationStatusResponse}
    validationDetails ValidationDetailsResponse
    Details for the validation for migration.
    current_sub_state str
    Substate of migration.
    db_details Mapping[str, DbMigrationStatusResponse]
    validation_details ValidationDetailsResponse
    Details for the validation for migration.
    currentSubState String
    Substate of migration.
    dbDetails Map<Property Map>
    validationDetails Property Map
    Details for the validation for migration.

    OverwriteDbsInTargetEnum, OverwriteDbsInTargetEnumArgs

    True
    True
    False
    False
    OverwriteDbsInTargetEnumTrue
    True
    OverwriteDbsInTargetEnumFalse
    False
    True
    True
    False
    False
    True
    True
    False
    False
    TRUE
    True
    FALSE
    False
    "True"
    True
    "False"
    False

    ServerSkuResponse, ServerSkuResponseArgs

    Name string
    Compute tier and size of the database server. This object is empty for an Azure Database for PostgreSQL single server.
    Tier string
    Tier of the compute assigned to a flexible server.
    Name string
    Compute tier and size of the database server. This object is empty for an Azure Database for PostgreSQL single server.
    Tier string
    Tier of the compute assigned to a flexible server.
    name String
    Compute tier and size of the database server. This object is empty for an Azure Database for PostgreSQL single server.
    tier String
    Tier of the compute assigned to a flexible server.
    name string
    Compute tier and size of the database server. This object is empty for an Azure Database for PostgreSQL single server.
    tier string
    Tier of the compute assigned to a flexible server.
    name str
    Compute tier and size of the database server. This object is empty for an Azure Database for PostgreSQL single server.
    tier str
    Tier of the compute assigned to a flexible server.
    name String
    Compute tier and size of the database server. This object is empty for an Azure Database for PostgreSQL single server.
    tier String
    Tier of the compute assigned to a flexible server.

    SourceType, SourceTypeArgs

    OnPremises
    OnPremises
    AWS
    AWS
    GCP
    GCP
    AzureVM
    AzureVM
    PostgreSQLSingleServer
    PostgreSQLSingleServer
    AWS_RDS
    AWS_RDS
    AWS_AURORA
    AWS_AURORA
    AWS_EC2
    AWS_EC2
    GCP_CloudSQL
    GCP_CloudSQL
    GCP_AlloyDB
    GCP_AlloyDB
    GCP_Compute
    GCP_Compute
    EDB
    EDB
    SourceTypeOnPremises
    OnPremises
    SourceTypeAWS
    AWS
    SourceTypeGCP
    GCP
    SourceTypeAzureVM
    AzureVM
    SourceTypePostgreSQLSingleServer
    PostgreSQLSingleServer
    SourceType_AWS_RDS
    AWS_RDS
    SourceType_AWS_AURORA
    AWS_AURORA
    SourceType_AWS_EC2
    AWS_EC2
    SourceType_GCP_CloudSQL
    GCP_CloudSQL
    SourceType_GCP_AlloyDB
    GCP_AlloyDB
    SourceType_GCP_Compute
    GCP_Compute
    SourceTypeEDB
    EDB
    OnPremises
    OnPremises
    AWS
    AWS
    GCP
    GCP
    AzureVM
    AzureVM
    PostgreSQLSingleServer
    PostgreSQLSingleServer
    AWS_RDS
    AWS_RDS
    AWS_AURORA
    AWS_AURORA
    AWS_EC2
    AWS_EC2
    GCP_CloudSQL
    GCP_CloudSQL
    GCP_AlloyDB
    GCP_AlloyDB
    GCP_Compute
    GCP_Compute
    EDB
    EDB
    OnPremises
    OnPremises
    AWS
    AWS
    GCP
    GCP
    AzureVM
    AzureVM
    PostgreSQLSingleServer
    PostgreSQLSingleServer
    AWS_RDS
    AWS_RDS
    AWS_AURORA
    AWS_AURORA
    AWS_EC2
    AWS_EC2
    GCP_CloudSQL
    GCP_CloudSQL
    GCP_AlloyDB
    GCP_AlloyDB
    GCP_Compute
    GCP_Compute
    EDB
    EDB
    ON_PREMISES
    OnPremises
    AWS
    AWS
    GCP
    GCP
    AZURE_VM
    AzureVM
    POSTGRE_SQL_SINGLE_SERVER
    PostgreSQLSingleServer
    AW_S_RDS
    AWS_RDS
    AW_S_AURORA
    AWS_AURORA
    AW_S_EC2
    AWS_EC2
    GC_P_CLOUD_SQL
    GCP_CloudSQL
    GC_P_ALLOY_DB
    GCP_AlloyDB
    GC_P_COMPUTE
    GCP_Compute
    EDB
    EDB
    "OnPremises"
    OnPremises
    "AWS"
    AWS
    "GCP"
    GCP
    "AzureVM"
    AzureVM
    "PostgreSQLSingleServer"
    PostgreSQLSingleServer
    "AWS_RDS"
    AWS_RDS
    "AWS_AURORA"
    AWS_AURORA
    "AWS_EC2"
    AWS_EC2
    "GCP_CloudSQL"
    GCP_CloudSQL
    "GCP_AlloyDB"
    GCP_AlloyDB
    "GCP_Compute"
    GCP_Compute
    "EDB"
    EDB

    SslMode, SslModeArgs

    Prefer
    Prefer
    Require
    Require
    VerifyCA
    VerifyCA
    VerifyFull
    VerifyFull
    SslModePrefer
    Prefer
    SslModeRequire
    Require
    SslModeVerifyCA
    VerifyCA
    SslModeVerifyFull
    VerifyFull
    Prefer
    Prefer
    Require
    Require
    VerifyCA
    VerifyCA
    VerifyFull
    VerifyFull
    Prefer
    Prefer
    Require
    Require
    VerifyCA
    VerifyCA
    VerifyFull
    VerifyFull
    PREFER
    Prefer
    REQUIRE
    Require
    VERIFY_CA
    VerifyCA
    VERIFY_FULL
    VerifyFull
    "Prefer"
    Prefer
    "Require"
    Require
    "VerifyCA"
    VerifyCA
    "VerifyFull"
    VerifyFull

    StartDataMigrationEnum, StartDataMigrationEnumArgs

    True
    True
    False
    False
    StartDataMigrationEnumTrue
    True
    StartDataMigrationEnumFalse
    False
    True
    True
    False
    False
    True
    True
    False
    False
    TRUE
    True
    FALSE
    False
    "True"
    True
    "False"
    False

    SystemDataResponse, SystemDataResponseArgs

    CreatedAt string
    The timestamp of resource creation (UTC).
    CreatedBy string
    The identity that created the resource.
    CreatedByType string
    The type of identity that created the resource.
    LastModifiedAt string
    The timestamp of resource last modification (UTC)
    LastModifiedBy string
    The identity that last modified the resource.
    LastModifiedByType string
    The type of identity that last modified the resource.
    CreatedAt string
    The timestamp of resource creation (UTC).
    CreatedBy string
    The identity that created the resource.
    CreatedByType string
    The type of identity that created the resource.
    LastModifiedAt string
    The timestamp of resource last modification (UTC)
    LastModifiedBy string
    The identity that last modified the resource.
    LastModifiedByType string
    The type of identity that last modified the resource.
    createdAt String
    The timestamp of resource creation (UTC).
    createdBy String
    The identity that created the resource.
    createdByType String
    The type of identity that created the resource.
    lastModifiedAt String
    The timestamp of resource last modification (UTC)
    lastModifiedBy String
    The identity that last modified the resource.
    lastModifiedByType String
    The type of identity that last modified the resource.
    createdAt string
    The timestamp of resource creation (UTC).
    createdBy string
    The identity that created the resource.
    createdByType string
    The type of identity that created the resource.
    lastModifiedAt string
    The timestamp of resource last modification (UTC)
    lastModifiedBy string
    The identity that last modified the resource.
    lastModifiedByType string
    The type of identity that last modified the resource.
    created_at str
    The timestamp of resource creation (UTC).
    created_by str
    The identity that created the resource.
    created_by_type str
    The type of identity that created the resource.
    last_modified_at str
    The timestamp of resource last modification (UTC)
    last_modified_by str
    The identity that last modified the resource.
    last_modified_by_type str
    The type of identity that last modified the resource.
    createdAt String
    The timestamp of resource creation (UTC).
    createdBy String
    The identity that created the resource.
    createdByType String
    The type of identity that created the resource.
    lastModifiedAt String
    The timestamp of resource last modification (UTC)
    lastModifiedBy String
    The identity that last modified the resource.
    lastModifiedByType String
    The type of identity that last modified the resource.

    TriggerCutoverEnum, TriggerCutoverEnumArgs

    True
    True
    False
    False
    TriggerCutoverEnumTrue
    True
    TriggerCutoverEnumFalse
    False
    True
    True
    False
    False
    True
    True
    False
    False
    TRUE
    True
    FALSE
    False
    "True"
    True
    "False"
    False

    ValidationDetailsResponse, ValidationDetailsResponseArgs

    DbLevelValidationDetails List<Pulumi.AzureNative.DBforPostgreSQL.Inputs.DbLevelValidationStatusResponse>
    Details of server level validations.
    ServerLevelValidationDetails List<Pulumi.AzureNative.DBforPostgreSQL.Inputs.ValidationSummaryItemResponse>
    Details of server level validations.
    Status string
    Validation status for migration.
    ValidationEndTimeInUtc string
    End time (UTC) for validation.
    ValidationStartTimeInUtc string
    Start time (UTC) for validation.
    DbLevelValidationDetails []DbLevelValidationStatusResponse
    Details of server level validations.
    ServerLevelValidationDetails []ValidationSummaryItemResponse
    Details of server level validations.
    Status string
    Validation status for migration.
    ValidationEndTimeInUtc string
    End time (UTC) for validation.
    ValidationStartTimeInUtc string
    Start time (UTC) for validation.
    dbLevelValidationDetails List<DbLevelValidationStatusResponse>
    Details of server level validations.
    serverLevelValidationDetails List<ValidationSummaryItemResponse>
    Details of server level validations.
    status String
    Validation status for migration.
    validationEndTimeInUtc String
    End time (UTC) for validation.
    validationStartTimeInUtc String
    Start time (UTC) for validation.
    dbLevelValidationDetails DbLevelValidationStatusResponse[]
    Details of server level validations.
    serverLevelValidationDetails ValidationSummaryItemResponse[]
    Details of server level validations.
    status string
    Validation status for migration.
    validationEndTimeInUtc string
    End time (UTC) for validation.
    validationStartTimeInUtc string
    Start time (UTC) for validation.
    db_level_validation_details Sequence[DbLevelValidationStatusResponse]
    Details of server level validations.
    server_level_validation_details Sequence[ValidationSummaryItemResponse]
    Details of server level validations.
    status str
    Validation status for migration.
    validation_end_time_in_utc str
    End time (UTC) for validation.
    validation_start_time_in_utc str
    Start time (UTC) for validation.
    dbLevelValidationDetails List<Property Map>
    Details of server level validations.
    serverLevelValidationDetails List<Property Map>
    Details of server level validations.
    status String
    Validation status for migration.
    validationEndTimeInUtc String
    End time (UTC) for validation.
    validationStartTimeInUtc String
    Start time (UTC) for validation.

    ValidationMessageResponse, ValidationMessageResponseArgs

    Message string
    Validation message string.
    State string
    Severity of validation message.
    Message string
    Validation message string.
    State string
    Severity of validation message.
    message String
    Validation message string.
    state String
    Severity of validation message.
    message string
    Validation message string.
    state string
    Severity of validation message.
    message str
    Validation message string.
    state str
    Severity of validation message.
    message String
    Validation message string.
    state String
    Severity of validation message.

    ValidationSummaryItemResponse, ValidationSummaryItemResponseArgs

    Messages List<Pulumi.AzureNative.DBforPostgreSQL.Inputs.ValidationMessageResponse>
    Validation messages.
    State string
    Validation status for migration.
    Type string
    Validation type.
    Messages []ValidationMessageResponse
    Validation messages.
    State string
    Validation status for migration.
    Type string
    Validation type.
    messages List<ValidationMessageResponse>
    Validation messages.
    state String
    Validation status for migration.
    type String
    Validation type.
    messages ValidationMessageResponse[]
    Validation messages.
    state string
    Validation status for migration.
    type string
    Validation type.
    messages Sequence[ValidationMessageResponse]
    Validation messages.
    state str
    Validation status for migration.
    type str
    Validation type.
    messages List<Property Map>
    Validation messages.
    state String
    Validation status for migration.
    type String
    Validation type.

    Import

    An existing resource can be imported using its type token, name, and identifier, e.g.

    $ pulumi import azure-native:dbforpostgresql:Migration examplemigration /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{targetDbServerName}/migrations/{migrationName} 
    

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

    Package Details

    Repository
    Azure Native pulumi/pulumi-azure-native
    License
    Apache-2.0
    azure-native logo
    This is the latest version of Azure Native. Use the Azure Native v2 docs if using the v2 version of this package.
    Azure Native v3.7.1 published on Wednesday, Aug 13, 2025 by Pulumi