1. Packages
  2. Azure Native
  3. API Docs
  4. workloads
  5. SAPVirtualInstance
This is the latest version of Azure Native. Use the Azure Native v1 docs if using the v1 version of this package.
Azure Native v2.73.0 published on Wednesday, Nov 20, 2024 by Pulumi

azure-native.workloads.SAPVirtualInstance

Explore with Pulumi AI

azure-native logo
This is the latest version of Azure Native. Use the Azure Native v1 docs if using the v1 version of this package.
Azure Native v2.73.0 published on Wednesday, Nov 20, 2024 by Pulumi

    Define the Virtual Instance for SAP solutions resource. Azure REST API version: 2023-04-01. Prior API version in Azure Native 1.x: 2021-12-01-preview.

    Other available API versions: 2023-10-01-preview.

    Example Usage

    Create Infrastructure (with OS configuration) with custom resource names for Distributed System

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 6,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    CustomResourceNames = new AzureNative.Workloads.Inputs.ThreeTierFullResourceNamesArgs
                    {
                        ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerFullResourceNamesArgs
                        {
                            AvailabilitySetName = "appAvSet",
                            VirtualMachines = new[]
                            {
                                new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                                {
                                    DataDiskNames = 
                                    {
                                        { "default", new[]
                                        {
                                            "app0disk0",
                                        } },
                                    },
                                    HostName = "apphostName0",
                                    NetworkInterfaces = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                                        {
                                            NetworkInterfaceName = "appnic0",
                                        },
                                    },
                                    OsDiskName = "app0osdisk",
                                    VmName = "appvm0",
                                },
                                new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                                {
                                    DataDiskNames = 
                                    {
                                        { "default", new[]
                                        {
                                            "app1disk0",
                                        } },
                                    },
                                    HostName = "apphostName1",
                                    NetworkInterfaces = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                                        {
                                            NetworkInterfaceName = "appnic1",
                                        },
                                    },
                                    OsDiskName = "app1osdisk",
                                    VmName = "appvm1",
                                },
                            },
                        },
                        CentralServer = new AzureNative.Workloads.Inputs.CentralServerFullResourceNamesArgs
                        {
                            VirtualMachines = new[]
                            {
                                new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                                {
                                    DataDiskNames = 
                                    {
                                        { "default", new[]
                                        {
                                            "ascsdisk0",
                                        } },
                                    },
                                    HostName = "ascshostName",
                                    NetworkInterfaces = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                                        {
                                            NetworkInterfaceName = "ascsnic",
                                        },
                                    },
                                    OsDiskName = "ascsosdisk",
                                    VmName = "ascsvm",
                                },
                            },
                        },
                        DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseServerFullResourceNamesArgs
                        {
                            VirtualMachines = new[]
                            {
                                new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                                {
                                    DataDiskNames = 
                                    {
                                        { "hanaData", new[]
                                        {
                                            "hanadata0",
                                            "hanadata1",
                                        } },
                                        { "hanaLog", new[]
                                        {
                                            "hanalog0",
                                            "hanalog1",
                                            "hanalog2",
                                        } },
                                        { "hanaShared", new[]
                                        {
                                            "hanashared0",
                                            "hanashared1",
                                        } },
                                        { "usrSap", new[]
                                        {
                                            "usrsap0",
                                        } },
                                    },
                                    HostName = "dbhostName",
                                    NetworkInterfaces = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                                        {
                                            NetworkInterfaceName = "dbnic",
                                        },
                                    },
                                    OsDiskName = "dbosdisk",
                                    VmName = "dbvm",
                                },
                            },
                        },
                        NamingPatternType = "FullResourceName",
                        SharedStorage = new AzureNative.Workloads.Inputs.SharedStorageResourceNamesArgs
                        {
                            SharedStorageAccountName = "storageacc",
                            SharedStorageAccountPrivateEndPointName = "peForxNFS",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 6,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					CustomResourceNames: workloads.ThreeTierFullResourceNames{
    						ApplicationServer: workloads.ApplicationServerFullResourceNames{
    							AvailabilitySetName: "appAvSet",
    							VirtualMachines: []workloads.VirtualMachineResourceNames{
    								{
    									DataDiskNames: {
    										"default": []string{
    											"app0disk0",
    										},
    									},
    									HostName: "apphostName0",
    									NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    										{
    											NetworkInterfaceName: "appnic0",
    										},
    									},
    									OsDiskName: "app0osdisk",
    									VmName:     "appvm0",
    								},
    								{
    									DataDiskNames: {
    										"default": []string{
    											"app1disk0",
    										},
    									},
    									HostName: "apphostName1",
    									NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    										{
    											NetworkInterfaceName: "appnic1",
    										},
    									},
    									OsDiskName: "app1osdisk",
    									VmName:     "appvm1",
    								},
    							},
    						},
    						CentralServer: workloads.CentralServerFullResourceNames{
    							VirtualMachines: []workloads.VirtualMachineResourceNames{
    								{
    									DataDiskNames: {
    										"default": []string{
    											"ascsdisk0",
    										},
    									},
    									HostName: "ascshostName",
    									NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    										{
    											NetworkInterfaceName: "ascsnic",
    										},
    									},
    									OsDiskName: "ascsosdisk",
    									VmName:     "ascsvm",
    								},
    							},
    						},
    						DatabaseServer: workloads.DatabaseServerFullResourceNames{
    							VirtualMachines: []workloads.VirtualMachineResourceNames{
    								{
    									DataDiskNames: {
    										"hanaData": []string{
    											"hanadata0",
    											"hanadata1",
    										},
    										"hanaLog": []string{
    											"hanalog0",
    											"hanalog1",
    											"hanalog2",
    										},
    										"hanaShared": []string{
    											"hanashared0",
    											"hanashared1",
    										},
    										"usrSap": []string{
    											"usrsap0",
    										},
    									},
    									HostName: "dbhostName",
    									NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    										{
    											NetworkInterfaceName: "dbnic",
    										},
    									},
    									OsDiskName: "dbosdisk",
    									VmName:     "dbvm",
    								},
    							},
    						},
    						NamingPatternType: "FullResourceName",
    						SharedStorage: workloads.SharedStorageResourceNames{
    							SharedStorageAccountName:                "storageacc",
    							SharedStorageAccountPrivateEndPointName: "peForxNFS",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType:  workloads.SAPDatabaseTypeHANA,
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(6)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(1)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .customResourceNames(ThreeTierFullResourceNamesArgs.builder()
                            .applicationServer(ApplicationServerFullResourceNamesArgs.builder()
                                .availabilitySetName("appAvSet")
                                .virtualMachines(                            
                                    VirtualMachineResourceNamesArgs.builder()
                                        .dataDiskNames(Map.of("default", "app0disk0"))
                                        .hostName("apphostName0")
                                        .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                                            .networkInterfaceName("appnic0")
                                            .build())
                                        .osDiskName("app0osdisk")
                                        .vmName("appvm0")
                                        .build(),
                                    VirtualMachineResourceNamesArgs.builder()
                                        .dataDiskNames(Map.of("default", "app1disk0"))
                                        .hostName("apphostName1")
                                        .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                                            .networkInterfaceName("appnic1")
                                            .build())
                                        .osDiskName("app1osdisk")
                                        .vmName("appvm1")
                                        .build())
                                .build())
                            .centralServer(CentralServerFullResourceNamesArgs.builder()
                                .virtualMachines(VirtualMachineResourceNamesArgs.builder()
                                    .dataDiskNames(Map.of("default", "ascsdisk0"))
                                    .hostName("ascshostName")
                                    .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                                        .networkInterfaceName("ascsnic")
                                        .build())
                                    .osDiskName("ascsosdisk")
                                    .vmName("ascsvm")
                                    .build())
                                .build())
                            .databaseServer(DatabaseServerFullResourceNamesArgs.builder()
                                .virtualMachines(VirtualMachineResourceNamesArgs.builder()
                                    .dataDiskNames(Map.ofEntries(
                                        Map.entry("hanaData",                                     
                                            "hanadata0",
                                            "hanadata1"),
                                        Map.entry("hanaLog",                                     
                                            "hanalog0",
                                            "hanalog1",
                                            "hanalog2"),
                                        Map.entry("hanaShared",                                     
                                            "hanashared0",
                                            "hanashared1"),
                                        Map.entry("usrSap", "usrsap0")
                                    ))
                                    .hostName("dbhostName")
                                    .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                                        .networkInterfaceName("dbnic")
                                        .build())
                                    .osDiskName("dbosdisk")
                                    .vmName("dbvm")
                                    .build())
                                .build())
                            .namingPatternType("FullResourceName")
                            .sharedStorage(SharedStorageResourceNamesArgs.builder()
                                .sharedStorageAccountName("storageacc")
                                .sharedStorageAccountPrivateEndPointName("peForxNFS")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .instanceCount(1)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 6,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "custom_resource_names": {
                    "application_server": {
                        "availability_set_name": "appAvSet",
                        "virtual_machines": [
                            {
                                "data_disk_names": {
                                    "default": ["app0disk0"],
                                },
                                "host_name": "apphostName0",
                                "network_interfaces": [{
                                    "network_interface_name": "appnic0",
                                }],
                                "os_disk_name": "app0osdisk",
                                "vm_name": "appvm0",
                            },
                            {
                                "data_disk_names": {
                                    "default": ["app1disk0"],
                                },
                                "host_name": "apphostName1",
                                "network_interfaces": [{
                                    "network_interface_name": "appnic1",
                                }],
                                "os_disk_name": "app1osdisk",
                                "vm_name": "appvm1",
                            },
                        ],
                    },
                    "central_server": {
                        "virtual_machines": [{
                            "data_disk_names": {
                                "default": ["ascsdisk0"],
                            },
                            "host_name": "ascshostName",
                            "network_interfaces": [{
                                "network_interface_name": "ascsnic",
                            }],
                            "os_disk_name": "ascsosdisk",
                            "vm_name": "ascsvm",
                        }],
                    },
                    "database_server": {
                        "virtual_machines": [{
                            "data_disk_names": {
                                "hanaData": [
                                    "hanadata0",
                                    "hanadata1",
                                ],
                                "hanaLog": [
                                    "hanalog0",
                                    "hanalog1",
                                    "hanalog2",
                                ],
                                "hanaShared": [
                                    "hanashared0",
                                    "hanashared1",
                                ],
                                "usrSap": ["usrsap0"],
                            },
                            "host_name": "dbhostName",
                            "network_interfaces": [{
                                "network_interface_name": "dbnic",
                            }],
                            "os_disk_name": "dbosdisk",
                            "vm_name": "dbvm",
                        }],
                    },
                    "naming_pattern_type": "FullResourceName",
                    "shared_storage": {
                        "shared_storage_account_name": "storageacc",
                        "shared_storage_account_private_end_point_name": "peForxNFS",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 6,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 1,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                customResourceNames: {
                    applicationServer: {
                        availabilitySetName: "appAvSet",
                        virtualMachines: [
                            {
                                dataDiskNames: {
                                    "default": ["app0disk0"],
                                },
                                hostName: "apphostName0",
                                networkInterfaces: [{
                                    networkInterfaceName: "appnic0",
                                }],
                                osDiskName: "app0osdisk",
                                vmName: "appvm0",
                            },
                            {
                                dataDiskNames: {
                                    "default": ["app1disk0"],
                                },
                                hostName: "apphostName1",
                                networkInterfaces: [{
                                    networkInterfaceName: "appnic1",
                                }],
                                osDiskName: "app1osdisk",
                                vmName: "appvm1",
                            },
                        ],
                    },
                    centralServer: {
                        virtualMachines: [{
                            dataDiskNames: {
                                "default": ["ascsdisk0"],
                            },
                            hostName: "ascshostName",
                            networkInterfaces: [{
                                networkInterfaceName: "ascsnic",
                            }],
                            osDiskName: "ascsosdisk",
                            vmName: "ascsvm",
                        }],
                    },
                    databaseServer: {
                        virtualMachines: [{
                            dataDiskNames: {
                                hanaData: [
                                    "hanadata0",
                                    "hanadata1",
                                ],
                                hanaLog: [
                                    "hanalog0",
                                    "hanalog1",
                                    "hanalog2",
                                ],
                                hanaShared: [
                                    "hanashared0",
                                    "hanashared1",
                                ],
                                usrSap: ["usrsap0"],
                            },
                            hostName: "dbhostName",
                            networkInterfaces: [{
                                networkInterfaceName: "dbnic",
                            }],
                            osDiskName: "dbosdisk",
                            vmName: "dbvm",
                        }],
                    },
                    namingPatternType: "FullResourceName",
                    sharedStorage: {
                        sharedStorageAccountName: "storageacc",
                        sharedStorageAccountPrivateEndPointName: "peForxNFS",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    instanceCount: 1,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 6
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 1
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E16ds_v4
              customResourceNames:
                applicationServer:
                  availabilitySetName: appAvSet
                  virtualMachines:
                    - dataDiskNames:
                        default:
                          - app0disk0
                      hostName: apphostName0
                      networkInterfaces:
                        - networkInterfaceName: appnic0
                      osDiskName: app0osdisk
                      vmName: appvm0
                    - dataDiskNames:
                        default:
                          - app1disk0
                      hostName: apphostName1
                      networkInterfaces:
                        - networkInterfaceName: appnic1
                      osDiskName: app1osdisk
                      vmName: appvm1
                centralServer:
                  virtualMachines:
                    - dataDiskNames:
                        default:
                          - ascsdisk0
                      hostName: ascshostName
                      networkInterfaces:
                        - networkInterfaceName: ascsnic
                      osDiskName: ascsosdisk
                      vmName: ascsvm
                databaseServer:
                  virtualMachines:
                    - dataDiskNames:
                        hanaData:
                          - hanadata0
                          - hanadata1
                        hanaLog:
                          - hanalog0
                          - hanalog1
                          - hanalog2
                        hanaShared:
                          - hanashared0
                          - hanashared1
                        usrSap:
                          - usrsap0
                      hostName: dbhostName
                      networkInterfaces:
                        - networkInterfaceName: dbnic
                      osDiskName: dbosdisk
                      vmName: dbvm
                namingPatternType: FullResourceName
                sharedStorage:
                  sharedStorageAccountName: storageacc
                  sharedStorageAccountPrivateEndPointName: peForxNFS
              databaseServer:
                databaseType: HANA
                instanceCount: 1
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
            osSapConfiguration:
              sapFqdn: xyz.test.com
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    

    Create Infrastructure (with OS configuration) with custom resource names for HA System with Availability Set

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 6,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    CustomResourceNames = new AzureNative.Workloads.Inputs.ThreeTierFullResourceNamesArgs
                    {
                        ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerFullResourceNamesArgs
                        {
                            AvailabilitySetName = "appAvSet",
                            VirtualMachines = new[]
                            {
                                new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                                {
                                    DataDiskNames = 
                                    {
                                        { "default", new[]
                                        {
                                            "app0disk0",
                                        } },
                                    },
                                    HostName = "apphostName0",
                                    NetworkInterfaces = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                                        {
                                            NetworkInterfaceName = "appnic0",
                                        },
                                    },
                                    OsDiskName = "app0osdisk",
                                    VmName = "appvm0",
                                },
                                new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                                {
                                    DataDiskNames = 
                                    {
                                        { "default", new[]
                                        {
                                            "app1disk0",
                                        } },
                                    },
                                    HostName = "apphostName1",
                                    NetworkInterfaces = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                                        {
                                            NetworkInterfaceName = "appnic1",
                                        },
                                    },
                                    OsDiskName = "app1osdisk",
                                    VmName = "appvm1",
                                },
                            },
                        },
                        CentralServer = new AzureNative.Workloads.Inputs.CentralServerFullResourceNamesArgs
                        {
                            AvailabilitySetName = "csAvSet",
                            LoadBalancer = new AzureNative.Workloads.Inputs.LoadBalancerResourceNamesArgs
                            {
                                BackendPoolNames = new[]
                                {
                                    "ascsBackendPool",
                                },
                                FrontendIpConfigurationNames = new[]
                                {
                                    "ascsip0",
                                    "ersip0",
                                },
                                HealthProbeNames = new[]
                                {
                                    "ascsHealthProbe",
                                    "ersHealthProbe",
                                },
                                LoadBalancerName = "ascslb",
                            },
                            VirtualMachines = new[]
                            {
                                new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                                {
                                    HostName = "ascshostName",
                                    NetworkInterfaces = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                                        {
                                            NetworkInterfaceName = "ascsnic",
                                        },
                                    },
                                    OsDiskName = "ascsosdisk",
                                    VmName = "ascsvm",
                                },
                                new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                                {
                                    HostName = "ershostName",
                                    NetworkInterfaces = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                                        {
                                            NetworkInterfaceName = "ersnic",
                                        },
                                    },
                                    OsDiskName = "ersosdisk",
                                    VmName = "ersvm",
                                },
                            },
                        },
                        DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseServerFullResourceNamesArgs
                        {
                            AvailabilitySetName = "dbAvSet",
                            LoadBalancer = new AzureNative.Workloads.Inputs.LoadBalancerResourceNamesArgs
                            {
                                BackendPoolNames = new[]
                                {
                                    "dbBackendPool",
                                },
                                FrontendIpConfigurationNames = new[]
                                {
                                    "dbip",
                                },
                                HealthProbeNames = new[]
                                {
                                    "dbHealthProbe",
                                },
                                LoadBalancerName = "dblb",
                            },
                            VirtualMachines = new[]
                            {
                                new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                                {
                                    DataDiskNames = 
                                    {
                                        { "hanaData", new[]
                                        {
                                            "hanadatapr0",
                                            "hanadatapr1",
                                        } },
                                        { "hanaLog", new[]
                                        {
                                            "hanalogpr0",
                                            "hanalogpr1",
                                            "hanalogpr2",
                                        } },
                                        { "hanaShared", new[]
                                        {
                                            "hanasharedpr0",
                                            "hanasharedpr1",
                                        } },
                                        { "usrSap", new[]
                                        {
                                            "usrsappr0",
                                        } },
                                    },
                                    HostName = "dbprhostName",
                                    NetworkInterfaces = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                                        {
                                            NetworkInterfaceName = "dbprnic",
                                        },
                                    },
                                    OsDiskName = "dbprosdisk",
                                    VmName = "dbvmpr",
                                },
                                new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                                {
                                    DataDiskNames = 
                                    {
                                        { "hanaData", new[]
                                        {
                                            "hanadatasr0",
                                            "hanadatasr1",
                                        } },
                                        { "hanaLog", new[]
                                        {
                                            "hanalogsr0",
                                            "hanalogsr1",
                                            "hanalogsr2",
                                        } },
                                        { "hanaShared", new[]
                                        {
                                            "hanasharedsr0",
                                            "hanasharedsr1",
                                        } },
                                        { "usrSap", new[]
                                        {
                                            "usrsapsr0",
                                        } },
                                    },
                                    HostName = "dbsrhostName",
                                    NetworkInterfaces = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                                        {
                                            NetworkInterfaceName = "dbsrnic",
                                        },
                                    },
                                    OsDiskName = "dbsrosdisk",
                                    VmName = "dbvmsr",
                                },
                            },
                        },
                        NamingPatternType = "FullResourceName",
                        SharedStorage = new AzureNative.Workloads.Inputs.SharedStorageResourceNamesArgs
                        {
                            SharedStorageAccountName = "storageacc",
                            SharedStorageAccountPrivateEndPointName = "peForxNFS",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                    HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
                    {
                        HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilitySet,
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 6,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					CustomResourceNames: workloads.ThreeTierFullResourceNames{
    						ApplicationServer: workloads.ApplicationServerFullResourceNames{
    							AvailabilitySetName: "appAvSet",
    							VirtualMachines: []workloads.VirtualMachineResourceNames{
    								{
    									DataDiskNames: {
    										"default": []string{
    											"app0disk0",
    										},
    									},
    									HostName: "apphostName0",
    									NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    										{
    											NetworkInterfaceName: "appnic0",
    										},
    									},
    									OsDiskName: "app0osdisk",
    									VmName:     "appvm0",
    								},
    								{
    									DataDiskNames: {
    										"default": []string{
    											"app1disk0",
    										},
    									},
    									HostName: "apphostName1",
    									NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    										{
    											NetworkInterfaceName: "appnic1",
    										},
    									},
    									OsDiskName: "app1osdisk",
    									VmName:     "appvm1",
    								},
    							},
    						},
    						CentralServer: workloads.CentralServerFullResourceNames{
    							AvailabilitySetName: "csAvSet",
    							LoadBalancer: workloads.LoadBalancerResourceNames{
    								BackendPoolNames: []string{
    									"ascsBackendPool",
    								},
    								FrontendIpConfigurationNames: []string{
    									"ascsip0",
    									"ersip0",
    								},
    								HealthProbeNames: []string{
    									"ascsHealthProbe",
    									"ersHealthProbe",
    								},
    								LoadBalancerName: "ascslb",
    							},
    							VirtualMachines: []workloads.VirtualMachineResourceNames{
    								{
    									HostName: "ascshostName",
    									NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    										{
    											NetworkInterfaceName: "ascsnic",
    										},
    									},
    									OsDiskName: "ascsosdisk",
    									VmName:     "ascsvm",
    								},
    								{
    									HostName: "ershostName",
    									NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    										{
    											NetworkInterfaceName: "ersnic",
    										},
    									},
    									OsDiskName: "ersosdisk",
    									VmName:     "ersvm",
    								},
    							},
    						},
    						DatabaseServer: workloads.DatabaseServerFullResourceNames{
    							AvailabilitySetName: "dbAvSet",
    							LoadBalancer: workloads.LoadBalancerResourceNames{
    								BackendPoolNames: []string{
    									"dbBackendPool",
    								},
    								FrontendIpConfigurationNames: []string{
    									"dbip",
    								},
    								HealthProbeNames: []string{
    									"dbHealthProbe",
    								},
    								LoadBalancerName: "dblb",
    							},
    							VirtualMachines: []workloads.VirtualMachineResourceNames{
    								{
    									DataDiskNames: {
    										"hanaData": []string{
    											"hanadatapr0",
    											"hanadatapr1",
    										},
    										"hanaLog": []string{
    											"hanalogpr0",
    											"hanalogpr1",
    											"hanalogpr2",
    										},
    										"hanaShared": []string{
    											"hanasharedpr0",
    											"hanasharedpr1",
    										},
    										"usrSap": []string{
    											"usrsappr0",
    										},
    									},
    									HostName: "dbprhostName",
    									NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    										{
    											NetworkInterfaceName: "dbprnic",
    										},
    									},
    									OsDiskName: "dbprosdisk",
    									VmName:     "dbvmpr",
    								},
    								{
    									DataDiskNames: {
    										"hanaData": []string{
    											"hanadatasr0",
    											"hanadatasr1",
    										},
    										"hanaLog": []string{
    											"hanalogsr0",
    											"hanalogsr1",
    											"hanalogsr2",
    										},
    										"hanaShared": []string{
    											"hanasharedsr0",
    											"hanasharedsr1",
    										},
    										"usrSap": []string{
    											"usrsapsr0",
    										},
    									},
    									HostName: "dbsrhostName",
    									NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    										{
    											NetworkInterfaceName: "dbsrnic",
    										},
    									},
    									OsDiskName: "dbsrosdisk",
    									VmName:     "dbvmsr",
    								},
    							},
    						},
    						NamingPatternType: "FullResourceName",
    						SharedStorage: workloads.SharedStorageResourceNames{
    							SharedStorageAccountName:                "storageacc",
    							SharedStorageAccountPrivateEndPointName: "peForxNFS",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType:  workloads.SAPDatabaseTypeHANA,
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    					HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
    						HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilitySet,
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(6)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .customResourceNames(ThreeTierFullResourceNamesArgs.builder()
                            .applicationServer(ApplicationServerFullResourceNamesArgs.builder()
                                .availabilitySetName("appAvSet")
                                .virtualMachines(                            
                                    VirtualMachineResourceNamesArgs.builder()
                                        .dataDiskNames(Map.of("default", "app0disk0"))
                                        .hostName("apphostName0")
                                        .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                                            .networkInterfaceName("appnic0")
                                            .build())
                                        .osDiskName("app0osdisk")
                                        .vmName("appvm0")
                                        .build(),
                                    VirtualMachineResourceNamesArgs.builder()
                                        .dataDiskNames(Map.of("default", "app1disk0"))
                                        .hostName("apphostName1")
                                        .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                                            .networkInterfaceName("appnic1")
                                            .build())
                                        .osDiskName("app1osdisk")
                                        .vmName("appvm1")
                                        .build())
                                .build())
                            .centralServer(CentralServerFullResourceNamesArgs.builder()
                                .availabilitySetName("csAvSet")
                                .loadBalancer(LoadBalancerResourceNamesArgs.builder()
                                    .backendPoolNames("ascsBackendPool")
                                    .frontendIpConfigurationNames(                                
                                        "ascsip0",
                                        "ersip0")
                                    .healthProbeNames(                                
                                        "ascsHealthProbe",
                                        "ersHealthProbe")
                                    .loadBalancerName("ascslb")
                                    .build())
                                .virtualMachines(                            
                                    VirtualMachineResourceNamesArgs.builder()
                                        .hostName("ascshostName")
                                        .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                                            .networkInterfaceName("ascsnic")
                                            .build())
                                        .osDiskName("ascsosdisk")
                                        .vmName("ascsvm")
                                        .build(),
                                    VirtualMachineResourceNamesArgs.builder()
                                        .hostName("ershostName")
                                        .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                                            .networkInterfaceName("ersnic")
                                            .build())
                                        .osDiskName("ersosdisk")
                                        .vmName("ersvm")
                                        .build())
                                .build())
                            .databaseServer(DatabaseServerFullResourceNamesArgs.builder()
                                .availabilitySetName("dbAvSet")
                                .loadBalancer(LoadBalancerResourceNamesArgs.builder()
                                    .backendPoolNames("dbBackendPool")
                                    .frontendIpConfigurationNames("dbip")
                                    .healthProbeNames("dbHealthProbe")
                                    .loadBalancerName("dblb")
                                    .build())
                                .virtualMachines(                            
                                    VirtualMachineResourceNamesArgs.builder()
                                        .dataDiskNames(Map.ofEntries(
                                            Map.entry("hanaData",                                         
                                                "hanadatapr0",
                                                "hanadatapr1"),
                                            Map.entry("hanaLog",                                         
                                                "hanalogpr0",
                                                "hanalogpr1",
                                                "hanalogpr2"),
                                            Map.entry("hanaShared",                                         
                                                "hanasharedpr0",
                                                "hanasharedpr1"),
                                            Map.entry("usrSap", "usrsappr0")
                                        ))
                                        .hostName("dbprhostName")
                                        .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                                            .networkInterfaceName("dbprnic")
                                            .build())
                                        .osDiskName("dbprosdisk")
                                        .vmName("dbvmpr")
                                        .build(),
                                    VirtualMachineResourceNamesArgs.builder()
                                        .dataDiskNames(Map.ofEntries(
                                            Map.entry("hanaData",                                         
                                                "hanadatasr0",
                                                "hanadatasr1"),
                                            Map.entry("hanaLog",                                         
                                                "hanalogsr0",
                                                "hanalogsr1",
                                                "hanalogsr2"),
                                            Map.entry("hanaShared",                                         
                                                "hanasharedsr0",
                                                "hanasharedsr1"),
                                            Map.entry("usrSap", "usrsapsr0")
                                        ))
                                        .hostName("dbsrhostName")
                                        .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                                            .networkInterfaceName("dbsrnic")
                                            .build())
                                        .osDiskName("dbsrosdisk")
                                        .vmName("dbvmsr")
                                        .build())
                                .build())
                            .namingPatternType("FullResourceName")
                            .sharedStorage(SharedStorageResourceNamesArgs.builder()
                                .sharedStorageAccountName("storageacc")
                                .sharedStorageAccountPrivateEndPointName("peForxNFS")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
                            .highAvailabilityType("AvailabilitySet")
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 6,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "custom_resource_names": {
                    "application_server": {
                        "availability_set_name": "appAvSet",
                        "virtual_machines": [
                            {
                                "data_disk_names": {
                                    "default": ["app0disk0"],
                                },
                                "host_name": "apphostName0",
                                "network_interfaces": [{
                                    "network_interface_name": "appnic0",
                                }],
                                "os_disk_name": "app0osdisk",
                                "vm_name": "appvm0",
                            },
                            {
                                "data_disk_names": {
                                    "default": ["app1disk0"],
                                },
                                "host_name": "apphostName1",
                                "network_interfaces": [{
                                    "network_interface_name": "appnic1",
                                }],
                                "os_disk_name": "app1osdisk",
                                "vm_name": "appvm1",
                            },
                        ],
                    },
                    "central_server": {
                        "availability_set_name": "csAvSet",
                        "load_balancer": {
                            "backend_pool_names": ["ascsBackendPool"],
                            "frontend_ip_configuration_names": [
                                "ascsip0",
                                "ersip0",
                            ],
                            "health_probe_names": [
                                "ascsHealthProbe",
                                "ersHealthProbe",
                            ],
                            "load_balancer_name": "ascslb",
                        },
                        "virtual_machines": [
                            {
                                "host_name": "ascshostName",
                                "network_interfaces": [{
                                    "network_interface_name": "ascsnic",
                                }],
                                "os_disk_name": "ascsosdisk",
                                "vm_name": "ascsvm",
                            },
                            {
                                "host_name": "ershostName",
                                "network_interfaces": [{
                                    "network_interface_name": "ersnic",
                                }],
                                "os_disk_name": "ersosdisk",
                                "vm_name": "ersvm",
                            },
                        ],
                    },
                    "database_server": {
                        "availability_set_name": "dbAvSet",
                        "load_balancer": {
                            "backend_pool_names": ["dbBackendPool"],
                            "frontend_ip_configuration_names": ["dbip"],
                            "health_probe_names": ["dbHealthProbe"],
                            "load_balancer_name": "dblb",
                        },
                        "virtual_machines": [
                            {
                                "data_disk_names": {
                                    "hanaData": [
                                        "hanadatapr0",
                                        "hanadatapr1",
                                    ],
                                    "hanaLog": [
                                        "hanalogpr0",
                                        "hanalogpr1",
                                        "hanalogpr2",
                                    ],
                                    "hanaShared": [
                                        "hanasharedpr0",
                                        "hanasharedpr1",
                                    ],
                                    "usrSap": ["usrsappr0"],
                                },
                                "host_name": "dbprhostName",
                                "network_interfaces": [{
                                    "network_interface_name": "dbprnic",
                                }],
                                "os_disk_name": "dbprosdisk",
                                "vm_name": "dbvmpr",
                            },
                            {
                                "data_disk_names": {
                                    "hanaData": [
                                        "hanadatasr0",
                                        "hanadatasr1",
                                    ],
                                    "hanaLog": [
                                        "hanalogsr0",
                                        "hanalogsr1",
                                        "hanalogsr2",
                                    ],
                                    "hanaShared": [
                                        "hanasharedsr0",
                                        "hanasharedsr1",
                                    ],
                                    "usrSap": ["usrsapsr0"],
                                },
                                "host_name": "dbsrhostName",
                                "network_interfaces": [{
                                    "network_interface_name": "dbsrnic",
                                }],
                                "os_disk_name": "dbsrosdisk",
                                "vm_name": "dbvmsr",
                            },
                        ],
                    },
                    "naming_pattern_type": "FullResourceName",
                    "shared_storage": {
                        "shared_storage_account_name": "storageacc",
                        "shared_storage_account_private_end_point_name": "peForxNFS",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
                "high_availability_config": {
                    "high_availability_type": azure_native.workloads.SAPHighAvailabilityType.AVAILABILITY_SET,
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 6,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                customResourceNames: {
                    applicationServer: {
                        availabilitySetName: "appAvSet",
                        virtualMachines: [
                            {
                                dataDiskNames: {
                                    "default": ["app0disk0"],
                                },
                                hostName: "apphostName0",
                                networkInterfaces: [{
                                    networkInterfaceName: "appnic0",
                                }],
                                osDiskName: "app0osdisk",
                                vmName: "appvm0",
                            },
                            {
                                dataDiskNames: {
                                    "default": ["app1disk0"],
                                },
                                hostName: "apphostName1",
                                networkInterfaces: [{
                                    networkInterfaceName: "appnic1",
                                }],
                                osDiskName: "app1osdisk",
                                vmName: "appvm1",
                            },
                        ],
                    },
                    centralServer: {
                        availabilitySetName: "csAvSet",
                        loadBalancer: {
                            backendPoolNames: ["ascsBackendPool"],
                            frontendIpConfigurationNames: [
                                "ascsip0",
                                "ersip0",
                            ],
                            healthProbeNames: [
                                "ascsHealthProbe",
                                "ersHealthProbe",
                            ],
                            loadBalancerName: "ascslb",
                        },
                        virtualMachines: [
                            {
                                hostName: "ascshostName",
                                networkInterfaces: [{
                                    networkInterfaceName: "ascsnic",
                                }],
                                osDiskName: "ascsosdisk",
                                vmName: "ascsvm",
                            },
                            {
                                hostName: "ershostName",
                                networkInterfaces: [{
                                    networkInterfaceName: "ersnic",
                                }],
                                osDiskName: "ersosdisk",
                                vmName: "ersvm",
                            },
                        ],
                    },
                    databaseServer: {
                        availabilitySetName: "dbAvSet",
                        loadBalancer: {
                            backendPoolNames: ["dbBackendPool"],
                            frontendIpConfigurationNames: ["dbip"],
                            healthProbeNames: ["dbHealthProbe"],
                            loadBalancerName: "dblb",
                        },
                        virtualMachines: [
                            {
                                dataDiskNames: {
                                    hanaData: [
                                        "hanadatapr0",
                                        "hanadatapr1",
                                    ],
                                    hanaLog: [
                                        "hanalogpr0",
                                        "hanalogpr1",
                                        "hanalogpr2",
                                    ],
                                    hanaShared: [
                                        "hanasharedpr0",
                                        "hanasharedpr1",
                                    ],
                                    usrSap: ["usrsappr0"],
                                },
                                hostName: "dbprhostName",
                                networkInterfaces: [{
                                    networkInterfaceName: "dbprnic",
                                }],
                                osDiskName: "dbprosdisk",
                                vmName: "dbvmpr",
                            },
                            {
                                dataDiskNames: {
                                    hanaData: [
                                        "hanadatasr0",
                                        "hanadatasr1",
                                    ],
                                    hanaLog: [
                                        "hanalogsr0",
                                        "hanalogsr1",
                                        "hanalogsr2",
                                    ],
                                    hanaShared: [
                                        "hanasharedsr0",
                                        "hanasharedsr1",
                                    ],
                                    usrSap: ["usrsapsr0"],
                                },
                                hostName: "dbsrhostName",
                                networkInterfaces: [{
                                    networkInterfaceName: "dbsrnic",
                                }],
                                osDiskName: "dbsrosdisk",
                                vmName: "dbvmsr",
                            },
                        ],
                    },
                    namingPatternType: "FullResourceName",
                    sharedStorage: {
                        sharedStorageAccountName: "storageacc",
                        sharedStorageAccountPrivateEndPointName: "peForxNFS",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
                highAvailabilityConfig: {
                    highAvailabilityType: azure_native.workloads.SAPHighAvailabilityType.AvailabilitySet,
                },
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 6
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E16ds_v4
              customResourceNames:
                applicationServer:
                  availabilitySetName: appAvSet
                  virtualMachines:
                    - dataDiskNames:
                        default:
                          - app0disk0
                      hostName: apphostName0
                      networkInterfaces:
                        - networkInterfaceName: appnic0
                      osDiskName: app0osdisk
                      vmName: appvm0
                    - dataDiskNames:
                        default:
                          - app1disk0
                      hostName: apphostName1
                      networkInterfaces:
                        - networkInterfaceName: appnic1
                      osDiskName: app1osdisk
                      vmName: appvm1
                centralServer:
                  availabilitySetName: csAvSet
                  loadBalancer:
                    backendPoolNames:
                      - ascsBackendPool
                    frontendIpConfigurationNames:
                      - ascsip0
                      - ersip0
                    healthProbeNames:
                      - ascsHealthProbe
                      - ersHealthProbe
                    loadBalancerName: ascslb
                  virtualMachines:
                    - hostName: ascshostName
                      networkInterfaces:
                        - networkInterfaceName: ascsnic
                      osDiskName: ascsosdisk
                      vmName: ascsvm
                    - hostName: ershostName
                      networkInterfaces:
                        - networkInterfaceName: ersnic
                      osDiskName: ersosdisk
                      vmName: ersvm
                databaseServer:
                  availabilitySetName: dbAvSet
                  loadBalancer:
                    backendPoolNames:
                      - dbBackendPool
                    frontendIpConfigurationNames:
                      - dbip
                    healthProbeNames:
                      - dbHealthProbe
                    loadBalancerName: dblb
                  virtualMachines:
                    - dataDiskNames:
                        hanaData:
                          - hanadatapr0
                          - hanadatapr1
                        hanaLog:
                          - hanalogpr0
                          - hanalogpr1
                          - hanalogpr2
                        hanaShared:
                          - hanasharedpr0
                          - hanasharedpr1
                        usrSap:
                          - usrsappr0
                      hostName: dbprhostName
                      networkInterfaces:
                        - networkInterfaceName: dbprnic
                      osDiskName: dbprosdisk
                      vmName: dbvmpr
                    - dataDiskNames:
                        hanaData:
                          - hanadatasr0
                          - hanadatasr1
                        hanaLog:
                          - hanalogsr0
                          - hanalogsr1
                          - hanalogsr2
                        hanaShared:
                          - hanasharedsr0
                          - hanasharedsr1
                        usrSap:
                          - usrsapsr0
                      hostName: dbsrhostName
                      networkInterfaces:
                        - networkInterfaceName: dbsrnic
                      osDiskName: dbsrosdisk
                      vmName: dbvmsr
                namingPatternType: FullResourceName
                sharedStorage:
                  sharedStorageAccountName: storageacc
                  sharedStorageAccountPrivateEndPointName: peForxNFS
              databaseServer:
                databaseType: HANA
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
              highAvailabilityConfig:
                highAvailabilityType: AvailabilitySet
            osSapConfiguration:
              sapFqdn: xyz.test.com
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    

    Create Infrastructure (with OS configuration) with custom resource names for HA system with Availability Zone

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 6,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    CustomResourceNames = new AzureNative.Workloads.Inputs.ThreeTierFullResourceNamesArgs
                    {
                        ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerFullResourceNamesArgs
                        {
                            VirtualMachines = new[]
                            {
                                new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                                {
                                    DataDiskNames = 
                                    {
                                        { "default", new[]
                                        {
                                            "app0disk0",
                                        } },
                                    },
                                    HostName = "apphostName0",
                                    NetworkInterfaces = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                                        {
                                            NetworkInterfaceName = "appnic0",
                                        },
                                    },
                                    OsDiskName = "app0osdisk",
                                    VmName = "appvm0",
                                },
                                new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                                {
                                    DataDiskNames = 
                                    {
                                        { "default", new[]
                                        {
                                            "app1disk0",
                                        } },
                                    },
                                    HostName = "apphostName1",
                                    NetworkInterfaces = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                                        {
                                            NetworkInterfaceName = "appnic1",
                                        },
                                    },
                                    OsDiskName = "app1osdisk",
                                    VmName = "appvm1",
                                },
                            },
                        },
                        CentralServer = new AzureNative.Workloads.Inputs.CentralServerFullResourceNamesArgs
                        {
                            LoadBalancer = new AzureNative.Workloads.Inputs.LoadBalancerResourceNamesArgs
                            {
                                BackendPoolNames = new[]
                                {
                                    "ascsBackendPool",
                                },
                                FrontendIpConfigurationNames = new[]
                                {
                                    "ascsip0",
                                    "ersip0",
                                },
                                HealthProbeNames = new[]
                                {
                                    "ascsHealthProbe",
                                    "ersHealthProbe",
                                },
                                LoadBalancerName = "ascslb",
                            },
                            VirtualMachines = new[]
                            {
                                new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                                {
                                    HostName = "ascshostName",
                                    NetworkInterfaces = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                                        {
                                            NetworkInterfaceName = "ascsnic",
                                        },
                                    },
                                    OsDiskName = "ascsosdisk",
                                    VmName = "ascsvm",
                                },
                                new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                                {
                                    HostName = "ershostName",
                                    NetworkInterfaces = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                                        {
                                            NetworkInterfaceName = "ersnic",
                                        },
                                    },
                                    OsDiskName = "ersosdisk",
                                    VmName = "ersvm",
                                },
                            },
                        },
                        DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseServerFullResourceNamesArgs
                        {
                            LoadBalancer = new AzureNative.Workloads.Inputs.LoadBalancerResourceNamesArgs
                            {
                                BackendPoolNames = new[]
                                {
                                    "dbBackendPool",
                                },
                                FrontendIpConfigurationNames = new[]
                                {
                                    "dbip",
                                },
                                HealthProbeNames = new[]
                                {
                                    "dbHealthProbe",
                                },
                                LoadBalancerName = "dblb",
                            },
                            VirtualMachines = new[]
                            {
                                new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                                {
                                    DataDiskNames = 
                                    {
                                        { "hanaData", new[]
                                        {
                                            "hanadatapr0",
                                            "hanadatapr1",
                                        } },
                                        { "hanaLog", new[]
                                        {
                                            "hanalogpr0",
                                            "hanalogpr1",
                                            "hanalogpr2",
                                        } },
                                        { "hanaShared", new[]
                                        {
                                            "hanasharedpr0",
                                            "hanasharedpr1",
                                        } },
                                        { "usrSap", new[]
                                        {
                                            "usrsappr0",
                                        } },
                                    },
                                    HostName = "dbprhostName",
                                    NetworkInterfaces = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                                        {
                                            NetworkInterfaceName = "dbprnic",
                                        },
                                    },
                                    OsDiskName = "dbprosdisk",
                                    VmName = "dbvmpr",
                                },
                                new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                                {
                                    DataDiskNames = 
                                    {
                                        { "hanaData", new[]
                                        {
                                            "hanadatasr0",
                                            "hanadatasr1",
                                        } },
                                        { "hanaLog", new[]
                                        {
                                            "hanalogsr0",
                                            "hanalogsr1",
                                            "hanalogsr2",
                                        } },
                                        { "hanaShared", new[]
                                        {
                                            "hanasharedsr0",
                                            "hanasharedsr1",
                                        } },
                                        { "usrSap", new[]
                                        {
                                            "usrsapsr0",
                                        } },
                                    },
                                    HostName = "dbsrhostName",
                                    NetworkInterfaces = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                                        {
                                            NetworkInterfaceName = "dbsrnic",
                                        },
                                    },
                                    OsDiskName = "dbsrosdisk",
                                    VmName = "dbvmsr",
                                },
                            },
                        },
                        NamingPatternType = "FullResourceName",
                        SharedStorage = new AzureNative.Workloads.Inputs.SharedStorageResourceNamesArgs
                        {
                            SharedStorageAccountName = "storageacc",
                            SharedStorageAccountPrivateEndPointName = "peForxNFS",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                    HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
                    {
                        HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilityZone,
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 6,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					CustomResourceNames: workloads.ThreeTierFullResourceNames{
    						ApplicationServer: workloads.ApplicationServerFullResourceNames{
    							VirtualMachines: []workloads.VirtualMachineResourceNames{
    								{
    									DataDiskNames: {
    										"default": []string{
    											"app0disk0",
    										},
    									},
    									HostName: "apphostName0",
    									NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    										{
    											NetworkInterfaceName: "appnic0",
    										},
    									},
    									OsDiskName: "app0osdisk",
    									VmName:     "appvm0",
    								},
    								{
    									DataDiskNames: {
    										"default": []string{
    											"app1disk0",
    										},
    									},
    									HostName: "apphostName1",
    									NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    										{
    											NetworkInterfaceName: "appnic1",
    										},
    									},
    									OsDiskName: "app1osdisk",
    									VmName:     "appvm1",
    								},
    							},
    						},
    						CentralServer: workloads.CentralServerFullResourceNames{
    							LoadBalancer: workloads.LoadBalancerResourceNames{
    								BackendPoolNames: []string{
    									"ascsBackendPool",
    								},
    								FrontendIpConfigurationNames: []string{
    									"ascsip0",
    									"ersip0",
    								},
    								HealthProbeNames: []string{
    									"ascsHealthProbe",
    									"ersHealthProbe",
    								},
    								LoadBalancerName: "ascslb",
    							},
    							VirtualMachines: []workloads.VirtualMachineResourceNames{
    								{
    									HostName: "ascshostName",
    									NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    										{
    											NetworkInterfaceName: "ascsnic",
    										},
    									},
    									OsDiskName: "ascsosdisk",
    									VmName:     "ascsvm",
    								},
    								{
    									HostName: "ershostName",
    									NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    										{
    											NetworkInterfaceName: "ersnic",
    										},
    									},
    									OsDiskName: "ersosdisk",
    									VmName:     "ersvm",
    								},
    							},
    						},
    						DatabaseServer: workloads.DatabaseServerFullResourceNames{
    							LoadBalancer: workloads.LoadBalancerResourceNames{
    								BackendPoolNames: []string{
    									"dbBackendPool",
    								},
    								FrontendIpConfigurationNames: []string{
    									"dbip",
    								},
    								HealthProbeNames: []string{
    									"dbHealthProbe",
    								},
    								LoadBalancerName: "dblb",
    							},
    							VirtualMachines: []workloads.VirtualMachineResourceNames{
    								{
    									DataDiskNames: {
    										"hanaData": []string{
    											"hanadatapr0",
    											"hanadatapr1",
    										},
    										"hanaLog": []string{
    											"hanalogpr0",
    											"hanalogpr1",
    											"hanalogpr2",
    										},
    										"hanaShared": []string{
    											"hanasharedpr0",
    											"hanasharedpr1",
    										},
    										"usrSap": []string{
    											"usrsappr0",
    										},
    									},
    									HostName: "dbprhostName",
    									NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    										{
    											NetworkInterfaceName: "dbprnic",
    										},
    									},
    									OsDiskName: "dbprosdisk",
    									VmName:     "dbvmpr",
    								},
    								{
    									DataDiskNames: {
    										"hanaData": []string{
    											"hanadatasr0",
    											"hanadatasr1",
    										},
    										"hanaLog": []string{
    											"hanalogsr0",
    											"hanalogsr1",
    											"hanalogsr2",
    										},
    										"hanaShared": []string{
    											"hanasharedsr0",
    											"hanasharedsr1",
    										},
    										"usrSap": []string{
    											"usrsapsr0",
    										},
    									},
    									HostName: "dbsrhostName",
    									NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    										{
    											NetworkInterfaceName: "dbsrnic",
    										},
    									},
    									OsDiskName: "dbsrosdisk",
    									VmName:     "dbvmsr",
    								},
    							},
    						},
    						NamingPatternType: "FullResourceName",
    						SharedStorage: workloads.SharedStorageResourceNames{
    							SharedStorageAccountName:                "storageacc",
    							SharedStorageAccountPrivateEndPointName: "peForxNFS",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType:  workloads.SAPDatabaseTypeHANA,
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    					HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
    						HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilityZone,
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(6)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .customResourceNames(ThreeTierFullResourceNamesArgs.builder()
                            .applicationServer(ApplicationServerFullResourceNamesArgs.builder()
                                .virtualMachines(                            
                                    VirtualMachineResourceNamesArgs.builder()
                                        .dataDiskNames(Map.of("default", "app0disk0"))
                                        .hostName("apphostName0")
                                        .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                                            .networkInterfaceName("appnic0")
                                            .build())
                                        .osDiskName("app0osdisk")
                                        .vmName("appvm0")
                                        .build(),
                                    VirtualMachineResourceNamesArgs.builder()
                                        .dataDiskNames(Map.of("default", "app1disk0"))
                                        .hostName("apphostName1")
                                        .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                                            .networkInterfaceName("appnic1")
                                            .build())
                                        .osDiskName("app1osdisk")
                                        .vmName("appvm1")
                                        .build())
                                .build())
                            .centralServer(CentralServerFullResourceNamesArgs.builder()
                                .loadBalancer(LoadBalancerResourceNamesArgs.builder()
                                    .backendPoolNames("ascsBackendPool")
                                    .frontendIpConfigurationNames(                                
                                        "ascsip0",
                                        "ersip0")
                                    .healthProbeNames(                                
                                        "ascsHealthProbe",
                                        "ersHealthProbe")
                                    .loadBalancerName("ascslb")
                                    .build())
                                .virtualMachines(                            
                                    VirtualMachineResourceNamesArgs.builder()
                                        .hostName("ascshostName")
                                        .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                                            .networkInterfaceName("ascsnic")
                                            .build())
                                        .osDiskName("ascsosdisk")
                                        .vmName("ascsvm")
                                        .build(),
                                    VirtualMachineResourceNamesArgs.builder()
                                        .hostName("ershostName")
                                        .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                                            .networkInterfaceName("ersnic")
                                            .build())
                                        .osDiskName("ersosdisk")
                                        .vmName("ersvm")
                                        .build())
                                .build())
                            .databaseServer(DatabaseServerFullResourceNamesArgs.builder()
                                .loadBalancer(LoadBalancerResourceNamesArgs.builder()
                                    .backendPoolNames("dbBackendPool")
                                    .frontendIpConfigurationNames("dbip")
                                    .healthProbeNames("dbHealthProbe")
                                    .loadBalancerName("dblb")
                                    .build())
                                .virtualMachines(                            
                                    VirtualMachineResourceNamesArgs.builder()
                                        .dataDiskNames(Map.ofEntries(
                                            Map.entry("hanaData",                                         
                                                "hanadatapr0",
                                                "hanadatapr1"),
                                            Map.entry("hanaLog",                                         
                                                "hanalogpr0",
                                                "hanalogpr1",
                                                "hanalogpr2"),
                                            Map.entry("hanaShared",                                         
                                                "hanasharedpr0",
                                                "hanasharedpr1"),
                                            Map.entry("usrSap", "usrsappr0")
                                        ))
                                        .hostName("dbprhostName")
                                        .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                                            .networkInterfaceName("dbprnic")
                                            .build())
                                        .osDiskName("dbprosdisk")
                                        .vmName("dbvmpr")
                                        .build(),
                                    VirtualMachineResourceNamesArgs.builder()
                                        .dataDiskNames(Map.ofEntries(
                                            Map.entry("hanaData",                                         
                                                "hanadatasr0",
                                                "hanadatasr1"),
                                            Map.entry("hanaLog",                                         
                                                "hanalogsr0",
                                                "hanalogsr1",
                                                "hanalogsr2"),
                                            Map.entry("hanaShared",                                         
                                                "hanasharedsr0",
                                                "hanasharedsr1"),
                                            Map.entry("usrSap", "usrsapsr0")
                                        ))
                                        .hostName("dbsrhostName")
                                        .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                                            .networkInterfaceName("dbsrnic")
                                            .build())
                                        .osDiskName("dbsrosdisk")
                                        .vmName("dbvmsr")
                                        .build())
                                .build())
                            .namingPatternType("FullResourceName")
                            .sharedStorage(SharedStorageResourceNamesArgs.builder()
                                .sharedStorageAccountName("storageacc")
                                .sharedStorageAccountPrivateEndPointName("peForxNFS")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
                            .highAvailabilityType("AvailabilityZone")
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 6,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "custom_resource_names": {
                    "application_server": {
                        "virtual_machines": [
                            {
                                "data_disk_names": {
                                    "default": ["app0disk0"],
                                },
                                "host_name": "apphostName0",
                                "network_interfaces": [{
                                    "network_interface_name": "appnic0",
                                }],
                                "os_disk_name": "app0osdisk",
                                "vm_name": "appvm0",
                            },
                            {
                                "data_disk_names": {
                                    "default": ["app1disk0"],
                                },
                                "host_name": "apphostName1",
                                "network_interfaces": [{
                                    "network_interface_name": "appnic1",
                                }],
                                "os_disk_name": "app1osdisk",
                                "vm_name": "appvm1",
                            },
                        ],
                    },
                    "central_server": {
                        "load_balancer": {
                            "backend_pool_names": ["ascsBackendPool"],
                            "frontend_ip_configuration_names": [
                                "ascsip0",
                                "ersip0",
                            ],
                            "health_probe_names": [
                                "ascsHealthProbe",
                                "ersHealthProbe",
                            ],
                            "load_balancer_name": "ascslb",
                        },
                        "virtual_machines": [
                            {
                                "host_name": "ascshostName",
                                "network_interfaces": [{
                                    "network_interface_name": "ascsnic",
                                }],
                                "os_disk_name": "ascsosdisk",
                                "vm_name": "ascsvm",
                            },
                            {
                                "host_name": "ershostName",
                                "network_interfaces": [{
                                    "network_interface_name": "ersnic",
                                }],
                                "os_disk_name": "ersosdisk",
                                "vm_name": "ersvm",
                            },
                        ],
                    },
                    "database_server": {
                        "load_balancer": {
                            "backend_pool_names": ["dbBackendPool"],
                            "frontend_ip_configuration_names": ["dbip"],
                            "health_probe_names": ["dbHealthProbe"],
                            "load_balancer_name": "dblb",
                        },
                        "virtual_machines": [
                            {
                                "data_disk_names": {
                                    "hanaData": [
                                        "hanadatapr0",
                                        "hanadatapr1",
                                    ],
                                    "hanaLog": [
                                        "hanalogpr0",
                                        "hanalogpr1",
                                        "hanalogpr2",
                                    ],
                                    "hanaShared": [
                                        "hanasharedpr0",
                                        "hanasharedpr1",
                                    ],
                                    "usrSap": ["usrsappr0"],
                                },
                                "host_name": "dbprhostName",
                                "network_interfaces": [{
                                    "network_interface_name": "dbprnic",
                                }],
                                "os_disk_name": "dbprosdisk",
                                "vm_name": "dbvmpr",
                            },
                            {
                                "data_disk_names": {
                                    "hanaData": [
                                        "hanadatasr0",
                                        "hanadatasr1",
                                    ],
                                    "hanaLog": [
                                        "hanalogsr0",
                                        "hanalogsr1",
                                        "hanalogsr2",
                                    ],
                                    "hanaShared": [
                                        "hanasharedsr0",
                                        "hanasharedsr1",
                                    ],
                                    "usrSap": ["usrsapsr0"],
                                },
                                "host_name": "dbsrhostName",
                                "network_interfaces": [{
                                    "network_interface_name": "dbsrnic",
                                }],
                                "os_disk_name": "dbsrosdisk",
                                "vm_name": "dbvmsr",
                            },
                        ],
                    },
                    "naming_pattern_type": "FullResourceName",
                    "shared_storage": {
                        "shared_storage_account_name": "storageacc",
                        "shared_storage_account_private_end_point_name": "peForxNFS",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
                "high_availability_config": {
                    "high_availability_type": azure_native.workloads.SAPHighAvailabilityType.AVAILABILITY_ZONE,
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 6,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                customResourceNames: {
                    applicationServer: {
                        virtualMachines: [
                            {
                                dataDiskNames: {
                                    "default": ["app0disk0"],
                                },
                                hostName: "apphostName0",
                                networkInterfaces: [{
                                    networkInterfaceName: "appnic0",
                                }],
                                osDiskName: "app0osdisk",
                                vmName: "appvm0",
                            },
                            {
                                dataDiskNames: {
                                    "default": ["app1disk0"],
                                },
                                hostName: "apphostName1",
                                networkInterfaces: [{
                                    networkInterfaceName: "appnic1",
                                }],
                                osDiskName: "app1osdisk",
                                vmName: "appvm1",
                            },
                        ],
                    },
                    centralServer: {
                        loadBalancer: {
                            backendPoolNames: ["ascsBackendPool"],
                            frontendIpConfigurationNames: [
                                "ascsip0",
                                "ersip0",
                            ],
                            healthProbeNames: [
                                "ascsHealthProbe",
                                "ersHealthProbe",
                            ],
                            loadBalancerName: "ascslb",
                        },
                        virtualMachines: [
                            {
                                hostName: "ascshostName",
                                networkInterfaces: [{
                                    networkInterfaceName: "ascsnic",
                                }],
                                osDiskName: "ascsosdisk",
                                vmName: "ascsvm",
                            },
                            {
                                hostName: "ershostName",
                                networkInterfaces: [{
                                    networkInterfaceName: "ersnic",
                                }],
                                osDiskName: "ersosdisk",
                                vmName: "ersvm",
                            },
                        ],
                    },
                    databaseServer: {
                        loadBalancer: {
                            backendPoolNames: ["dbBackendPool"],
                            frontendIpConfigurationNames: ["dbip"],
                            healthProbeNames: ["dbHealthProbe"],
                            loadBalancerName: "dblb",
                        },
                        virtualMachines: [
                            {
                                dataDiskNames: {
                                    hanaData: [
                                        "hanadatapr0",
                                        "hanadatapr1",
                                    ],
                                    hanaLog: [
                                        "hanalogpr0",
                                        "hanalogpr1",
                                        "hanalogpr2",
                                    ],
                                    hanaShared: [
                                        "hanasharedpr0",
                                        "hanasharedpr1",
                                    ],
                                    usrSap: ["usrsappr0"],
                                },
                                hostName: "dbprhostName",
                                networkInterfaces: [{
                                    networkInterfaceName: "dbprnic",
                                }],
                                osDiskName: "dbprosdisk",
                                vmName: "dbvmpr",
                            },
                            {
                                dataDiskNames: {
                                    hanaData: [
                                        "hanadatasr0",
                                        "hanadatasr1",
                                    ],
                                    hanaLog: [
                                        "hanalogsr0",
                                        "hanalogsr1",
                                        "hanalogsr2",
                                    ],
                                    hanaShared: [
                                        "hanasharedsr0",
                                        "hanasharedsr1",
                                    ],
                                    usrSap: ["usrsapsr0"],
                                },
                                hostName: "dbsrhostName",
                                networkInterfaces: [{
                                    networkInterfaceName: "dbsrnic",
                                }],
                                osDiskName: "dbsrosdisk",
                                vmName: "dbvmsr",
                            },
                        ],
                    },
                    namingPatternType: "FullResourceName",
                    sharedStorage: {
                        sharedStorageAccountName: "storageacc",
                        sharedStorageAccountPrivateEndPointName: "peForxNFS",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
                highAvailabilityConfig: {
                    highAvailabilityType: azure_native.workloads.SAPHighAvailabilityType.AvailabilityZone,
                },
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 6
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E16ds_v4
              customResourceNames:
                applicationServer:
                  virtualMachines:
                    - dataDiskNames:
                        default:
                          - app0disk0
                      hostName: apphostName0
                      networkInterfaces:
                        - networkInterfaceName: appnic0
                      osDiskName: app0osdisk
                      vmName: appvm0
                    - dataDiskNames:
                        default:
                          - app1disk0
                      hostName: apphostName1
                      networkInterfaces:
                        - networkInterfaceName: appnic1
                      osDiskName: app1osdisk
                      vmName: appvm1
                centralServer:
                  loadBalancer:
                    backendPoolNames:
                      - ascsBackendPool
                    frontendIpConfigurationNames:
                      - ascsip0
                      - ersip0
                    healthProbeNames:
                      - ascsHealthProbe
                      - ersHealthProbe
                    loadBalancerName: ascslb
                  virtualMachines:
                    - hostName: ascshostName
                      networkInterfaces:
                        - networkInterfaceName: ascsnic
                      osDiskName: ascsosdisk
                      vmName: ascsvm
                    - hostName: ershostName
                      networkInterfaces:
                        - networkInterfaceName: ersnic
                      osDiskName: ersosdisk
                      vmName: ersvm
                databaseServer:
                  loadBalancer:
                    backendPoolNames:
                      - dbBackendPool
                    frontendIpConfigurationNames:
                      - dbip
                    healthProbeNames:
                      - dbHealthProbe
                    loadBalancerName: dblb
                  virtualMachines:
                    - dataDiskNames:
                        hanaData:
                          - hanadatapr0
                          - hanadatapr1
                        hanaLog:
                          - hanalogpr0
                          - hanalogpr1
                          - hanalogpr2
                        hanaShared:
                          - hanasharedpr0
                          - hanasharedpr1
                        usrSap:
                          - usrsappr0
                      hostName: dbprhostName
                      networkInterfaces:
                        - networkInterfaceName: dbprnic
                      osDiskName: dbprosdisk
                      vmName: dbvmpr
                    - dataDiskNames:
                        hanaData:
                          - hanadatasr0
                          - hanadatasr1
                        hanaLog:
                          - hanalogsr0
                          - hanalogsr1
                          - hanalogsr2
                        hanaShared:
                          - hanasharedsr0
                          - hanasharedsr1
                        usrSap:
                          - usrsapsr0
                      hostName: dbsrhostName
                      networkInterfaces:
                        - networkInterfaceName: dbsrnic
                      osDiskName: dbsrosdisk
                      vmName: dbvmsr
                namingPatternType: FullResourceName
                sharedStorage:
                  sharedStorageAccountName: storageacc
                  sharedStorageAccountPrivateEndPointName: peForxNFS
              databaseServer:
                databaseType: HANA
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
              highAvailabilityConfig:
                highAvailabilityType: AvailabilityZone
            osSapConfiguration:
              sapFqdn: xyz.test.com
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    

    Create Infrastructure (with OS configuration) with custom resource names for Single Server System

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.SingleServerConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                    DeploymentType = "SingleServer",
                    NetworkConfiguration = new AzureNative.Workloads.Inputs.NetworkConfigurationArgs
                    {
                        IsSecondaryIpEnabled = true,
                    },
                    SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                    {
                        ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                        {
                            Offer = "RHEL-SAP",
                            Publisher = "RedHat",
                            Sku = "84sapha-gen2",
                            Version = "latest",
                        },
                        OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                        {
                            AdminUsername = "{your-username}",
                            OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                            {
                                DisablePasswordAuthentication = true,
                                OsType = "Linux",
                                SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                {
                                    PrivateKey = "xyz",
                                    PublicKey = "abc",
                                },
                            },
                        },
                        VmSize = "Standard_E32ds_v4",
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.NonProd,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.SingleServerConfiguration{
    					AppResourceGroup: "X00-RG",
    					DatabaseType:     workloads.SAPDatabaseTypeHANA,
    					DeploymentType:   "SingleServer",
    					NetworkConfiguration: workloads.NetworkConfiguration{
    						IsSecondaryIpEnabled: true,
    					},
    					SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    					VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    						ImageReference: workloads.ImageReference{
    							Offer:     "RHEL-SAP",
    							Publisher: "RedHat",
    							Sku:       "84sapha-gen2",
    							Version:   "latest",
    						},
    						OsProfile: workloads.OSProfile{
    							AdminUsername: "{your-username}",
    							OsConfiguration: workloads.LinuxConfiguration{
    								DisablePasswordAuthentication: true,
    								OsType:                        "Linux",
    								SshKeyPair: workloads.SshKeyPair{
    									PrivateKey: "xyz",
    									PublicKey:  "abc",
    								},
    							},
    						},
    						VmSize: "Standard_E32ds_v4",
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeNonProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(SingleServerConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .databaseType("HANA")
                        .deploymentType("SingleServer")
                        .networkConfiguration(NetworkConfigurationArgs.builder()
                            .isSecondaryIpEnabled(true)
                            .build())
                        .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                        .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                            .imageReference(ImageReferenceArgs.builder()
                                .offer("RHEL-SAP")
                                .publisher("RedHat")
                                .sku("84sapha-gen2")
                                .version("latest")
                                .build())
                            .osProfile(OSProfileArgs.builder()
                                .adminUsername("{your-username}")
                                .osConfiguration(LinuxConfigurationArgs.builder()
                                    .disablePasswordAuthentication(true)
                                    .osType("Linux")
                                    .sshKeyPair(SshKeyPairArgs.builder()
                                        .privateKey("xyz")
                                        .publicKey("abc")
                                        .build())
                                    .build())
                                .build())
                            .vmSize("Standard_E32ds_v4")
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .build())
                .environment("NonProd")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                "deployment_type": "SingleServer",
                "network_configuration": {
                    "is_secondary_ip_enabled": True,
                },
                "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                "virtual_machine_configuration": {
                    "image_reference": {
                        "offer": "RHEL-SAP",
                        "publisher": "RedHat",
                        "sku": "84sapha-gen2",
                        "version": "latest",
                    },
                    "os_profile": {
                        "admin_username": "{your-username}",
                        "os_configuration": {
                            "disable_password_authentication": True,
                            "os_type": "Linux",
                            "ssh_key_pair": {
                                "private_key": "xyz",
                                "public_key": "abc",
                            },
                        },
                    },
                    "vm_size": "Standard_E32ds_v4",
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.NON_PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                deploymentType: "SingleServer",
                networkConfiguration: {
                    isSecondaryIpEnabled: true,
                },
                subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                virtualMachineConfiguration: {
                    imageReference: {
                        offer: "RHEL-SAP",
                        publisher: "RedHat",
                        sku: "84sapha-gen2",
                        version: "latest",
                    },
                    osProfile: {
                        adminUsername: "{your-username}",
                        osConfiguration: {
                            disablePasswordAuthentication: true,
                            osType: "Linux",
                            sshKeyPair: {
                                privateKey: "xyz",
                                publicKey: "abc",
                            },
                        },
                    },
                    vmSize: "Standard_E32ds_v4",
                },
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.NonProd,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              databaseType: HANA
              deploymentType: SingleServer
              networkConfiguration:
                isSecondaryIpEnabled: true
              subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
              virtualMachineConfiguration:
                imageReference:
                  offer: RHEL-SAP
                  publisher: RedHat
                  sku: 84sapha-gen2
                  version: latest
                osProfile:
                  adminUsername: '{your-username}'
                  osConfiguration:
                    disablePasswordAuthentication: true
                    osType: Linux
                    sshKeyPair:
                      privateKey: xyz
                      publicKey: abc
                vmSize: Standard_E32ds_v4
            osSapConfiguration:
              sapFqdn: xyz.test.com
          environment: NonProd
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    

    Create Infrastructure only for Distributed System

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "Deployment",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 6,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
                                    {
                                        PublicKeys = new[]
                                        {
                                            new AzureNative.Workloads.Inputs.SshPublicKeyArgs
                                            {
                                                KeyData = "ssh-rsa public key",
                                            },
                                        },
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
                                    {
                                        PublicKeys = new[]
                                        {
                                            new AzureNative.Workloads.Inputs.SshPublicKeyArgs
                                            {
                                                KeyData = "ssh-rsa public key",
                                            },
                                        },
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
                                    {
                                        PublicKeys = new[]
                                        {
                                            new AzureNative.Workloads.Inputs.SshPublicKeyArgs
                                            {
                                                KeyData = "ssh-rsa public key",
                                            },
                                        },
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("Deployment"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 6,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									Ssh: workloads.SshConfiguration{
    										PublicKeys: []workloads.SshPublicKey{
    											{
    												KeyData: "ssh-rsa public key",
    											},
    										},
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									Ssh: workloads.SshConfiguration{
    										PublicKeys: []workloads.SshPublicKey{
    											{
    												KeyData: "ssh-rsa public key",
    											},
    										},
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType:  workloads.SAPDatabaseTypeHANA,
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									Ssh: workloads.SshConfiguration{
    										PublicKeys: []workloads.SshPublicKey{
    											{
    												KeyData: "ssh-rsa public key",
    											},
    										},
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("Deployment")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(6)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .ssh(SshConfigurationArgs.builder()
                                            .publicKeys(SshPublicKeyArgs.builder()
                                                .keyData("ssh-rsa public key")
                                                .build())
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(1)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .ssh(SshConfigurationArgs.builder()
                                            .publicKeys(SshPublicKeyArgs.builder()
                                                .keyData("ssh-rsa public key")
                                                .build())
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .instanceCount(1)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .ssh(SshConfigurationArgs.builder()
                                            .publicKeys(SshPublicKeyArgs.builder()
                                                .keyData("ssh-rsa public key")
                                                .build())
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "Deployment",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 6,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh": {
                                    "public_keys": [{
                                        "key_data": "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh": {
                                    "public_keys": [{
                                        "key_data": "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh": {
                                    "public_keys": [{
                                        "key_data": "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "Deployment",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 6,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                ssh: {
                                    publicKeys: [{
                                        keyData: "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 1,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                ssh: {
                                    publicKeys: [{
                                        keyData: "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    instanceCount: 1,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                ssh: {
                                    publicKeys: [{
                                        keyData: "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: Deployment
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 6
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      ssh:
                        publicKeys:
                          - keyData: ssh-rsa public key
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 1
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      ssh:
                        publicKeys:
                          - keyData: ssh-rsa public key
                  vmSize: Standard_E16ds_v4
              databaseServer:
                databaseType: HANA
                instanceCount: 1
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      ssh:
                        publicKeys:
                          - keyData: ssh-rsa public key
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    

    Create Infrastructure only for HA System with Availability Set

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "Deployment",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 5,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
                                    {
                                        PublicKeys = new[]
                                        {
                                            new AzureNative.Workloads.Inputs.SshPublicKeyArgs
                                            {
                                                KeyData = "ssh-rsa public key",
                                            },
                                        },
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
                                    {
                                        PublicKeys = new[]
                                        {
                                            new AzureNative.Workloads.Inputs.SshPublicKeyArgs
                                            {
                                                KeyData = "ssh-rsa public key",
                                            },
                                        },
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
                                    {
                                        PublicKeys = new[]
                                        {
                                            new AzureNative.Workloads.Inputs.SshPublicKeyArgs
                                            {
                                                KeyData = "ssh-rsa public key",
                                            },
                                        },
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                    HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
                    {
                        HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilitySet,
                    },
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("Deployment"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 5,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									Ssh: workloads.SshConfiguration{
    										PublicKeys: []workloads.SshPublicKey{
    											{
    												KeyData: "ssh-rsa public key",
    											},
    										},
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									Ssh: workloads.SshConfiguration{
    										PublicKeys: []workloads.SshPublicKey{
    											{
    												KeyData: "ssh-rsa public key",
    											},
    										},
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType:  workloads.SAPDatabaseTypeHANA,
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									Ssh: workloads.SshConfiguration{
    										PublicKeys: []workloads.SshPublicKey{
    											{
    												KeyData: "ssh-rsa public key",
    											},
    										},
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    					HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
    						HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilitySet,
    					},
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("Deployment")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(5)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .ssh(SshConfigurationArgs.builder()
                                            .publicKeys(SshPublicKeyArgs.builder()
                                                .keyData("ssh-rsa public key")
                                                .build())
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .ssh(SshConfigurationArgs.builder()
                                            .publicKeys(SshPublicKeyArgs.builder()
                                                .keyData("ssh-rsa public key")
                                                .build())
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .ssh(SshConfigurationArgs.builder()
                                            .publicKeys(SshPublicKeyArgs.builder()
                                                .keyData("ssh-rsa public key")
                                                .build())
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
                            .highAvailabilityType("AvailabilitySet")
                            .build())
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "Deployment",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 5,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh": {
                                    "public_keys": [{
                                        "key_data": "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh": {
                                    "public_keys": [{
                                        "key_data": "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh": {
                                    "public_keys": [{
                                        "key_data": "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
                "high_availability_config": {
                    "high_availability_type": azure_native.workloads.SAPHighAvailabilityType.AVAILABILITY_SET,
                },
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "Deployment",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 5,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                ssh: {
                                    publicKeys: [{
                                        keyData: "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                ssh: {
                                    publicKeys: [{
                                        keyData: "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                ssh: {
                                    publicKeys: [{
                                        keyData: "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
                highAvailabilityConfig: {
                    highAvailabilityType: azure_native.workloads.SAPHighAvailabilityType.AvailabilitySet,
                },
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: Deployment
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 5
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      ssh:
                        publicKeys:
                          - keyData: ssh-rsa public key
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      ssh:
                        publicKeys:
                          - keyData: ssh-rsa public key
                  vmSize: Standard_E16ds_v4
              databaseServer:
                databaseType: HANA
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      ssh:
                        publicKeys:
                          - keyData: ssh-rsa public key
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
              highAvailabilityConfig:
                highAvailabilityType: AvailabilitySet
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    

    Create Infrastructure only for HA System with Availability Zone

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "Deployment",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 6,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
                                    {
                                        PublicKeys = new[]
                                        {
                                            new AzureNative.Workloads.Inputs.SshPublicKeyArgs
                                            {
                                                KeyData = "ssh-rsa public key",
                                            },
                                        },
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
                                    {
                                        PublicKeys = new[]
                                        {
                                            new AzureNative.Workloads.Inputs.SshPublicKeyArgs
                                            {
                                                KeyData = "ssh-rsa public key",
                                            },
                                        },
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
                                    {
                                        PublicKeys = new[]
                                        {
                                            new AzureNative.Workloads.Inputs.SshPublicKeyArgs
                                            {
                                                KeyData = "ssh-rsa public key",
                                            },
                                        },
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                    HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
                    {
                        HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilityZone,
                    },
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("Deployment"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 6,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									Ssh: workloads.SshConfiguration{
    										PublicKeys: []workloads.SshPublicKey{
    											{
    												KeyData: "ssh-rsa public key",
    											},
    										},
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									Ssh: workloads.SshConfiguration{
    										PublicKeys: []workloads.SshPublicKey{
    											{
    												KeyData: "ssh-rsa public key",
    											},
    										},
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType:  workloads.SAPDatabaseTypeHANA,
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									Ssh: workloads.SshConfiguration{
    										PublicKeys: []workloads.SshPublicKey{
    											{
    												KeyData: "ssh-rsa public key",
    											},
    										},
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    					HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
    						HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilityZone,
    					},
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("Deployment")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(6)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .ssh(SshConfigurationArgs.builder()
                                            .publicKeys(SshPublicKeyArgs.builder()
                                                .keyData("ssh-rsa public key")
                                                .build())
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .ssh(SshConfigurationArgs.builder()
                                            .publicKeys(SshPublicKeyArgs.builder()
                                                .keyData("ssh-rsa public key")
                                                .build())
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .ssh(SshConfigurationArgs.builder()
                                            .publicKeys(SshPublicKeyArgs.builder()
                                                .keyData("ssh-rsa public key")
                                                .build())
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
                            .highAvailabilityType("AvailabilityZone")
                            .build())
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "Deployment",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 6,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh": {
                                    "public_keys": [{
                                        "key_data": "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh": {
                                    "public_keys": [{
                                        "key_data": "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh": {
                                    "public_keys": [{
                                        "key_data": "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
                "high_availability_config": {
                    "high_availability_type": azure_native.workloads.SAPHighAvailabilityType.AVAILABILITY_ZONE,
                },
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "Deployment",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 6,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                ssh: {
                                    publicKeys: [{
                                        keyData: "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                ssh: {
                                    publicKeys: [{
                                        keyData: "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                ssh: {
                                    publicKeys: [{
                                        keyData: "ssh-rsa public key",
                                    }],
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
                highAvailabilityConfig: {
                    highAvailabilityType: azure_native.workloads.SAPHighAvailabilityType.AvailabilityZone,
                },
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: Deployment
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 6
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      ssh:
                        publicKeys:
                          - keyData: ssh-rsa public key
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      ssh:
                        publicKeys:
                          - keyData: ssh-rsa public key
                  vmSize: Standard_E16ds_v4
              databaseServer:
                databaseType: HANA
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      ssh:
                        publicKeys:
                          - keyData: ssh-rsa public key
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
              highAvailabilityConfig:
                highAvailabilityType: AvailabilityZone
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    

    Create Infrastructure only for Single Server System

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "Deployment",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.SingleServerConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                    DeploymentType = "SingleServer",
                    NetworkConfiguration = new AzureNative.Workloads.Inputs.NetworkConfigurationArgs
                    {
                        IsSecondaryIpEnabled = true,
                    },
                    SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                    {
                        ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                        {
                            Offer = "RHEL-SAP",
                            Publisher = "RedHat",
                            Sku = "84sapha-gen2",
                            Version = "latest",
                        },
                        OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                        {
                            AdminUsername = "{your-username}",
                            OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                            {
                                DisablePasswordAuthentication = true,
                                OsType = "Linux",
                                Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
                                {
                                    PublicKeys = new[]
                                    {
                                        new AzureNative.Workloads.Inputs.SshPublicKeyArgs
                                        {
                                            KeyData = "ssh-rsa public key",
                                        },
                                    },
                                },
                            },
                        },
                        VmSize = "Standard_E32ds_v4",
                    },
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.NonProd,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("Deployment"),
    				InfrastructureConfiguration: workloads.SingleServerConfiguration{
    					AppResourceGroup: "X00-RG",
    					DatabaseType:     workloads.SAPDatabaseTypeHANA,
    					DeploymentType:   "SingleServer",
    					NetworkConfiguration: workloads.NetworkConfiguration{
    						IsSecondaryIpEnabled: true,
    					},
    					SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    					VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    						ImageReference: workloads.ImageReference{
    							Offer:     "RHEL-SAP",
    							Publisher: "RedHat",
    							Sku:       "84sapha-gen2",
    							Version:   "latest",
    						},
    						OsProfile: workloads.OSProfile{
    							AdminUsername: "{your-username}",
    							OsConfiguration: workloads.LinuxConfiguration{
    								DisablePasswordAuthentication: true,
    								OsType:                        "Linux",
    								Ssh: workloads.SshConfiguration{
    									PublicKeys: []workloads.SshPublicKey{
    										{
    											KeyData: "ssh-rsa public key",
    										},
    									},
    								},
    							},
    						},
    						VmSize: "Standard_E32ds_v4",
    					},
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeNonProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("Deployment")
                    .infrastructureConfiguration(SingleServerConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .databaseType("HANA")
                        .deploymentType("SingleServer")
                        .networkConfiguration(NetworkConfigurationArgs.builder()
                            .isSecondaryIpEnabled(true)
                            .build())
                        .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                        .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                            .imageReference(ImageReferenceArgs.builder()
                                .offer("RHEL-SAP")
                                .publisher("RedHat")
                                .sku("84sapha-gen2")
                                .version("latest")
                                .build())
                            .osProfile(OSProfileArgs.builder()
                                .adminUsername("{your-username}")
                                .osConfiguration(LinuxConfigurationArgs.builder()
                                    .disablePasswordAuthentication(true)
                                    .osType("Linux")
                                    .ssh(SshConfigurationArgs.builder()
                                        .publicKeys(SshPublicKeyArgs.builder()
                                            .keyData("ssh-rsa public key")
                                            .build())
                                        .build())
                                    .build())
                                .build())
                            .vmSize("Standard_E32ds_v4")
                            .build())
                        .build())
                    .build())
                .environment("NonProd")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "Deployment",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                "deployment_type": "SingleServer",
                "network_configuration": {
                    "is_secondary_ip_enabled": True,
                },
                "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                "virtual_machine_configuration": {
                    "image_reference": {
                        "offer": "RHEL-SAP",
                        "publisher": "RedHat",
                        "sku": "84sapha-gen2",
                        "version": "latest",
                    },
                    "os_profile": {
                        "admin_username": "{your-username}",
                        "os_configuration": {
                            "disable_password_authentication": True,
                            "os_type": "Linux",
                            "ssh": {
                                "public_keys": [{
                                    "key_data": "ssh-rsa public key",
                                }],
                            },
                        },
                    },
                    "vm_size": "Standard_E32ds_v4",
                },
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.NON_PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "Deployment",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                deploymentType: "SingleServer",
                networkConfiguration: {
                    isSecondaryIpEnabled: true,
                },
                subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                virtualMachineConfiguration: {
                    imageReference: {
                        offer: "RHEL-SAP",
                        publisher: "RedHat",
                        sku: "84sapha-gen2",
                        version: "latest",
                    },
                    osProfile: {
                        adminUsername: "{your-username}",
                        osConfiguration: {
                            disablePasswordAuthentication: true,
                            osType: "Linux",
                            ssh: {
                                publicKeys: [{
                                    keyData: "ssh-rsa public key",
                                }],
                            },
                        },
                    },
                    vmSize: "Standard_E32ds_v4",
                },
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.NonProd,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: Deployment
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              databaseType: HANA
              deploymentType: SingleServer
              networkConfiguration:
                isSecondaryIpEnabled: true
              subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
              virtualMachineConfiguration:
                imageReference:
                  offer: RHEL-SAP
                  publisher: RedHat
                  sku: 84sapha-gen2
                  version: latest
                osProfile:
                  adminUsername: '{your-username}'
                  osConfiguration:
                    disablePasswordAuthentication: true
                    osType: Linux
                    ssh:
                      publicKeys:
                        - keyData: ssh-rsa public key
                vmSize: Standard_E32ds_v4
          environment: NonProd
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 6,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        DiskConfiguration = new AzureNative.Workloads.Inputs.DiskConfigurationArgs
                        {
                            DiskVolumeConfigurations = 
                            {
                                { "backup", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 2,
                                    SizeGB = 256,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
                                    },
                                } },
                                { "hana/data", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 4,
                                    SizeGB = 128,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
                                    },
                                } },
                                { "hana/log", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 3,
                                    SizeGB = 128,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
                                    },
                                } },
                                { "hana/shared", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 1,
                                    SizeGB = 256,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
                                    },
                                } },
                                { "os", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 1,
                                    SizeGB = 64,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
                                    },
                                } },
                                { "usr/sap", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 1,
                                    SizeGB = 128,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
                                    },
                                } },
                            },
                        },
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 6,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType: workloads.SAPDatabaseTypeHANA,
    						DiskConfiguration: workloads.DiskConfiguration{
    							DiskVolumeConfigurations: map[string]workloads.DiskVolumeConfiguration{
    								"backup": workloads.DiskVolumeConfiguration{
    									Count:  2,
    									SizeGB: 256,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_StandardSSD_LRS,
    									},
    								},
    								"hana/data": workloads.DiskVolumeConfiguration{
    									Count:  4,
    									SizeGB: 128,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_Premium_LRS,
    									},
    								},
    								"hana/log": workloads.DiskVolumeConfiguration{
    									Count:  3,
    									SizeGB: 128,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_Premium_LRS,
    									},
    								},
    								"hana/shared": workloads.DiskVolumeConfiguration{
    									Count:  1,
    									SizeGB: 256,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_StandardSSD_LRS,
    									},
    								},
    								"os": workloads.DiskVolumeConfiguration{
    									Count:  1,
    									SizeGB: 64,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_StandardSSD_LRS,
    									},
    								},
    								"usr/sap": workloads.DiskVolumeConfiguration{
    									Count:  1,
    									SizeGB: 128,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_Premium_LRS,
    									},
    								},
    							},
    						},
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(6)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(1)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .diskConfiguration(DiskConfigurationArgs.builder()
                                .diskVolumeConfigurations(Map.ofEntries(
                                    Map.entry("backup", Map.ofEntries(
                                        Map.entry("count", 2),
                                        Map.entry("sizeGB", 256),
                                        Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
                                    )),
                                    Map.entry("hana/data", Map.ofEntries(
                                        Map.entry("count", 4),
                                        Map.entry("sizeGB", 128),
                                        Map.entry("sku", Map.of("name", "Premium_LRS"))
                                    )),
                                    Map.entry("hana/log", Map.ofEntries(
                                        Map.entry("count", 3),
                                        Map.entry("sizeGB", 128),
                                        Map.entry("sku", Map.of("name", "Premium_LRS"))
                                    )),
                                    Map.entry("hana/shared", Map.ofEntries(
                                        Map.entry("count", 1),
                                        Map.entry("sizeGB", 256),
                                        Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
                                    )),
                                    Map.entry("os", Map.ofEntries(
                                        Map.entry("count", 1),
                                        Map.entry("sizeGB", 64),
                                        Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
                                    )),
                                    Map.entry("usr/sap", Map.ofEntries(
                                        Map.entry("count", 1),
                                        Map.entry("sizeGB", 128),
                                        Map.entry("sku", Map.of("name", "Premium_LRS"))
                                    ))
                                ))
                                .build())
                            .instanceCount(1)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 6,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "disk_configuration": {
                        "disk_volume_configurations": {
                            "backup": {
                                "count": 2,
                                "size_gb": 256,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.STANDARD_SS_D_LRS,
                                },
                            },
                            "hana/data": {
                                "count": 4,
                                "size_gb": 128,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.PREMIUM_LRS,
                                },
                            },
                            "hana/log": {
                                "count": 3,
                                "size_gb": 128,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.PREMIUM_LRS,
                                },
                            },
                            "hana/shared": {
                                "count": 1,
                                "size_gb": 256,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.STANDARD_SS_D_LRS,
                                },
                            },
                            "os": {
                                "count": 1,
                                "size_gb": 64,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.STANDARD_SS_D_LRS,
                                },
                            },
                            "usr/sap": {
                                "count": 1,
                                "size_gb": 128,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.PREMIUM_LRS,
                                },
                            },
                        },
                    },
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 6,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 1,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    diskConfiguration: {
                        diskVolumeConfigurations: {
                            backup: {
                                count: 2,
                                sizeGB: 256,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.StandardSSD_LRS,
                                },
                            },
                            "hana/data": {
                                count: 4,
                                sizeGB: 128,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.Premium_LRS,
                                },
                            },
                            "hana/log": {
                                count: 3,
                                sizeGB: 128,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.Premium_LRS,
                                },
                            },
                            "hana/shared": {
                                count: 1,
                                sizeGB: 256,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.StandardSSD_LRS,
                                },
                            },
                            os: {
                                count: 1,
                                sizeGB: 64,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.StandardSSD_LRS,
                                },
                            },
                            "usr/sap": {
                                count: 1,
                                sizeGB: 128,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.Premium_LRS,
                                },
                            },
                        },
                    },
                    instanceCount: 1,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 6
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 1
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E16ds_v4
              databaseServer:
                databaseType: HANA
                diskConfiguration:
                  diskVolumeConfigurations:
                    backup:
                      count: 2
                      sizeGB: 256
                      sku:
                        name: StandardSSD_LRS
                    hana/data:
                      count: 4
                      sizeGB: 128
                      sku:
                        name: Premium_LRS
                    hana/log:
                      count: 3
                      sizeGB: 128
                      sku:
                        name: Premium_LRS
                    hana/shared:
                      count: 1
                      sizeGB: 256
                      sku:
                        name: StandardSSD_LRS
                    os:
                      count: 1
                      sizeGB: 64
                      sku:
                        name: StandardSSD_LRS
                    usr/sap:
                      count: 1
                      sizeGB: 128
                      sku:
                        name: Premium_LRS
                instanceCount: 1
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
            osSapConfiguration:
              sapFqdn: xyz.test.com
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 6,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        DiskConfiguration = new AzureNative.Workloads.Inputs.DiskConfigurationArgs
                        {
                            DiskVolumeConfigurations = 
                            {
                                { "backup", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 2,
                                    SizeGB = 256,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
                                    },
                                } },
                                { "hana/data", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 4,
                                    SizeGB = 128,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
                                    },
                                } },
                                { "hana/log", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 3,
                                    SizeGB = 128,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
                                    },
                                } },
                                { "hana/shared", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 1,
                                    SizeGB = 256,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
                                    },
                                } },
                                { "os", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 1,
                                    SizeGB = 64,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
                                    },
                                } },
                                { "usr/sap", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 1,
                                    SizeGB = 128,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
                                    },
                                } },
                            },
                        },
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                    HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
                    {
                        HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilitySet,
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 6,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType: workloads.SAPDatabaseTypeHANA,
    						DiskConfiguration: workloads.DiskConfiguration{
    							DiskVolumeConfigurations: map[string]workloads.DiskVolumeConfiguration{
    								"backup": workloads.DiskVolumeConfiguration{
    									Count:  2,
    									SizeGB: 256,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_StandardSSD_LRS,
    									},
    								},
    								"hana/data": workloads.DiskVolumeConfiguration{
    									Count:  4,
    									SizeGB: 128,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_Premium_LRS,
    									},
    								},
    								"hana/log": workloads.DiskVolumeConfiguration{
    									Count:  3,
    									SizeGB: 128,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_Premium_LRS,
    									},
    								},
    								"hana/shared": workloads.DiskVolumeConfiguration{
    									Count:  1,
    									SizeGB: 256,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_StandardSSD_LRS,
    									},
    								},
    								"os": workloads.DiskVolumeConfiguration{
    									Count:  1,
    									SizeGB: 64,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_StandardSSD_LRS,
    									},
    								},
    								"usr/sap": workloads.DiskVolumeConfiguration{
    									Count:  1,
    									SizeGB: 128,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_Premium_LRS,
    									},
    								},
    							},
    						},
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    					HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
    						HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilitySet,
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(6)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .diskConfiguration(DiskConfigurationArgs.builder()
                                .diskVolumeConfigurations(Map.ofEntries(
                                    Map.entry("backup", Map.ofEntries(
                                        Map.entry("count", 2),
                                        Map.entry("sizeGB", 256),
                                        Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
                                    )),
                                    Map.entry("hana/data", Map.ofEntries(
                                        Map.entry("count", 4),
                                        Map.entry("sizeGB", 128),
                                        Map.entry("sku", Map.of("name", "Premium_LRS"))
                                    )),
                                    Map.entry("hana/log", Map.ofEntries(
                                        Map.entry("count", 3),
                                        Map.entry("sizeGB", 128),
                                        Map.entry("sku", Map.of("name", "Premium_LRS"))
                                    )),
                                    Map.entry("hana/shared", Map.ofEntries(
                                        Map.entry("count", 1),
                                        Map.entry("sizeGB", 256),
                                        Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
                                    )),
                                    Map.entry("os", Map.ofEntries(
                                        Map.entry("count", 1),
                                        Map.entry("sizeGB", 64),
                                        Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
                                    )),
                                    Map.entry("usr/sap", Map.ofEntries(
                                        Map.entry("count", 1),
                                        Map.entry("sizeGB", 128),
                                        Map.entry("sku", Map.of("name", "Premium_LRS"))
                                    ))
                                ))
                                .build())
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
                            .highAvailabilityType("AvailabilitySet")
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 6,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "disk_configuration": {
                        "disk_volume_configurations": {
                            "backup": {
                                "count": 2,
                                "size_gb": 256,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.STANDARD_SS_D_LRS,
                                },
                            },
                            "hana/data": {
                                "count": 4,
                                "size_gb": 128,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.PREMIUM_LRS,
                                },
                            },
                            "hana/log": {
                                "count": 3,
                                "size_gb": 128,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.PREMIUM_LRS,
                                },
                            },
                            "hana/shared": {
                                "count": 1,
                                "size_gb": 256,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.STANDARD_SS_D_LRS,
                                },
                            },
                            "os": {
                                "count": 1,
                                "size_gb": 64,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.STANDARD_SS_D_LRS,
                                },
                            },
                            "usr/sap": {
                                "count": 1,
                                "size_gb": 128,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.PREMIUM_LRS,
                                },
                            },
                        },
                    },
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
                "high_availability_config": {
                    "high_availability_type": azure_native.workloads.SAPHighAvailabilityType.AVAILABILITY_SET,
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 6,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    diskConfiguration: {
                        diskVolumeConfigurations: {
                            backup: {
                                count: 2,
                                sizeGB: 256,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.StandardSSD_LRS,
                                },
                            },
                            "hana/data": {
                                count: 4,
                                sizeGB: 128,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.Premium_LRS,
                                },
                            },
                            "hana/log": {
                                count: 3,
                                sizeGB: 128,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.Premium_LRS,
                                },
                            },
                            "hana/shared": {
                                count: 1,
                                sizeGB: 256,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.StandardSSD_LRS,
                                },
                            },
                            os: {
                                count: 1,
                                sizeGB: 64,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.StandardSSD_LRS,
                                },
                            },
                            "usr/sap": {
                                count: 1,
                                sizeGB: 128,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.Premium_LRS,
                                },
                            },
                        },
                    },
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
                highAvailabilityConfig: {
                    highAvailabilityType: azure_native.workloads.SAPHighAvailabilityType.AvailabilitySet,
                },
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 6
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E16ds_v4
              databaseServer:
                databaseType: HANA
                diskConfiguration:
                  diskVolumeConfigurations:
                    backup:
                      count: 2
                      sizeGB: 256
                      sku:
                        name: StandardSSD_LRS
                    hana/data:
                      count: 4
                      sizeGB: 128
                      sku:
                        name: Premium_LRS
                    hana/log:
                      count: 3
                      sizeGB: 128
                      sku:
                        name: Premium_LRS
                    hana/shared:
                      count: 1
                      sizeGB: 256
                      sku:
                        name: StandardSSD_LRS
                    os:
                      count: 1
                      sizeGB: 64
                      sku:
                        name: StandardSSD_LRS
                    usr/sap:
                      count: 1
                      sizeGB: 128
                      sku:
                        name: Premium_LRS
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
              highAvailabilityConfig:
                highAvailabilityType: AvailabilitySet
            osSapConfiguration:
              sapFqdn: xyz.test.com
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 6,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        DiskConfiguration = new AzureNative.Workloads.Inputs.DiskConfigurationArgs
                        {
                            DiskVolumeConfigurations = 
                            {
                                { "backup", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 2,
                                    SizeGB = 256,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
                                    },
                                } },
                                { "hana/data", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 4,
                                    SizeGB = 128,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
                                    },
                                } },
                                { "hana/log", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 3,
                                    SizeGB = 128,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
                                    },
                                } },
                                { "hana/shared", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 1,
                                    SizeGB = 256,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
                                    },
                                } },
                                { "os", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 1,
                                    SizeGB = 64,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
                                    },
                                } },
                                { "usr/sap", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                                {
                                    Count = 1,
                                    SizeGB = 128,
                                    Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                    {
                                        Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
                                    },
                                } },
                            },
                        },
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                    HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
                    {
                        HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilityZone,
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 6,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType: workloads.SAPDatabaseTypeHANA,
    						DiskConfiguration: workloads.DiskConfiguration{
    							DiskVolumeConfigurations: map[string]workloads.DiskVolumeConfiguration{
    								"backup": workloads.DiskVolumeConfiguration{
    									Count:  2,
    									SizeGB: 256,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_StandardSSD_LRS,
    									},
    								},
    								"hana/data": workloads.DiskVolumeConfiguration{
    									Count:  4,
    									SizeGB: 128,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_Premium_LRS,
    									},
    								},
    								"hana/log": workloads.DiskVolumeConfiguration{
    									Count:  3,
    									SizeGB: 128,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_Premium_LRS,
    									},
    								},
    								"hana/shared": workloads.DiskVolumeConfiguration{
    									Count:  1,
    									SizeGB: 256,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_StandardSSD_LRS,
    									},
    								},
    								"os": workloads.DiskVolumeConfiguration{
    									Count:  1,
    									SizeGB: 64,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_StandardSSD_LRS,
    									},
    								},
    								"usr/sap": workloads.DiskVolumeConfiguration{
    									Count:  1,
    									SizeGB: 128,
    									Sku: workloads.DiskSku{
    										Name: workloads.DiskSkuName_Premium_LRS,
    									},
    								},
    							},
    						},
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    					HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
    						HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilityZone,
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(6)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .diskConfiguration(DiskConfigurationArgs.builder()
                                .diskVolumeConfigurations(Map.ofEntries(
                                    Map.entry("backup", Map.ofEntries(
                                        Map.entry("count", 2),
                                        Map.entry("sizeGB", 256),
                                        Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
                                    )),
                                    Map.entry("hana/data", Map.ofEntries(
                                        Map.entry("count", 4),
                                        Map.entry("sizeGB", 128),
                                        Map.entry("sku", Map.of("name", "Premium_LRS"))
                                    )),
                                    Map.entry("hana/log", Map.ofEntries(
                                        Map.entry("count", 3),
                                        Map.entry("sizeGB", 128),
                                        Map.entry("sku", Map.of("name", "Premium_LRS"))
                                    )),
                                    Map.entry("hana/shared", Map.ofEntries(
                                        Map.entry("count", 1),
                                        Map.entry("sizeGB", 256),
                                        Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
                                    )),
                                    Map.entry("os", Map.ofEntries(
                                        Map.entry("count", 1),
                                        Map.entry("sizeGB", 64),
                                        Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
                                    )),
                                    Map.entry("usr/sap", Map.ofEntries(
                                        Map.entry("count", 1),
                                        Map.entry("sizeGB", 128),
                                        Map.entry("sku", Map.of("name", "Premium_LRS"))
                                    ))
                                ))
                                .build())
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
                            .highAvailabilityType("AvailabilityZone")
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 6,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "disk_configuration": {
                        "disk_volume_configurations": {
                            "backup": {
                                "count": 2,
                                "size_gb": 256,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.STANDARD_SS_D_LRS,
                                },
                            },
                            "hana/data": {
                                "count": 4,
                                "size_gb": 128,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.PREMIUM_LRS,
                                },
                            },
                            "hana/log": {
                                "count": 3,
                                "size_gb": 128,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.PREMIUM_LRS,
                                },
                            },
                            "hana/shared": {
                                "count": 1,
                                "size_gb": 256,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.STANDARD_SS_D_LRS,
                                },
                            },
                            "os": {
                                "count": 1,
                                "size_gb": 64,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.STANDARD_SS_D_LRS,
                                },
                            },
                            "usr/sap": {
                                "count": 1,
                                "size_gb": 128,
                                "sku": {
                                    "name": azure_native.workloads.DiskSkuName.PREMIUM_LRS,
                                },
                            },
                        },
                    },
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
                "high_availability_config": {
                    "high_availability_type": azure_native.workloads.SAPHighAvailabilityType.AVAILABILITY_ZONE,
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 6,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    diskConfiguration: {
                        diskVolumeConfigurations: {
                            backup: {
                                count: 2,
                                sizeGB: 256,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.StandardSSD_LRS,
                                },
                            },
                            "hana/data": {
                                count: 4,
                                sizeGB: 128,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.Premium_LRS,
                                },
                            },
                            "hana/log": {
                                count: 3,
                                sizeGB: 128,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.Premium_LRS,
                                },
                            },
                            "hana/shared": {
                                count: 1,
                                sizeGB: 256,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.StandardSSD_LRS,
                                },
                            },
                            os: {
                                count: 1,
                                sizeGB: 64,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.StandardSSD_LRS,
                                },
                            },
                            "usr/sap": {
                                count: 1,
                                sizeGB: 128,
                                sku: {
                                    name: azure_native.workloads.DiskSkuName.Premium_LRS,
                                },
                            },
                        },
                    },
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
                highAvailabilityConfig: {
                    highAvailabilityType: azure_native.workloads.SAPHighAvailabilityType.AvailabilityZone,
                },
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 6
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E16ds_v4
              databaseServer:
                databaseType: HANA
                diskConfiguration:
                  diskVolumeConfigurations:
                    backup:
                      count: 2
                      sizeGB: 256
                      sku:
                        name: StandardSSD_LRS
                    hana/data:
                      count: 4
                      sizeGB: 128
                      sku:
                        name: Premium_LRS
                    hana/log:
                      count: 3
                      sizeGB: 128
                      sku:
                        name: Premium_LRS
                    hana/shared:
                      count: 1
                      sizeGB: 256
                      sku:
                        name: StandardSSD_LRS
                    os:
                      count: 1
                      sizeGB: 64
                      sku:
                        name: StandardSSD_LRS
                    usr/sap:
                      count: 1
                      sizeGB: 128
                      sku:
                        name: Premium_LRS
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
              highAvailabilityConfig:
                highAvailabilityType: AvailabilityZone
            osSapConfiguration:
              sapFqdn: xyz.test.com
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.SingleServerConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                    DbDiskConfiguration = new AzureNative.Workloads.Inputs.DiskConfigurationArgs
                    {
                        DiskVolumeConfigurations = 
                        {
                            { "backup", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                            {
                                Count = 2,
                                SizeGB = 256,
                                Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                {
                                    Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
                                },
                            } },
                            { "hana/data", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                            {
                                Count = 4,
                                SizeGB = 128,
                                Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                {
                                    Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
                                },
                            } },
                            { "hana/log", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                            {
                                Count = 3,
                                SizeGB = 128,
                                Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                {
                                    Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
                                },
                            } },
                            { "hana/shared", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                            {
                                Count = 1,
                                SizeGB = 256,
                                Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                {
                                    Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
                                },
                            } },
                            { "os", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                            {
                                Count = 1,
                                SizeGB = 64,
                                Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                {
                                    Name = AzureNative.Workloads.DiskSkuName.StandardSSD_LRS,
                                },
                            } },
                            { "usr/sap", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                            {
                                Count = 1,
                                SizeGB = 128,
                                Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                                {
                                    Name = AzureNative.Workloads.DiskSkuName.Premium_LRS,
                                },
                            } },
                        },
                    },
                    DeploymentType = "SingleServer",
                    NetworkConfiguration = new AzureNative.Workloads.Inputs.NetworkConfigurationArgs
                    {
                        IsSecondaryIpEnabled = true,
                    },
                    SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                    {
                        ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                        {
                            Offer = "RHEL-SAP",
                            Publisher = "RedHat",
                            Sku = "84sapha-gen2",
                            Version = "latest",
                        },
                        OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                        {
                            AdminUsername = "{your-username}",
                            OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                            {
                                DisablePasswordAuthentication = true,
                                OsType = "Linux",
                                SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                {
                                    PrivateKey = "xyz",
                                    PublicKey = "abc",
                                },
                            },
                        },
                        VmSize = "Standard_E32ds_v4",
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.NonProd,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.SingleServerConfiguration{
    					AppResourceGroup: "X00-RG",
    					DatabaseType:     workloads.SAPDatabaseTypeHANA,
    					DbDiskConfiguration: workloads.DiskConfiguration{
    						DiskVolumeConfigurations: map[string]workloads.DiskVolumeConfiguration{
    							"backup": workloads.DiskVolumeConfiguration{
    								Count:  2,
    								SizeGB: 256,
    								Sku: workloads.DiskSku{
    									Name: workloads.DiskSkuName_StandardSSD_LRS,
    								},
    							},
    							"hana/data": workloads.DiskVolumeConfiguration{
    								Count:  4,
    								SizeGB: 128,
    								Sku: workloads.DiskSku{
    									Name: workloads.DiskSkuName_Premium_LRS,
    								},
    							},
    							"hana/log": workloads.DiskVolumeConfiguration{
    								Count:  3,
    								SizeGB: 128,
    								Sku: workloads.DiskSku{
    									Name: workloads.DiskSkuName_Premium_LRS,
    								},
    							},
    							"hana/shared": workloads.DiskVolumeConfiguration{
    								Count:  1,
    								SizeGB: 256,
    								Sku: workloads.DiskSku{
    									Name: workloads.DiskSkuName_StandardSSD_LRS,
    								},
    							},
    							"os": workloads.DiskVolumeConfiguration{
    								Count:  1,
    								SizeGB: 64,
    								Sku: workloads.DiskSku{
    									Name: workloads.DiskSkuName_StandardSSD_LRS,
    								},
    							},
    							"usr/sap": workloads.DiskVolumeConfiguration{
    								Count:  1,
    								SizeGB: 128,
    								Sku: workloads.DiskSku{
    									Name: workloads.DiskSkuName_Premium_LRS,
    								},
    							},
    						},
    					},
    					DeploymentType: "SingleServer",
    					NetworkConfiguration: workloads.NetworkConfiguration{
    						IsSecondaryIpEnabled: true,
    					},
    					SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    					VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    						ImageReference: workloads.ImageReference{
    							Offer:     "RHEL-SAP",
    							Publisher: "RedHat",
    							Sku:       "84sapha-gen2",
    							Version:   "latest",
    						},
    						OsProfile: workloads.OSProfile{
    							AdminUsername: "{your-username}",
    							OsConfiguration: workloads.LinuxConfiguration{
    								DisablePasswordAuthentication: true,
    								OsType:                        "Linux",
    								SshKeyPair: workloads.SshKeyPair{
    									PrivateKey: "xyz",
    									PublicKey:  "abc",
    								},
    							},
    						},
    						VmSize: "Standard_E32ds_v4",
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeNonProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(SingleServerConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .databaseType("HANA")
                        .dbDiskConfiguration(DiskConfigurationArgs.builder()
                            .diskVolumeConfigurations(Map.ofEntries(
                                Map.entry("backup", Map.ofEntries(
                                    Map.entry("count", 2),
                                    Map.entry("sizeGB", 256),
                                    Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
                                )),
                                Map.entry("hana/data", Map.ofEntries(
                                    Map.entry("count", 4),
                                    Map.entry("sizeGB", 128),
                                    Map.entry("sku", Map.of("name", "Premium_LRS"))
                                )),
                                Map.entry("hana/log", Map.ofEntries(
                                    Map.entry("count", 3),
                                    Map.entry("sizeGB", 128),
                                    Map.entry("sku", Map.of("name", "Premium_LRS"))
                                )),
                                Map.entry("hana/shared", Map.ofEntries(
                                    Map.entry("count", 1),
                                    Map.entry("sizeGB", 256),
                                    Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
                                )),
                                Map.entry("os", Map.ofEntries(
                                    Map.entry("count", 1),
                                    Map.entry("sizeGB", 64),
                                    Map.entry("sku", Map.of("name", "StandardSSD_LRS"))
                                )),
                                Map.entry("usr/sap", Map.ofEntries(
                                    Map.entry("count", 1),
                                    Map.entry("sizeGB", 128),
                                    Map.entry("sku", Map.of("name", "Premium_LRS"))
                                ))
                            ))
                            .build())
                        .deploymentType("SingleServer")
                        .networkConfiguration(NetworkConfigurationArgs.builder()
                            .isSecondaryIpEnabled(true)
                            .build())
                        .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                        .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                            .imageReference(ImageReferenceArgs.builder()
                                .offer("RHEL-SAP")
                                .publisher("RedHat")
                                .sku("84sapha-gen2")
                                .version("latest")
                                .build())
                            .osProfile(OSProfileArgs.builder()
                                .adminUsername("{your-username}")
                                .osConfiguration(LinuxConfigurationArgs.builder()
                                    .disablePasswordAuthentication(true)
                                    .osType("Linux")
                                    .sshKeyPair(SshKeyPairArgs.builder()
                                        .privateKey("xyz")
                                        .publicKey("abc")
                                        .build())
                                    .build())
                                .build())
                            .vmSize("Standard_E32ds_v4")
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .build())
                .environment("NonProd")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                "db_disk_configuration": {
                    "disk_volume_configurations": {
                        "backup": {
                            "count": 2,
                            "size_gb": 256,
                            "sku": {
                                "name": azure_native.workloads.DiskSkuName.STANDARD_SS_D_LRS,
                            },
                        },
                        "hana/data": {
                            "count": 4,
                            "size_gb": 128,
                            "sku": {
                                "name": azure_native.workloads.DiskSkuName.PREMIUM_LRS,
                            },
                        },
                        "hana/log": {
                            "count": 3,
                            "size_gb": 128,
                            "sku": {
                                "name": azure_native.workloads.DiskSkuName.PREMIUM_LRS,
                            },
                        },
                        "hana/shared": {
                            "count": 1,
                            "size_gb": 256,
                            "sku": {
                                "name": azure_native.workloads.DiskSkuName.STANDARD_SS_D_LRS,
                            },
                        },
                        "os": {
                            "count": 1,
                            "size_gb": 64,
                            "sku": {
                                "name": azure_native.workloads.DiskSkuName.STANDARD_SS_D_LRS,
                            },
                        },
                        "usr/sap": {
                            "count": 1,
                            "size_gb": 128,
                            "sku": {
                                "name": azure_native.workloads.DiskSkuName.PREMIUM_LRS,
                            },
                        },
                    },
                },
                "deployment_type": "SingleServer",
                "network_configuration": {
                    "is_secondary_ip_enabled": True,
                },
                "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                "virtual_machine_configuration": {
                    "image_reference": {
                        "offer": "RHEL-SAP",
                        "publisher": "RedHat",
                        "sku": "84sapha-gen2",
                        "version": "latest",
                    },
                    "os_profile": {
                        "admin_username": "{your-username}",
                        "os_configuration": {
                            "disable_password_authentication": True,
                            "os_type": "Linux",
                            "ssh_key_pair": {
                                "private_key": "xyz",
                                "public_key": "abc",
                            },
                        },
                    },
                    "vm_size": "Standard_E32ds_v4",
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.NON_PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                dbDiskConfiguration: {
                    diskVolumeConfigurations: {
                        backup: {
                            count: 2,
                            sizeGB: 256,
                            sku: {
                                name: azure_native.workloads.DiskSkuName.StandardSSD_LRS,
                            },
                        },
                        "hana/data": {
                            count: 4,
                            sizeGB: 128,
                            sku: {
                                name: azure_native.workloads.DiskSkuName.Premium_LRS,
                            },
                        },
                        "hana/log": {
                            count: 3,
                            sizeGB: 128,
                            sku: {
                                name: azure_native.workloads.DiskSkuName.Premium_LRS,
                            },
                        },
                        "hana/shared": {
                            count: 1,
                            sizeGB: 256,
                            sku: {
                                name: azure_native.workloads.DiskSkuName.StandardSSD_LRS,
                            },
                        },
                        os: {
                            count: 1,
                            sizeGB: 64,
                            sku: {
                                name: azure_native.workloads.DiskSkuName.StandardSSD_LRS,
                            },
                        },
                        "usr/sap": {
                            count: 1,
                            sizeGB: 128,
                            sku: {
                                name: azure_native.workloads.DiskSkuName.Premium_LRS,
                            },
                        },
                    },
                },
                deploymentType: "SingleServer",
                networkConfiguration: {
                    isSecondaryIpEnabled: true,
                },
                subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                virtualMachineConfiguration: {
                    imageReference: {
                        offer: "RHEL-SAP",
                        publisher: "RedHat",
                        sku: "84sapha-gen2",
                        version: "latest",
                    },
                    osProfile: {
                        adminUsername: "{your-username}",
                        osConfiguration: {
                            disablePasswordAuthentication: true,
                            osType: "Linux",
                            sshKeyPair: {
                                privateKey: "xyz",
                                publicKey: "abc",
                            },
                        },
                    },
                    vmSize: "Standard_E32ds_v4",
                },
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.NonProd,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              databaseType: HANA
              dbDiskConfiguration:
                diskVolumeConfigurations:
                  backup:
                    count: 2
                    sizeGB: 256
                    sku:
                      name: StandardSSD_LRS
                  hana/data:
                    count: 4
                    sizeGB: 128
                    sku:
                      name: Premium_LRS
                  hana/log:
                    count: 3
                    sizeGB: 128
                    sku:
                      name: Premium_LRS
                  hana/shared:
                    count: 1
                    sizeGB: 256
                    sku:
                      name: StandardSSD_LRS
                  os:
                    count: 1
                    sizeGB: 64
                    sku:
                      name: StandardSSD_LRS
                  usr/sap:
                    count: 1
                    sizeGB: 128
                    sku:
                      name: Premium_LRS
              deploymentType: SingleServer
              networkConfiguration:
                isSecondaryIpEnabled: true
              subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/dindurkhya-e2etesting/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
              virtualMachineConfiguration:
                imageReference:
                  offer: RHEL-SAP
                  publisher: RedHat
                  sku: 84sapha-gen2
                  version: latest
                osProfile:
                  adminUsername: '{your-username}'
                  osConfiguration:
                    disablePasswordAuthentication: true
                    osType: Linux
                    sshKeyPair:
                      privateKey: xyz
                      publicKey: abc
                vmSize: Standard_E32ds_v4
            osSapConfiguration:
              sapFqdn: xyz.test.com
          environment: NonProd
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 6,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 6,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType:  workloads.SAPDatabaseTypeHANA,
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(6)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(1)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .instanceCount(1)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 6,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 6,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 1,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    instanceCount: 1,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 6
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 1
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E16ds_v4
              databaseServer:
                databaseType: HANA
                instanceCount: 1
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
            osSapConfiguration:
              sapFqdn: xyz.test.com
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 6,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                    HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
                    {
                        HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilitySet,
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 6,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType:  workloads.SAPDatabaseTypeHANA,
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    					HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
    						HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilitySet,
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(6)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
                            .highAvailabilityType("AvailabilitySet")
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 6,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
                "high_availability_config": {
                    "high_availability_type": azure_native.workloads.SAPHighAvailabilityType.AVAILABILITY_SET,
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 6,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
                highAvailabilityConfig: {
                    highAvailabilityType: azure_native.workloads.SAPHighAvailabilityType.AvailabilitySet,
                },
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 6
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E16ds_v4
              databaseServer:
                databaseType: HANA
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
              highAvailabilityConfig:
                highAvailabilityType: AvailabilitySet
            osSapConfiguration:
              sapFqdn: xyz.test.com
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 6,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                    HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
                    {
                        HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilityZone,
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 6,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType:  workloads.SAPDatabaseTypeHANA,
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    					HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
    						HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilityZone,
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(6)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
                            .highAvailabilityType("AvailabilityZone")
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 6,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
                "high_availability_config": {
                    "high_availability_type": azure_native.workloads.SAPHighAvailabilityType.AVAILABILITY_ZONE,
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 6,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
                highAvailabilityConfig: {
                    highAvailabilityType: azure_native.workloads.SAPHighAvailabilityType.AvailabilityZone,
                },
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 6
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E16ds_v4
              databaseServer:
                databaseType: HANA
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
              highAvailabilityConfig:
                highAvailabilityType: AvailabilityZone
            osSapConfiguration:
              sapFqdn: xyz.test.com
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.SingleServerConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                    DeploymentType = "SingleServer",
                    NetworkConfiguration = new AzureNative.Workloads.Inputs.NetworkConfigurationArgs
                    {
                        IsSecondaryIpEnabled = true,
                    },
                    SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                    {
                        ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                        {
                            Offer = "RHEL-SAP",
                            Publisher = "RedHat",
                            Sku = "84sapha-gen2",
                            Version = "latest",
                        },
                        OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                        {
                            AdminUsername = "{your-username}",
                            OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                            {
                                DisablePasswordAuthentication = true,
                                OsType = "Linux",
                                SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                {
                                    PrivateKey = "xyz",
                                    PublicKey = "abc",
                                },
                            },
                        },
                        VmSize = "Standard_E32ds_v4",
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.NonProd,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.SingleServerConfiguration{
    					AppResourceGroup: "X00-RG",
    					DatabaseType:     workloads.SAPDatabaseTypeHANA,
    					DeploymentType:   "SingleServer",
    					NetworkConfiguration: workloads.NetworkConfiguration{
    						IsSecondaryIpEnabled: true,
    					},
    					SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    					VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    						ImageReference: workloads.ImageReference{
    							Offer:     "RHEL-SAP",
    							Publisher: "RedHat",
    							Sku:       "84sapha-gen2",
    							Version:   "latest",
    						},
    						OsProfile: workloads.OSProfile{
    							AdminUsername: "{your-username}",
    							OsConfiguration: workloads.LinuxConfiguration{
    								DisablePasswordAuthentication: true,
    								OsType:                        "Linux",
    								SshKeyPair: workloads.SshKeyPair{
    									PrivateKey: "xyz",
    									PublicKey:  "abc",
    								},
    							},
    						},
    						VmSize: "Standard_E32ds_v4",
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeNonProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(SingleServerConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .databaseType("HANA")
                        .deploymentType("SingleServer")
                        .networkConfiguration(NetworkConfigurationArgs.builder()
                            .isSecondaryIpEnabled(true)
                            .build())
                        .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                        .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                            .imageReference(ImageReferenceArgs.builder()
                                .offer("RHEL-SAP")
                                .publisher("RedHat")
                                .sku("84sapha-gen2")
                                .version("latest")
                                .build())
                            .osProfile(OSProfileArgs.builder()
                                .adminUsername("{your-username}")
                                .osConfiguration(LinuxConfigurationArgs.builder()
                                    .disablePasswordAuthentication(true)
                                    .osType("Linux")
                                    .sshKeyPair(SshKeyPairArgs.builder()
                                        .privateKey("xyz")
                                        .publicKey("abc")
                                        .build())
                                    .build())
                                .build())
                            .vmSize("Standard_E32ds_v4")
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .build())
                .environment("NonProd")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                "deployment_type": "SingleServer",
                "network_configuration": {
                    "is_secondary_ip_enabled": True,
                },
                "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                "virtual_machine_configuration": {
                    "image_reference": {
                        "offer": "RHEL-SAP",
                        "publisher": "RedHat",
                        "sku": "84sapha-gen2",
                        "version": "latest",
                    },
                    "os_profile": {
                        "admin_username": "{your-username}",
                        "os_configuration": {
                            "disable_password_authentication": True,
                            "os_type": "Linux",
                            "ssh_key_pair": {
                                "private_key": "xyz",
                                "public_key": "abc",
                            },
                        },
                    },
                    "vm_size": "Standard_E32ds_v4",
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.NON_PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                deploymentType: "SingleServer",
                networkConfiguration: {
                    isSecondaryIpEnabled: true,
                },
                subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                virtualMachineConfiguration: {
                    imageReference: {
                        offer: "RHEL-SAP",
                        publisher: "RedHat",
                        sku: "84sapha-gen2",
                        version: "latest",
                    },
                    osProfile: {
                        adminUsername: "{your-username}",
                        osConfiguration: {
                            disablePasswordAuthentication: true,
                            osType: "Linux",
                            sshKeyPair: {
                                privateKey: "xyz",
                                publicKey: "abc",
                            },
                        },
                    },
                    vmSize: "Standard_E32ds_v4",
                },
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.NonProd,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              databaseType: HANA
              deploymentType: SingleServer
              networkConfiguration:
                isSecondaryIpEnabled: true
              subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
              virtualMachineConfiguration:
                imageReference:
                  offer: RHEL-SAP
                  publisher: RedHat
                  sku: 84sapha-gen2
                  version: latest
                osProfile:
                  adminUsername: '{your-username}'
                  osConfiguration:
                    disablePasswordAuthentication: true
                    osType: Linux
                    sshKeyPair:
                      privateKey: xyz
                      publicKey: abc
                vmSize: Standard_E32ds_v4
            osSapConfiguration:
              sapFqdn: xyz.test.com
          environment: NonProd
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    

    Create Infrastructure with a new SAP Transport Directory Fileshare

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 6,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                    StorageConfiguration = new AzureNative.Workloads.Inputs.StorageConfigurationArgs
                    {
                        TransportFileShareConfiguration = new AzureNative.Workloads.Inputs.CreateAndMountFileShareConfigurationArgs
                        {
                            ConfigurationType = "CreateAndMount",
                            ResourceGroup = "rgName",
                            StorageAccountName = "storageName",
                        },
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 6,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType:  workloads.SAPDatabaseTypeHANA,
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    					StorageConfiguration: workloads.StorageConfiguration{
    						TransportFileShareConfiguration: workloads.CreateAndMountFileShareConfiguration{
    							ConfigurationType:  "CreateAndMount",
    							ResourceGroup:      "rgName",
    							StorageAccountName: "storageName",
    						},
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(6)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(1)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .instanceCount(1)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .storageConfiguration(StorageConfigurationArgs.builder()
                            .transportFileShareConfiguration(CreateAndMountFileShareConfigurationArgs.builder()
                                .configurationType("CreateAndMount")
                                .resourceGroup("rgName")
                                .storageAccountName("storageName")
                                .build())
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 6,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
                "storage_configuration": {
                    "transport_file_share_configuration": {
                        "configuration_type": "CreateAndMount",
                        "resource_group": "rgName",
                        "storage_account_name": "storageName",
                    },
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 6,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 1,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    instanceCount: 1,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
                storageConfiguration: {
                    transportFileShareConfiguration: {
                        configurationType: "CreateAndMount",
                        resourceGroup: "rgName",
                        storageAccountName: "storageName",
                    },
                },
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 6
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 1
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E16ds_v4
              databaseServer:
                databaseType: HANA
                instanceCount: 1
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
              storageConfiguration:
                transportFileShareConfiguration:
                  configurationType: CreateAndMount
                  resourceGroup: rgName
                  storageAccountName: storageName
            osSapConfiguration:
              sapFqdn: xyz.test.com
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    

    Create Infrastructure with an existing SAP Transport Directory Fileshare

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 6,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                    StorageConfiguration = new AzureNative.Workloads.Inputs.StorageConfigurationArgs
                    {
                        TransportFileShareConfiguration = new AzureNative.Workloads.Inputs.MountFileShareConfigurationArgs
                        {
                            ConfigurationType = "Mount",
                            Id = "/subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint",
                            PrivateEndpointId = "/subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint",
                        },
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 6,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType:  workloads.SAPDatabaseTypeHANA,
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    					StorageConfiguration: workloads.StorageConfiguration{
    						TransportFileShareConfiguration: workloads.MountFileShareConfiguration{
    							ConfigurationType: "Mount",
    							Id:                "/subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint",
    							PrivateEndpointId: "/subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint",
    						},
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(6)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(1)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .instanceCount(1)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .storageConfiguration(StorageConfigurationArgs.builder()
                            .transportFileShareConfiguration(CreateAndMountFileShareConfigurationArgs.builder()
                                .configurationType("Mount")
                                .id("/subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint")
                                .privateEndpointId("/subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint")
                                .build())
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 6,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
                "storage_configuration": {
                    "transport_file_share_configuration": {
                        "configuration_type": "Mount",
                        "id": "/subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint",
                        "private_endpoint_id": "/subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint",
                    },
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 6,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 1,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    instanceCount: 1,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
                storageConfiguration: {
                    transportFileShareConfiguration: {
                        configurationType: "Mount",
                        id: "/subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint",
                        privateEndpointId: "/subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint",
                    },
                },
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 6
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 1
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E16ds_v4
              databaseServer:
                databaseType: HANA
                instanceCount: 1
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
              storageConfiguration:
                transportFileShareConfiguration:
                  configurationType: Mount
                  id: /subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint
                  privateEndpointId: /subscriptions/49d64d54-e888-4c46-a868-1936802b762c/resourceGroups/testrg/providers/Microsoft.Network/privateEndpoints/endpoint
            osSapConfiguration:
              sapFqdn: xyz.test.com
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    

    Create Infrastructure without a SAP Transport Directory Fileshare

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 6,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                    StorageConfiguration = new AzureNative.Workloads.Inputs.StorageConfigurationArgs
                    {
                        TransportFileShareConfiguration = new AzureNative.Workloads.Inputs.SkipFileShareConfigurationArgs
                        {
                            ConfigurationType = "Skip",
                        },
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 6,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType:  workloads.SAPDatabaseTypeHANA,
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    					StorageConfiguration: workloads.StorageConfiguration{
    						TransportFileShareConfiguration: workloads.SkipFileShareConfiguration{
    							ConfigurationType: "Skip",
    						},
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(6)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(1)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .instanceCount(1)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .storageConfiguration(StorageConfigurationArgs.builder()
                            .transportFileShareConfiguration(SkipFileShareConfigurationArgs.builder()
                                .configurationType("Skip")
                                .build())
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 6,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
                "storage_configuration": {
                    "transport_file_share_configuration": {
                        "configuration_type": "Skip",
                    },
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 6,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 1,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    instanceCount: 1,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
                storageConfiguration: {
                    transportFileShareConfiguration: {
                        configurationType: "Skip",
                    },
                },
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 6
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 1
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E16ds_v4
              databaseServer:
                databaseType: HANA
                instanceCount: 1
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
              storageConfiguration:
                transportFileShareConfiguration:
                  configurationType: Skip
            osSapConfiguration:
              sapFqdn: xyz.test.com
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    

    Detect SAP Software Installation on a Distributed System

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "{{resourcegrp}}",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP-HA",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "azureuser",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "{{privateKey}}",
                                        PublicKey = "{{sshkey}}",
                                    },
                                },
                            },
                            VmSize = "Standard_E4ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP-HA",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "azureuser",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "{{privateKey}}",
                                        PublicKey = "{{sshkey}}",
                                    },
                                },
                            },
                            VmSize = "Standard_E4ds_v4",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP-HA",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "azureuser",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "{{privateKey}}",
                                        PublicKey = "{{sshkey}}",
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                    NetworkConfiguration = new AzureNative.Workloads.Inputs.NetworkConfigurationArgs
                    {
                        IsSecondaryIpEnabled = true,
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "sap.bpaas.com",
                },
                SoftwareConfiguration = new AzureNative.Workloads.Inputs.ExternalInstallationSoftwareConfigurationArgs
                {
                    CentralServerVmId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
                    SoftwareInstallationType = "External",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "eastus2",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = 
            {
                { "created by", "azureuser" },
            },
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "{{resourcegrp}}",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP-HA",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "azureuser",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "{{privateKey}}",
    										PublicKey:  "{{sshkey}}",
    									},
    								},
    							},
    							VmSize: "Standard_E4ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP-HA",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "azureuser",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "{{privateKey}}",
    										PublicKey:  "{{sshkey}}",
    									},
    								},
    							},
    							VmSize: "Standard_E4ds_v4",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP-HA",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "azureuser",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "{{privateKey}}",
    										PublicKey:  "{{sshkey}}",
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    					NetworkConfiguration: workloads.NetworkConfiguration{
    						IsSecondaryIpEnabled: true,
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("sap.bpaas.com"),
    				},
    				SoftwareConfiguration: workloads.ExternalInstallationSoftwareConfiguration{
    					CentralServerVmId:        "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
    					SoftwareInstallationType: "External",
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("eastus2"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags: pulumi.StringMap{
    				"created by": pulumi.String("azureuser"),
    			},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("{{resourcegrp}}")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP-HA")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("azureuser")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("{{privateKey}}")
                                            .publicKey("{{sshkey}}")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E4ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(1)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP-HA")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("azureuser")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("{{privateKey}}")
                                            .publicKey("{{sshkey}}")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E4ds_v4")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .instanceCount(1)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP-HA")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("azureuser")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("{{privateKey}}")
                                            .publicKey("{{sshkey}}")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .networkConfiguration(NetworkConfigurationArgs.builder()
                            .isSecondaryIpEnabled(true)
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("sap.bpaas.com")
                        .build())
                    .softwareConfiguration(ExternalInstallationSoftwareConfigurationArgs.builder()
                        .centralServerVmId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0")
                        .softwareInstallationType("External")
                        .build())
                    .build())
                .environment("Prod")
                .location("eastus2")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags(Map.of("created by", "azureuser"))
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "{{resourcegrp}}",
                "application_server": {
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP-HA",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "azureuser",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "{{privateKey}}",
                                    "public_key": "{{sshkey}}",
                                },
                            },
                        },
                        "vm_size": "Standard_E4ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP-HA",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "azureuser",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "{{privateKey}}",
                                    "public_key": "{{sshkey}}",
                                },
                            },
                        },
                        "vm_size": "Standard_E4ds_v4",
                    },
                },
                "database_server": {
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP-HA",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "azureuser",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "{{privateKey}}",
                                    "public_key": "{{sshkey}}",
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
                "network_configuration": {
                    "is_secondary_ip_enabled": True,
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "sap.bpaas.com",
            },
            "software_configuration": {
                "central_server_vm_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
                "software_installation_type": "External",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="eastus2",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={
            "created by": "azureuser",
        })
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "{{resourcegrp}}",
                applicationServer: {
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP-HA",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "azureuser",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "{{privateKey}}",
                                    publicKey: "{{sshkey}}",
                                },
                            },
                        },
                        vmSize: "Standard_E4ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 1,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP-HA",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "azureuser",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "{{privateKey}}",
                                    publicKey: "{{sshkey}}",
                                },
                            },
                        },
                        vmSize: "Standard_E4ds_v4",
                    },
                },
                databaseServer: {
                    instanceCount: 1,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP-HA",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "azureuser",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "{{privateKey}}",
                                    publicKey: "{{sshkey}}",
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
                networkConfiguration: {
                    isSecondaryIpEnabled: true,
                },
            },
            osSapConfiguration: {
                sapFqdn: "sap.bpaas.com",
            },
            softwareConfiguration: {
                centralServerVmId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
                softwareInstallationType: "External",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "eastus2",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {
            "created by": "azureuser",
        },
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: '{{resourcegrp}}'
              applicationServer:
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP-HA
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: azureuser
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: '{{privateKey}}'
                        publicKey: '{{sshkey}}'
                  vmSize: Standard_E4ds_v4
              centralServer:
                instanceCount: 1
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP-HA
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: azureuser
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: '{{privateKey}}'
                        publicKey: '{{sshkey}}'
                  vmSize: Standard_E4ds_v4
              databaseServer:
                instanceCount: 1
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP-HA
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: azureuser
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: '{{privateKey}}'
                        publicKey: '{{sshkey}}'
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
              networkConfiguration:
                isSecondaryIpEnabled: true
            osSapConfiguration:
              sapFqdn: sap.bpaas.com
            softwareConfiguration:
              centralServerVmId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0
              softwareInstallationType: External
          environment: Prod
          location: eastus2
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags:
            created by: azureuser
    

    Detect SAP Software Installation on a Single Server System

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.SingleServerConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                    DeploymentType = "SingleServer",
                    NetworkConfiguration = new AzureNative.Workloads.Inputs.NetworkConfigurationArgs
                    {
                        IsSecondaryIpEnabled = true,
                    },
                    SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                    {
                        ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                        {
                            Offer = "RHEL-SAP-HA",
                            Publisher = "RedHat",
                            Sku = "84sapha-gen2",
                            Version = "latest",
                        },
                        OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                        {
                            AdminUsername = "{your-username}",
                            OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                            {
                                DisablePasswordAuthentication = true,
                                OsType = "Linux",
                                SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                {
                                    PrivateKey = "xyz",
                                    PublicKey = "abc",
                                },
                            },
                        },
                        VmSize = "Standard_E32ds_v4",
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
                SoftwareConfiguration = new AzureNative.Workloads.Inputs.ExternalInstallationSoftwareConfigurationArgs
                {
                    CentralServerVmId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
                    SoftwareInstallationType = "External",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.NonProd,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.SingleServerConfiguration{
    					AppResourceGroup: "X00-RG",
    					DatabaseType:     workloads.SAPDatabaseTypeHANA,
    					DeploymentType:   "SingleServer",
    					NetworkConfiguration: workloads.NetworkConfiguration{
    						IsSecondaryIpEnabled: true,
    					},
    					SubnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    					VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    						ImageReference: workloads.ImageReference{
    							Offer:     "RHEL-SAP-HA",
    							Publisher: "RedHat",
    							Sku:       "84sapha-gen2",
    							Version:   "latest",
    						},
    						OsProfile: workloads.OSProfile{
    							AdminUsername: "{your-username}",
    							OsConfiguration: workloads.LinuxConfiguration{
    								DisablePasswordAuthentication: true,
    								OsType:                        "Linux",
    								SshKeyPair: workloads.SshKeyPair{
    									PrivateKey: "xyz",
    									PublicKey:  "abc",
    								},
    							},
    						},
    						VmSize: "Standard_E32ds_v4",
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    				SoftwareConfiguration: workloads.ExternalInstallationSoftwareConfiguration{
    					CentralServerVmId:        "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
    					SoftwareInstallationType: "External",
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeNonProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(SingleServerConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .databaseType("HANA")
                        .deploymentType("SingleServer")
                        .networkConfiguration(NetworkConfigurationArgs.builder()
                            .isSecondaryIpEnabled(true)
                            .build())
                        .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                        .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                            .imageReference(ImageReferenceArgs.builder()
                                .offer("RHEL-SAP-HA")
                                .publisher("RedHat")
                                .sku("84sapha-gen2")
                                .version("latest")
                                .build())
                            .osProfile(OSProfileArgs.builder()
                                .adminUsername("{your-username}")
                                .osConfiguration(LinuxConfigurationArgs.builder()
                                    .disablePasswordAuthentication(true)
                                    .osType("Linux")
                                    .sshKeyPair(SshKeyPairArgs.builder()
                                        .privateKey("xyz")
                                        .publicKey("abc")
                                        .build())
                                    .build())
                                .build())
                            .vmSize("Standard_E32ds_v4")
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .softwareConfiguration(ExternalInstallationSoftwareConfigurationArgs.builder()
                        .centralServerVmId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0")
                        .softwareInstallationType("External")
                        .build())
                    .build())
                .environment("NonProd")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                "deployment_type": "SingleServer",
                "network_configuration": {
                    "is_secondary_ip_enabled": True,
                },
                "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                "virtual_machine_configuration": {
                    "image_reference": {
                        "offer": "RHEL-SAP-HA",
                        "publisher": "RedHat",
                        "sku": "84sapha-gen2",
                        "version": "latest",
                    },
                    "os_profile": {
                        "admin_username": "{your-username}",
                        "os_configuration": {
                            "disable_password_authentication": True,
                            "os_type": "Linux",
                            "ssh_key_pair": {
                                "private_key": "xyz",
                                "public_key": "abc",
                            },
                        },
                    },
                    "vm_size": "Standard_E32ds_v4",
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
            "software_configuration": {
                "central_server_vm_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
                "software_installation_type": "External",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.NON_PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                deploymentType: "SingleServer",
                networkConfiguration: {
                    isSecondaryIpEnabled: true,
                },
                subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                virtualMachineConfiguration: {
                    imageReference: {
                        offer: "RHEL-SAP-HA",
                        publisher: "RedHat",
                        sku: "84sapha-gen2",
                        version: "latest",
                    },
                    osProfile: {
                        adminUsername: "{your-username}",
                        osConfiguration: {
                            disablePasswordAuthentication: true,
                            osType: "Linux",
                            sshKeyPair: {
                                privateKey: "xyz",
                                publicKey: "abc",
                            },
                        },
                    },
                    vmSize: "Standard_E32ds_v4",
                },
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
            softwareConfiguration: {
                centralServerVmId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
                softwareInstallationType: "External",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.NonProd,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              databaseType: HANA
              deploymentType: SingleServer
              networkConfiguration:
                isSecondaryIpEnabled: true
              subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
              virtualMachineConfiguration:
                imageReference:
                  offer: RHEL-SAP-HA
                  publisher: RedHat
                  sku: 84sapha-gen2
                  version: latest
                osProfile:
                  adminUsername: '{your-username}'
                  osConfiguration:
                    disablePasswordAuthentication: true
                    osType: Linux
                    sshKeyPair:
                      privateKey: xyz
                      publicKey: abc
                vmSize: Standard_E32ds_v4
            osSapConfiguration:
              sapFqdn: xyz.test.com
            softwareConfiguration:
              centralServerVmId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0
              softwareInstallationType: External
          environment: NonProd
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    

    Detect SAP Software Installation on an HA System with Availability Set

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 6,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP-HA",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP-HA",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP-HA",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                    HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
                    {
                        HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilitySet,
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
                SoftwareConfiguration = new AzureNative.Workloads.Inputs.ExternalInstallationSoftwareConfigurationArgs
                {
                    CentralServerVmId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
                    SoftwareInstallationType = "External",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 6,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP-HA",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP-HA",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType:  workloads.SAPDatabaseTypeHANA,
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP-HA",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    					HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
    						HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilitySet,
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    				SoftwareConfiguration: workloads.ExternalInstallationSoftwareConfiguration{
    					CentralServerVmId:        "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
    					SoftwareInstallationType: "External",
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(6)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP-HA")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP-HA")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP-HA")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
                            .highAvailabilityType("AvailabilitySet")
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .softwareConfiguration(ExternalInstallationSoftwareConfigurationArgs.builder()
                        .centralServerVmId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0")
                        .softwareInstallationType("External")
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 6,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP-HA",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP-HA",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP-HA",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
                "high_availability_config": {
                    "high_availability_type": azure_native.workloads.SAPHighAvailabilityType.AVAILABILITY_SET,
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
            "software_configuration": {
                "central_server_vm_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
                "software_installation_type": "External",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 6,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP-HA",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP-HA",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP-HA",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
                highAvailabilityConfig: {
                    highAvailabilityType: azure_native.workloads.SAPHighAvailabilityType.AvailabilitySet,
                },
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
            softwareConfiguration: {
                centralServerVmId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
                softwareInstallationType: "External",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 6
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP-HA
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP-HA
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E16ds_v4
              databaseServer:
                databaseType: HANA
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP-HA
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
              highAvailabilityConfig:
                highAvailabilityType: AvailabilitySet
            osSapConfiguration:
              sapFqdn: xyz.test.com
            softwareConfiguration:
              centralServerVmId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0
              softwareInstallationType: External
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    

    Detect SAP Software Installation on an HA System with Availability Zone

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "X00-RG",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 6,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP-HA",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E32ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP-HA",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_E16ds_v4",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        DatabaseType = AzureNative.Workloads.SAPDatabaseType.HANA,
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP-HA",
                                Publisher = "RedHat",
                                Sku = "84sapha-gen2",
                                Version = "latest",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "{your-username}",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "xyz",
                                        PublicKey = "abc",
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                    HighAvailabilityConfig = new AzureNative.Workloads.Inputs.HighAvailabilityConfigurationArgs
                    {
                        HighAvailabilityType = AzureNative.Workloads.SAPHighAvailabilityType.AvailabilityZone,
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "xyz.test.com",
                },
                SoftwareConfiguration = new AzureNative.Workloads.Inputs.ExternalInstallationSoftwareConfigurationArgs
                {
                    CentralServerVmId = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
                    SoftwareInstallationType = "External",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "westcentralus",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "X00-RG",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 6,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP-HA",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E32ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP-HA",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_E16ds_v4",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						DatabaseType:  workloads.SAPDatabaseTypeHANA,
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP-HA",
    								Publisher: "RedHat",
    								Sku:       "84sapha-gen2",
    								Version:   "latest",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "{your-username}",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "xyz",
    										PublicKey:  "abc",
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    					HighAvailabilityConfig: workloads.HighAvailabilityConfiguration{
    						HighAvailabilityType: workloads.SAPHighAvailabilityTypeAvailabilityZone,
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("xyz.test.com"),
    				},
    				SoftwareConfiguration: workloads.ExternalInstallationSoftwareConfiguration{
    					CentralServerVmId:        "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
    					SoftwareInstallationType: "External",
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("westcentralus"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("X00-RG")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(6)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP-HA")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E32ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP-HA")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E16ds_v4")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .databaseType("HANA")
                            .instanceCount(2)
                            .subnetId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP-HA")
                                    .publisher("RedHat")
                                    .sku("84sapha-gen2")
                                    .version("latest")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("{your-username}")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("xyz")
                                            .publicKey("abc")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .highAvailabilityConfig(HighAvailabilityConfigurationArgs.builder()
                            .highAvailabilityType("AvailabilityZone")
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("xyz.test.com")
                        .build())
                    .softwareConfiguration(ExternalInstallationSoftwareConfigurationArgs.builder()
                        .centralServerVmId("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0")
                        .softwareInstallationType("External")
                        .build())
                    .build())
                .environment("Prod")
                .location("westcentralus")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "X00-RG",
                "application_server": {
                    "instance_count": 6,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP-HA",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E32ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP-HA",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_E16ds_v4",
                    },
                },
                "database_server": {
                    "database_type": azure_native.workloads.SAPDatabaseType.HANA,
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP-HA",
                            "publisher": "RedHat",
                            "sku": "84sapha-gen2",
                            "version": "latest",
                        },
                        "os_profile": {
                            "admin_username": "{your-username}",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "xyz",
                                    "public_key": "abc",
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
                "high_availability_config": {
                    "high_availability_type": azure_native.workloads.SAPHighAvailabilityType.AVAILABILITY_ZONE,
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "xyz.test.com",
            },
            "software_configuration": {
                "central_server_vm_id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
                "software_installation_type": "External",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="westcentralus",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "X00-RG",
                applicationServer: {
                    instanceCount: 6,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP-HA",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E32ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP-HA",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_E16ds_v4",
                    },
                },
                databaseServer: {
                    databaseType: azure_native.workloads.SAPDatabaseType.HANA,
                    instanceCount: 2,
                    subnetId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP-HA",
                            publisher: "RedHat",
                            sku: "84sapha-gen2",
                            version: "latest",
                        },
                        osProfile: {
                            adminUsername: "{your-username}",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "xyz",
                                    publicKey: "abc",
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
                highAvailabilityConfig: {
                    highAvailabilityType: azure_native.workloads.SAPHighAvailabilityType.AvailabilityZone,
                },
            },
            osSapConfiguration: {
                sapFqdn: "xyz.test.com",
            },
            softwareConfiguration: {
                centralServerVmId: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
                softwareInstallationType: "External",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "westcentralus",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: X00-RG
              applicationServer:
                instanceCount: 6
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP-HA
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E32ds_v4
              centralServer:
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/appsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP-HA
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_E16ds_v4
              databaseServer:
                databaseType: HANA
                instanceCount: 2
                subnetId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Networks/virtualNetworks/test-vnet/subnets/dbsubnet
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP-HA
                    publisher: RedHat
                    sku: 84sapha-gen2
                    version: latest
                  osProfile:
                    adminUsername: '{your-username}'
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: xyz
                        publicKey: abc
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
              highAvailabilityConfig:
                highAvailabilityType: AvailabilityZone
            osSapConfiguration:
              sapFqdn: xyz.test.com
            softwareConfiguration:
              centralServerVmId: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0
              softwareInstallationType: External
          environment: Prod
          location: westcentralus
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    

    Install SAP Software on Distributed System

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.ThreeTierConfigurationArgs
                {
                    AppResourceGroup = "{{resourcegrp}}",
                    ApplicationServer = new AzureNative.Workloads.Inputs.ApplicationServerConfigurationArgs
                    {
                        InstanceCount = 2,
                        SubnetId = "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP-HA",
                                Publisher = "RedHat",
                                Sku = "8.2",
                                Version = "8.2.2021091201",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "azureuser",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "{{privateKey}}",
                                        PublicKey = "{{sshkey}}",
                                    },
                                },
                            },
                            VmSize = "Standard_E4ds_v4",
                        },
                    },
                    CentralServer = new AzureNative.Workloads.Inputs.CentralServerConfigurationArgs
                    {
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP-HA",
                                Publisher = "RedHat",
                                Sku = "8.2",
                                Version = "8.2.2021091201",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "azureuser",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "{{privateKey}}",
                                        PublicKey = "{{sshkey}}",
                                    },
                                },
                            },
                            VmSize = "Standard_E4ds_v4",
                        },
                    },
                    DatabaseServer = new AzureNative.Workloads.Inputs.DatabaseConfigurationArgs
                    {
                        InstanceCount = 1,
                        SubnetId = "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                        VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                        {
                            ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                            {
                                Offer = "RHEL-SAP-HA",
                                Publisher = "RedHat",
                                Sku = "8.2",
                                Version = "8.2.2021091201",
                            },
                            OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                            {
                                AdminUsername = "azureuser",
                                OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                                {
                                    DisablePasswordAuthentication = true,
                                    OsType = "Linux",
                                    SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                    {
                                        PrivateKey = "{{privateKey}}",
                                        PublicKey = "{{sshkey}}",
                                    },
                                },
                            },
                            VmSize = "Standard_M32ts",
                        },
                    },
                    DeploymentType = "ThreeTier",
                    NetworkConfiguration = new AzureNative.Workloads.Inputs.NetworkConfigurationArgs
                    {
                        IsSecondaryIpEnabled = true,
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "sap.bpaas.com",
                },
                SoftwareConfiguration = new AzureNative.Workloads.Inputs.SAPInstallWithoutOSConfigSoftwareConfigurationArgs
                {
                    BomUrl = "https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml",
                    SapBitsStorageAccountId = "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount",
                    SoftwareInstallationType = "SAPInstallWithoutOSConfig",
                    SoftwareVersion = "SAP S/4HANA 1909 SPS 03",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.Prod,
            Location = "eastus2",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = 
            {
                { "created by", "azureuser" },
            },
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.ThreeTierConfiguration{
    					AppResourceGroup: "{{resourcegrp}}",
    					ApplicationServer: workloads.ApplicationServerConfiguration{
    						InstanceCount: 2,
    						SubnetId:      "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP-HA",
    								Publisher: "RedHat",
    								Sku:       "8.2",
    								Version:   "8.2.2021091201",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "azureuser",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "{{privateKey}}",
    										PublicKey:  "{{sshkey}}",
    									},
    								},
    							},
    							VmSize: "Standard_E4ds_v4",
    						},
    					},
    					CentralServer: workloads.CentralServerConfiguration{
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP-HA",
    								Publisher: "RedHat",
    								Sku:       "8.2",
    								Version:   "8.2.2021091201",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "azureuser",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "{{privateKey}}",
    										PublicKey:  "{{sshkey}}",
    									},
    								},
    							},
    							VmSize: "Standard_E4ds_v4",
    						},
    					},
    					DatabaseServer: workloads.DatabaseConfiguration{
    						InstanceCount: 1,
    						SubnetId:      "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
    						VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    							ImageReference: workloads.ImageReference{
    								Offer:     "RHEL-SAP-HA",
    								Publisher: "RedHat",
    								Sku:       "8.2",
    								Version:   "8.2.2021091201",
    							},
    							OsProfile: workloads.OSProfile{
    								AdminUsername: "azureuser",
    								OsConfiguration: workloads.LinuxConfiguration{
    									DisablePasswordAuthentication: true,
    									OsType:                        "Linux",
    									SshKeyPair: workloads.SshKeyPair{
    										PrivateKey: "{{privateKey}}",
    										PublicKey:  "{{sshkey}}",
    									},
    								},
    							},
    							VmSize: "Standard_M32ts",
    						},
    					},
    					DeploymentType: "ThreeTier",
    					NetworkConfiguration: workloads.NetworkConfiguration{
    						IsSecondaryIpEnabled: true,
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("sap.bpaas.com"),
    				},
    				SoftwareConfiguration: workloads.SAPInstallWithoutOSConfigSoftwareConfiguration{
    					BomUrl:                   "https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml",
    					SapBitsStorageAccountId:  "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount",
    					SoftwareInstallationType: "SAPInstallWithoutOSConfig",
    					SoftwareVersion:          "SAP S/4HANA 1909 SPS 03",
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeProd),
    			Location:               pulumi.String("eastus2"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags: pulumi.StringMap{
    				"created by": pulumi.String("azureuser"),
    			},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(ThreeTierConfigurationArgs.builder()
                        .appResourceGroup("{{resourcegrp}}")
                        .applicationServer(ApplicationServerConfigurationArgs.builder()
                            .instanceCount(2)
                            .subnetId("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP-HA")
                                    .publisher("RedHat")
                                    .sku("8.2")
                                    .version("8.2.2021091201")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("azureuser")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("{{privateKey}}")
                                            .publicKey("{{sshkey}}")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E4ds_v4")
                                .build())
                            .build())
                        .centralServer(CentralServerConfigurationArgs.builder()
                            .instanceCount(1)
                            .subnetId("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP-HA")
                                    .publisher("RedHat")
                                    .sku("8.2")
                                    .version("8.2.2021091201")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("azureuser")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("{{privateKey}}")
                                            .publicKey("{{sshkey}}")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_E4ds_v4")
                                .build())
                            .build())
                        .databaseServer(DatabaseConfigurationArgs.builder()
                            .instanceCount(1)
                            .subnetId("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app")
                            .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                                .imageReference(ImageReferenceArgs.builder()
                                    .offer("RHEL-SAP-HA")
                                    .publisher("RedHat")
                                    .sku("8.2")
                                    .version("8.2.2021091201")
                                    .build())
                                .osProfile(OSProfileArgs.builder()
                                    .adminUsername("azureuser")
                                    .osConfiguration(LinuxConfigurationArgs.builder()
                                        .disablePasswordAuthentication(true)
                                        .osType("Linux")
                                        .sshKeyPair(SshKeyPairArgs.builder()
                                            .privateKey("{{privateKey}}")
                                            .publicKey("{{sshkey}}")
                                            .build())
                                        .build())
                                    .build())
                                .vmSize("Standard_M32ts")
                                .build())
                            .build())
                        .deploymentType("ThreeTier")
                        .networkConfiguration(NetworkConfigurationArgs.builder()
                            .isSecondaryIpEnabled(true)
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("sap.bpaas.com")
                        .build())
                    .softwareConfiguration(SAPInstallWithoutOSConfigSoftwareConfigurationArgs.builder()
                        .bomUrl("https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml")
                        .sapBitsStorageAccountId("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount")
                        .softwareInstallationType("SAPInstallWithoutOSConfig")
                        .softwareVersion("SAP S/4HANA 1909 SPS 03")
                        .build())
                    .build())
                .environment("Prod")
                .location("eastus2")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags(Map.of("created by", "azureuser"))
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "{{resourcegrp}}",
                "application_server": {
                    "instance_count": 2,
                    "subnet_id": "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP-HA",
                            "publisher": "RedHat",
                            "sku": "8.2",
                            "version": "8.2.2021091201",
                        },
                        "os_profile": {
                            "admin_username": "azureuser",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "{{privateKey}}",
                                    "public_key": "{{sshkey}}",
                                },
                            },
                        },
                        "vm_size": "Standard_E4ds_v4",
                    },
                },
                "central_server": {
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP-HA",
                            "publisher": "RedHat",
                            "sku": "8.2",
                            "version": "8.2.2021091201",
                        },
                        "os_profile": {
                            "admin_username": "azureuser",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "{{privateKey}}",
                                    "public_key": "{{sshkey}}",
                                },
                            },
                        },
                        "vm_size": "Standard_E4ds_v4",
                    },
                },
                "database_server": {
                    "instance_count": 1,
                    "subnet_id": "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                    "virtual_machine_configuration": {
                        "image_reference": {
                            "offer": "RHEL-SAP-HA",
                            "publisher": "RedHat",
                            "sku": "8.2",
                            "version": "8.2.2021091201",
                        },
                        "os_profile": {
                            "admin_username": "azureuser",
                            "os_configuration": {
                                "disable_password_authentication": True,
                                "os_type": "Linux",
                                "ssh_key_pair": {
                                    "private_key": "{{privateKey}}",
                                    "public_key": "{{sshkey}}",
                                },
                            },
                        },
                        "vm_size": "Standard_M32ts",
                    },
                },
                "deployment_type": "ThreeTier",
                "network_configuration": {
                    "is_secondary_ip_enabled": True,
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "sap.bpaas.com",
            },
            "software_configuration": {
                "bom_url": "https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml",
                "sap_bits_storage_account_id": "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount",
                "software_installation_type": "SAPInstallWithoutOSConfig",
                "software_version": "SAP S/4HANA 1909 SPS 03",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.PROD,
        location="eastus2",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={
            "created by": "azureuser",
        })
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "{{resourcegrp}}",
                applicationServer: {
                    instanceCount: 2,
                    subnetId: "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP-HA",
                            publisher: "RedHat",
                            sku: "8.2",
                            version: "8.2.2021091201",
                        },
                        osProfile: {
                            adminUsername: "azureuser",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "{{privateKey}}",
                                    publicKey: "{{sshkey}}",
                                },
                            },
                        },
                        vmSize: "Standard_E4ds_v4",
                    },
                },
                centralServer: {
                    instanceCount: 1,
                    subnetId: "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP-HA",
                            publisher: "RedHat",
                            sku: "8.2",
                            version: "8.2.2021091201",
                        },
                        osProfile: {
                            adminUsername: "azureuser",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "{{privateKey}}",
                                    publicKey: "{{sshkey}}",
                                },
                            },
                        },
                        vmSize: "Standard_E4ds_v4",
                    },
                },
                databaseServer: {
                    instanceCount: 1,
                    subnetId: "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app",
                    virtualMachineConfiguration: {
                        imageReference: {
                            offer: "RHEL-SAP-HA",
                            publisher: "RedHat",
                            sku: "8.2",
                            version: "8.2.2021091201",
                        },
                        osProfile: {
                            adminUsername: "azureuser",
                            osConfiguration: {
                                disablePasswordAuthentication: true,
                                osType: "Linux",
                                sshKeyPair: {
                                    privateKey: "{{privateKey}}",
                                    publicKey: "{{sshkey}}",
                                },
                            },
                        },
                        vmSize: "Standard_M32ts",
                    },
                },
                deploymentType: "ThreeTier",
                networkConfiguration: {
                    isSecondaryIpEnabled: true,
                },
            },
            osSapConfiguration: {
                sapFqdn: "sap.bpaas.com",
            },
            softwareConfiguration: {
                bomUrl: "https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml",
                sapBitsStorageAccountId: "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount",
                softwareInstallationType: "SAPInstallWithoutOSConfig",
                softwareVersion: "SAP S/4HANA 1909 SPS 03",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.Prod,
        location: "eastus2",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {
            "created by": "azureuser",
        },
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: '{{resourcegrp}}'
              applicationServer:
                instanceCount: 2
                subnetId: /subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP-HA
                    publisher: RedHat
                    sku: '8.2'
                    version: 8.2.2021091201
                  osProfile:
                    adminUsername: azureuser
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: '{{privateKey}}'
                        publicKey: '{{sshkey}}'
                  vmSize: Standard_E4ds_v4
              centralServer:
                instanceCount: 1
                subnetId: /subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP-HA
                    publisher: RedHat
                    sku: '8.2'
                    version: 8.2.2021091201
                  osProfile:
                    adminUsername: azureuser
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: '{{privateKey}}'
                        publicKey: '{{sshkey}}'
                  vmSize: Standard_E4ds_v4
              databaseServer:
                instanceCount: 1
                subnetId: /subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/app
                virtualMachineConfiguration:
                  imageReference:
                    offer: RHEL-SAP-HA
                    publisher: RedHat
                    sku: '8.2'
                    version: 8.2.2021091201
                  osProfile:
                    adminUsername: azureuser
                    osConfiguration:
                      disablePasswordAuthentication: true
                      osType: Linux
                      sshKeyPair:
                        privateKey: '{{privateKey}}'
                        publicKey: '{{sshkey}}'
                  vmSize: Standard_M32ts
              deploymentType: ThreeTier
              networkConfiguration:
                isSecondaryIpEnabled: true
            osSapConfiguration:
              sapFqdn: sap.bpaas.com
            softwareConfiguration:
              bomUrl: https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml
              sapBitsStorageAccountId: /subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount
              softwareInstallationType: SAPInstallWithoutOSConfig
              softwareVersion: SAP S/4HANA 1909 SPS 03
          environment: Prod
          location: eastus2
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags:
            created by: azureuser
    

    Install SAP Software on Single Server System

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DeploymentWithOSConfigurationArgs
            {
                AppLocation = "eastus",
                ConfigurationType = "DeploymentWithOSConfig",
                InfrastructureConfiguration = new AzureNative.Workloads.Inputs.SingleServerConfigurationArgs
                {
                    AppResourceGroup = "test-rg",
                    DeploymentType = "SingleServer",
                    SubnetId = "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/testsubnet",
                    VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                    {
                        ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                        {
                            Offer = "SLES-SAP",
                            Publisher = "SUSE",
                            Sku = "12-sp4-gen2",
                            Version = "2022.02.01",
                        },
                        OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                        {
                            AdminUsername = "azureappadmin",
                            OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                            {
                                DisablePasswordAuthentication = true,
                                OsType = "Linux",
                                SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                                {
                                    PrivateKey = "{{privateKey}}",
                                    PublicKey = "{{sshkey}}",
                                },
                            },
                        },
                        VmSize = "Standard_E32ds_v4",
                    },
                },
                OsSapConfiguration = new AzureNative.Workloads.Inputs.OsSapConfigurationArgs
                {
                    SapFqdn = "sap.bpaas.com",
                },
                SoftwareConfiguration = new AzureNative.Workloads.Inputs.SAPInstallWithoutOSConfigSoftwareConfigurationArgs
                {
                    BomUrl = "https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml",
                    SapBitsStorageAccountId = "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount",
                    SoftwareInstallationType = "SAPInstallWithoutOSConfig",
                    SoftwareVersion = "SAP S/4HANA 1909 SPS 03",
                },
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.NonProd,
            Location = "eastus2",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = null,
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DeploymentWithOSConfigurationArgs{
    				AppLocation:       pulumi.String("eastus"),
    				ConfigurationType: pulumi.String("DeploymentWithOSConfig"),
    				InfrastructureConfiguration: workloads.SingleServerConfiguration{
    					AppResourceGroup: "test-rg",
    					DeploymentType:   "SingleServer",
    					SubnetId:         "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/testsubnet",
    					VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    						ImageReference: workloads.ImageReference{
    							Offer:     "SLES-SAP",
    							Publisher: "SUSE",
    							Sku:       "12-sp4-gen2",
    							Version:   "2022.02.01",
    						},
    						OsProfile: workloads.OSProfile{
    							AdminUsername: "azureappadmin",
    							OsConfiguration: workloads.LinuxConfiguration{
    								DisablePasswordAuthentication: true,
    								OsType:                        "Linux",
    								SshKeyPair: workloads.SshKeyPair{
    									PrivateKey: "{{privateKey}}",
    									PublicKey:  "{{sshkey}}",
    								},
    							},
    						},
    						VmSize: "Standard_E32ds_v4",
    					},
    				},
    				OsSapConfiguration: &workloads.OsSapConfigurationArgs{
    					SapFqdn: pulumi.String("sap.bpaas.com"),
    				},
    				SoftwareConfiguration: workloads.SAPInstallWithoutOSConfigSoftwareConfiguration{
    					BomUrl:                   "https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml",
    					SapBitsStorageAccountId:  "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount",
    					SoftwareInstallationType: "SAPInstallWithoutOSConfig",
    					SoftwareVersion:          "SAP S/4HANA 1909 SPS 03",
    				},
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeNonProd),
    			Location:               pulumi.String("eastus2"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags:                   pulumi.StringMap{},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DeploymentWithOSConfigurationArgs.builder()
                    .appLocation("eastus")
                    .configurationType("DeploymentWithOSConfig")
                    .infrastructureConfiguration(SingleServerConfigurationArgs.builder()
                        .appResourceGroup("test-rg")
                        .deploymentType("SingleServer")
                        .subnetId("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/testsubnet")
                        .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                            .imageReference(ImageReferenceArgs.builder()
                                .offer("SLES-SAP")
                                .publisher("SUSE")
                                .sku("12-sp4-gen2")
                                .version("2022.02.01")
                                .build())
                            .osProfile(OSProfileArgs.builder()
                                .adminUsername("azureappadmin")
                                .osConfiguration(LinuxConfigurationArgs.builder()
                                    .disablePasswordAuthentication(true)
                                    .osType("Linux")
                                    .sshKeyPair(SshKeyPairArgs.builder()
                                        .privateKey("{{privateKey}}")
                                        .publicKey("{{sshkey}}")
                                        .build())
                                    .build())
                                .build())
                            .vmSize("Standard_E32ds_v4")
                            .build())
                        .build())
                    .osSapConfiguration(OsSapConfigurationArgs.builder()
                        .sapFqdn("sap.bpaas.com")
                        .build())
                    .softwareConfiguration(SAPInstallWithoutOSConfigSoftwareConfigurationArgs.builder()
                        .bomUrl("https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml")
                        .sapBitsStorageAccountId("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount")
                        .softwareInstallationType("SAPInstallWithoutOSConfig")
                        .softwareVersion("SAP S/4HANA 1909 SPS 03")
                        .build())
                    .build())
                .environment("NonProd")
                .location("eastus2")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags()
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "app_location": "eastus",
            "configuration_type": "DeploymentWithOSConfig",
            "infrastructure_configuration": {
                "app_resource_group": "test-rg",
                "deployment_type": "SingleServer",
                "subnet_id": "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/testsubnet",
                "virtual_machine_configuration": {
                    "image_reference": {
                        "offer": "SLES-SAP",
                        "publisher": "SUSE",
                        "sku": "12-sp4-gen2",
                        "version": "2022.02.01",
                    },
                    "os_profile": {
                        "admin_username": "azureappadmin",
                        "os_configuration": {
                            "disable_password_authentication": True,
                            "os_type": "Linux",
                            "ssh_key_pair": {
                                "private_key": "{{privateKey}}",
                                "public_key": "{{sshkey}}",
                            },
                        },
                    },
                    "vm_size": "Standard_E32ds_v4",
                },
            },
            "os_sap_configuration": {
                "sap_fqdn": "sap.bpaas.com",
            },
            "software_configuration": {
                "bom_url": "https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml",
                "sap_bits_storage_account_id": "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount",
                "software_installation_type": "SAPInstallWithoutOSConfig",
                "software_version": "SAP S/4HANA 1909 SPS 03",
            },
        },
        environment=azure_native.workloads.SAPEnvironmentType.NON_PROD,
        location="eastus2",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={})
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            appLocation: "eastus",
            configurationType: "DeploymentWithOSConfig",
            infrastructureConfiguration: {
                appResourceGroup: "test-rg",
                deploymentType: "SingleServer",
                subnetId: "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/testsubnet",
                virtualMachineConfiguration: {
                    imageReference: {
                        offer: "SLES-SAP",
                        publisher: "SUSE",
                        sku: "12-sp4-gen2",
                        version: "2022.02.01",
                    },
                    osProfile: {
                        adminUsername: "azureappadmin",
                        osConfiguration: {
                            disablePasswordAuthentication: true,
                            osType: "Linux",
                            sshKeyPair: {
                                privateKey: "{{privateKey}}",
                                publicKey: "{{sshkey}}",
                            },
                        },
                    },
                    vmSize: "Standard_E32ds_v4",
                },
            },
            osSapConfiguration: {
                sapFqdn: "sap.bpaas.com",
            },
            softwareConfiguration: {
                bomUrl: "https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml",
                sapBitsStorageAccountId: "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount",
                softwareInstallationType: "SAPInstallWithoutOSConfig",
                softwareVersion: "SAP S/4HANA 1909 SPS 03",
            },
        },
        environment: azure_native.workloads.SAPEnvironmentType.NonProd,
        location: "eastus2",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {},
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            appLocation: eastus
            configurationType: DeploymentWithOSConfig
            infrastructureConfiguration:
              appResourceGroup: test-rg
              deploymentType: SingleServer
              subnetId: /subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/testsubnet
              virtualMachineConfiguration:
                imageReference:
                  offer: SLES-SAP
                  publisher: SUSE
                  sku: 12-sp4-gen2
                  version: 2022.02.01
                osProfile:
                  adminUsername: azureappadmin
                  osConfiguration:
                    disablePasswordAuthentication: true
                    osType: Linux
                    sshKeyPair:
                      privateKey: '{{privateKey}}'
                      publicKey: '{{sshkey}}'
                vmSize: Standard_E32ds_v4
            osSapConfiguration:
              sapFqdn: sap.bpaas.com
            softwareConfiguration:
              bomUrl: https://teststorageaccount.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0011ms/S41909SPS03_v0011ms.yaml
              sapBitsStorageAccountId: /subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Storage/storageAccounts/teststorageaccount
              softwareInstallationType: SAPInstallWithoutOSConfig
              softwareVersion: SAP S/4HANA 1909 SPS 03
          environment: NonProd
          location: eastus2
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags: {}
    

    Register existing SAP system as Virtual Instance for SAP solutions with optional customizations.

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DiscoveryConfigurationArgs
            {
                CentralServerVmId = "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
                ConfigurationType = "Discovery",
                ManagedRgStorageAccountName = "q20saacssgrs",
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.NonProd,
            Location = "northeurope",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = 
            {
                { "createdby", "abc@microsoft.com" },
                { "test", "abc" },
            },
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DiscoveryConfigurationArgs{
    				CentralServerVmId:           pulumi.String("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0"),
    				ConfigurationType:           pulumi.String("Discovery"),
    				ManagedRgStorageAccountName: pulumi.String("q20saacssgrs"),
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeNonProd),
    			Location:               pulumi.String("northeurope"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags: pulumi.StringMap{
    				"createdby": pulumi.String("abc@microsoft.com"),
    				"test":      pulumi.String("abc"),
    			},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DiscoveryConfigurationArgs.builder()
                    .centralServerVmId("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0")
                    .configurationType("Discovery")
                    .managedRgStorageAccountName("q20saacssgrs")
                    .build())
                .environment("NonProd")
                .location("northeurope")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags(Map.ofEntries(
                    Map.entry("createdby", "abc@microsoft.com"),
                    Map.entry("test", "abc")
                ))
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "central_server_vm_id": "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
            "configuration_type": "Discovery",
            "managed_rg_storage_account_name": "q20saacssgrs",
        },
        environment=azure_native.workloads.SAPEnvironmentType.NON_PROD,
        location="northeurope",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={
            "createdby": "abc@microsoft.com",
            "test": "abc",
        })
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            centralServerVmId: "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
            configurationType: "Discovery",
            managedRgStorageAccountName: "q20saacssgrs",
        },
        environment: azure_native.workloads.SAPEnvironmentType.NonProd,
        location: "northeurope",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {
            createdby: "abc@microsoft.com",
            test: "abc",
        },
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            centralServerVmId: /subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0
            configurationType: Discovery
            managedRgStorageAccountName: q20saacssgrs
          environment: NonProd
          location: northeurope
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags:
            createdby: abc@microsoft.com
            test: abc
    

    Register existing SAP system as Virtual Instance for SAP solutions.

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AzureNative = Pulumi.AzureNative;
    
    return await Deployment.RunAsync(() => 
    {
        var sapVirtualInstance = new AzureNative.Workloads.SAPVirtualInstance("sapVirtualInstance", new()
        {
            Configuration = new AzureNative.Workloads.Inputs.DiscoveryConfigurationArgs
            {
                CentralServerVmId = "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
                ConfigurationType = "Discovery",
            },
            Environment = AzureNative.Workloads.SAPEnvironmentType.NonProd,
            Location = "northeurope",
            ResourceGroupName = "test-rg",
            SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
            SapVirtualInstanceName = "X00",
            Tags = 
            {
                { "createdby", "abc@microsoft.com" },
                { "test", "abc" },
            },
        });
    
    });
    
    package main
    
    import (
    	workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := workloads.NewSAPVirtualInstance(ctx, "sapVirtualInstance", &workloads.SAPVirtualInstanceArgs{
    			Configuration: &workloads.DiscoveryConfigurationArgs{
    				CentralServerVmId: pulumi.String("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0"),
    				ConfigurationType: pulumi.String("Discovery"),
    			},
    			Environment:            pulumi.String(workloads.SAPEnvironmentTypeNonProd),
    			Location:               pulumi.String("northeurope"),
    			ResourceGroupName:      pulumi.String("test-rg"),
    			SapProduct:             pulumi.String(workloads.SAPProductTypeS4HANA),
    			SapVirtualInstanceName: pulumi.String("X00"),
    			Tags: pulumi.StringMap{
    				"createdby": pulumi.String("abc@microsoft.com"),
    				"test":      pulumi.String("abc"),
    			},
    		})
    		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.workloads.SAPVirtualInstance;
    import com.pulumi.azurenative.workloads.SAPVirtualInstanceArgs;
    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 sapVirtualInstance = new SAPVirtualInstance("sapVirtualInstance", SAPVirtualInstanceArgs.builder()
                .configuration(DiscoveryConfigurationArgs.builder()
                    .centralServerVmId("/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0")
                    .configurationType("Discovery")
                    .build())
                .environment("NonProd")
                .location("northeurope")
                .resourceGroupName("test-rg")
                .sapProduct("S4HANA")
                .sapVirtualInstanceName("X00")
                .tags(Map.ofEntries(
                    Map.entry("createdby", "abc@microsoft.com"),
                    Map.entry("test", "abc")
                ))
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_azure_native as azure_native
    
    sap_virtual_instance = azure_native.workloads.SAPVirtualInstance("sapVirtualInstance",
        configuration={
            "central_server_vm_id": "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
            "configuration_type": "Discovery",
        },
        environment=azure_native.workloads.SAPEnvironmentType.NON_PROD,
        location="northeurope",
        resource_group_name="test-rg",
        sap_product=azure_native.workloads.SAPProductType.S4_HANA,
        sap_virtual_instance_name="X00",
        tags={
            "createdby": "abc@microsoft.com",
            "test": "abc",
        })
    
    import * as pulumi from "@pulumi/pulumi";
    import * as azure_native from "@pulumi/azure-native";
    
    const sapVirtualInstance = new azure_native.workloads.SAPVirtualInstance("sapVirtualInstance", {
        configuration: {
            centralServerVmId: "/subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0",
            configurationType: "Discovery",
        },
        environment: azure_native.workloads.SAPEnvironmentType.NonProd,
        location: "northeurope",
        resourceGroupName: "test-rg",
        sapProduct: azure_native.workloads.SAPProductType.S4HANA,
        sapVirtualInstanceName: "X00",
        tags: {
            createdby: "abc@microsoft.com",
            test: "abc",
        },
    });
    
    resources:
      sapVirtualInstance:
        type: azure-native:workloads:SAPVirtualInstance
        properties:
          configuration:
            centralServerVmId: /subscriptions/8e17e36c-42e9-4cd5-a078-7b44883414e0/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/sapq20scsvm0
            configurationType: Discovery
          environment: NonProd
          location: northeurope
          resourceGroupName: test-rg
          sapProduct: S4HANA
          sapVirtualInstanceName: X00
          tags:
            createdby: abc@microsoft.com
            test: abc
    

    Create SAPVirtualInstance Resource

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

    Constructor syntax

    new SAPVirtualInstance(name: string, args: SAPVirtualInstanceArgs, opts?: CustomResourceOptions);
    @overload
    def SAPVirtualInstance(resource_name: str,
                           args: SAPVirtualInstanceArgs,
                           opts: Optional[ResourceOptions] = None)
    
    @overload
    def SAPVirtualInstance(resource_name: str,
                           opts: Optional[ResourceOptions] = None,
                           configuration: Optional[Union[DeploymentConfigurationArgs, DeploymentWithOSConfigurationArgs, DiscoveryConfigurationArgs]] = None,
                           environment: Optional[Union[str, SAPEnvironmentType]] = None,
                           resource_group_name: Optional[str] = None,
                           sap_product: Optional[Union[str, SAPProductType]] = None,
                           identity: Optional[UserAssignedServiceIdentityArgs] = None,
                           location: Optional[str] = None,
                           managed_resource_group_configuration: Optional[ManagedRGConfigurationArgs] = None,
                           sap_virtual_instance_name: Optional[str] = None,
                           tags: Optional[Mapping[str, str]] = None)
    func NewSAPVirtualInstance(ctx *Context, name string, args SAPVirtualInstanceArgs, opts ...ResourceOption) (*SAPVirtualInstance, error)
    public SAPVirtualInstance(string name, SAPVirtualInstanceArgs args, CustomResourceOptions? opts = null)
    public SAPVirtualInstance(String name, SAPVirtualInstanceArgs args)
    public SAPVirtualInstance(String name, SAPVirtualInstanceArgs args, CustomResourceOptions options)
    
    type: azure-native:workloads:SAPVirtualInstance
    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 SAPVirtualInstanceArgs
    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 SAPVirtualInstanceArgs
    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 SAPVirtualInstanceArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args SAPVirtualInstanceArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args SAPVirtualInstanceArgs
    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 sapvirtualInstanceResource = new AzureNative.Workloads.SAPVirtualInstance("sapvirtualInstanceResource", new()
    {
        Configuration = new AzureNative.Workloads.Inputs.DeploymentConfigurationArgs
        {
            ConfigurationType = "Deployment",
            AppLocation = "string",
            InfrastructureConfiguration = new AzureNative.Workloads.Inputs.SingleServerConfigurationArgs
            {
                AppResourceGroup = "string",
                DeploymentType = "SingleServer",
                SubnetId = "string",
                VirtualMachineConfiguration = new AzureNative.Workloads.Inputs.VirtualMachineConfigurationArgs
                {
                    ImageReference = new AzureNative.Workloads.Inputs.ImageReferenceArgs
                    {
                        Offer = "string",
                        Publisher = "string",
                        Sku = "string",
                        Version = "string",
                    },
                    OsProfile = new AzureNative.Workloads.Inputs.OSProfileArgs
                    {
                        AdminPassword = "string",
                        AdminUsername = "string",
                        OsConfiguration = new AzureNative.Workloads.Inputs.LinuxConfigurationArgs
                        {
                            OsType = "Linux",
                            DisablePasswordAuthentication = false,
                            Ssh = new AzureNative.Workloads.Inputs.SshConfigurationArgs
                            {
                                PublicKeys = new[]
                                {
                                    new AzureNative.Workloads.Inputs.SshPublicKeyArgs
                                    {
                                        KeyData = "string",
                                    },
                                },
                            },
                            SshKeyPair = new AzureNative.Workloads.Inputs.SshKeyPairArgs
                            {
                                PrivateKey = "string",
                                PublicKey = "string",
                            },
                        },
                    },
                    VmSize = "string",
                },
                CustomResourceNames = new AzureNative.Workloads.Inputs.SingleServerFullResourceNamesArgs
                {
                    NamingPatternType = "FullResourceName",
                    VirtualMachine = new AzureNative.Workloads.Inputs.VirtualMachineResourceNamesArgs
                    {
                        DataDiskNames = 
                        {
                            { "string", new[]
                            {
                                "string",
                            } },
                        },
                        HostName = "string",
                        NetworkInterfaces = new[]
                        {
                            new AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesArgs
                            {
                                NetworkInterfaceName = "string",
                            },
                        },
                        OsDiskName = "string",
                        VmName = "string",
                    },
                },
                DatabaseType = "string",
                DbDiskConfiguration = new AzureNative.Workloads.Inputs.DiskConfigurationArgs
                {
                    DiskVolumeConfigurations = 
                    {
                        { "string", new AzureNative.Workloads.Inputs.DiskVolumeConfigurationArgs
                        {
                            Count = 0,
                            SizeGB = 0,
                            Sku = new AzureNative.Workloads.Inputs.DiskSkuArgs
                            {
                                Name = "string",
                            },
                        } },
                    },
                },
                NetworkConfiguration = new AzureNative.Workloads.Inputs.NetworkConfigurationArgs
                {
                    IsSecondaryIpEnabled = false,
                },
            },
            SoftwareConfiguration = new AzureNative.Workloads.Inputs.ExternalInstallationSoftwareConfigurationArgs
            {
                SoftwareInstallationType = "External",
                CentralServerVmId = "string",
            },
        },
        Environment = "string",
        ResourceGroupName = "string",
        SapProduct = "string",
        Identity = new AzureNative.Workloads.Inputs.UserAssignedServiceIdentityArgs
        {
            Type = "string",
            UserAssignedIdentities = new[]
            {
                "string",
            },
        },
        Location = "string",
        ManagedResourceGroupConfiguration = new AzureNative.Workloads.Inputs.ManagedRGConfigurationArgs
        {
            Name = "string",
        },
        SapVirtualInstanceName = "string",
        Tags = 
        {
            { "string", "string" },
        },
    });
    
    example, err := workloads.NewSAPVirtualInstance(ctx, "sapvirtualInstanceResource", &workloads.SAPVirtualInstanceArgs{
    	Configuration: &workloads.DeploymentConfigurationArgs{
    		ConfigurationType: pulumi.String("Deployment"),
    		AppLocation:       pulumi.String("string"),
    		InfrastructureConfiguration: workloads.SingleServerConfiguration{
    			AppResourceGroup: "string",
    			DeploymentType:   "SingleServer",
    			SubnetId:         "string",
    			VirtualMachineConfiguration: workloads.VirtualMachineConfiguration{
    				ImageReference: workloads.ImageReference{
    					Offer:     "string",
    					Publisher: "string",
    					Sku:       "string",
    					Version:   "string",
    				},
    				OsProfile: workloads.OSProfile{
    					AdminPassword: "string",
    					AdminUsername: "string",
    					OsConfiguration: workloads.LinuxConfiguration{
    						OsType:                        "Linux",
    						DisablePasswordAuthentication: false,
    						Ssh: workloads.SshConfiguration{
    							PublicKeys: []workloads.SshPublicKey{
    								{
    									KeyData: "string",
    								},
    							},
    						},
    						SshKeyPair: workloads.SshKeyPair{
    							PrivateKey: "string",
    							PublicKey:  "string",
    						},
    					},
    				},
    				VmSize: "string",
    			},
    			CustomResourceNames: workloads.SingleServerFullResourceNames{
    				NamingPatternType: "FullResourceName",
    				VirtualMachine: workloads.VirtualMachineResourceNames{
    					DataDiskNames: map[string]interface{}{
    						"string": []string{
    							"string",
    						},
    					},
    					HostName: "string",
    					NetworkInterfaces: []workloads.NetworkInterfaceResourceNames{
    						{
    							NetworkInterfaceName: "string",
    						},
    					},
    					OsDiskName: "string",
    					VmName:     "string",
    				},
    			},
    			DatabaseType: "string",
    			DbDiskConfiguration: workloads.DiskConfiguration{
    				DiskVolumeConfigurations: map[string]workloads.DiskVolumeConfiguration{
    					"string": workloads.DiskVolumeConfiguration{
    						Count:  0,
    						SizeGB: 0,
    						Sku: workloads.DiskSku{
    							Name: "string",
    						},
    					},
    				},
    			},
    			NetworkConfiguration: workloads.NetworkConfiguration{
    				IsSecondaryIpEnabled: false,
    			},
    		},
    		SoftwareConfiguration: workloads.ExternalInstallationSoftwareConfiguration{
    			SoftwareInstallationType: "External",
    			CentralServerVmId:        "string",
    		},
    	},
    	Environment:       pulumi.String("string"),
    	ResourceGroupName: pulumi.String("string"),
    	SapProduct:        pulumi.String("string"),
    	Identity: &workloads.UserAssignedServiceIdentityArgs{
    		Type: pulumi.String("string"),
    		UserAssignedIdentities: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    	},
    	Location: pulumi.String("string"),
    	ManagedResourceGroupConfiguration: &workloads.ManagedRGConfigurationArgs{
    		Name: pulumi.String("string"),
    	},
    	SapVirtualInstanceName: pulumi.String("string"),
    	Tags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    })
    
    var sapvirtualInstanceResource = new SAPVirtualInstance("sapvirtualInstanceResource", SAPVirtualInstanceArgs.builder()
        .configuration(DeploymentConfigurationArgs.builder()
            .configurationType("Deployment")
            .appLocation("string")
            .infrastructureConfiguration(SingleServerConfigurationArgs.builder()
                .appResourceGroup("string")
                .deploymentType("SingleServer")
                .subnetId("string")
                .virtualMachineConfiguration(VirtualMachineConfigurationArgs.builder()
                    .imageReference(ImageReferenceArgs.builder()
                        .offer("string")
                        .publisher("string")
                        .sku("string")
                        .version("string")
                        .build())
                    .osProfile(OSProfileArgs.builder()
                        .adminPassword("string")
                        .adminUsername("string")
                        .osConfiguration(LinuxConfigurationArgs.builder()
                            .osType("Linux")
                            .disablePasswordAuthentication(false)
                            .ssh(SshConfigurationArgs.builder()
                                .publicKeys(SshPublicKeyArgs.builder()
                                    .keyData("string")
                                    .build())
                                .build())
                            .sshKeyPair(SshKeyPairArgs.builder()
                                .privateKey("string")
                                .publicKey("string")
                                .build())
                            .build())
                        .build())
                    .vmSize("string")
                    .build())
                .customResourceNames(SingleServerFullResourceNamesArgs.builder()
                    .namingPatternType("FullResourceName")
                    .virtualMachine(VirtualMachineResourceNamesArgs.builder()
                        .dataDiskNames(Map.of("string", "string"))
                        .hostName("string")
                        .networkInterfaces(NetworkInterfaceResourceNamesArgs.builder()
                            .networkInterfaceName("string")
                            .build())
                        .osDiskName("string")
                        .vmName("string")
                        .build())
                    .build())
                .databaseType("string")
                .dbDiskConfiguration(DiskConfigurationArgs.builder()
                    .diskVolumeConfigurations(Map.of("string", Map.ofEntries(
                        Map.entry("count", 0),
                        Map.entry("sizeGB", 0),
                        Map.entry("sku", Map.of("name", "string"))
                    )))
                    .build())
                .networkConfiguration(NetworkConfigurationArgs.builder()
                    .isSecondaryIpEnabled(false)
                    .build())
                .build())
            .softwareConfiguration(ExternalInstallationSoftwareConfigurationArgs.builder()
                .softwareInstallationType("External")
                .centralServerVmId("string")
                .build())
            .build())
        .environment("string")
        .resourceGroupName("string")
        .sapProduct("string")
        .identity(UserAssignedServiceIdentityArgs.builder()
            .type("string")
            .userAssignedIdentities("string")
            .build())
        .location("string")
        .managedResourceGroupConfiguration(ManagedRGConfigurationArgs.builder()
            .name("string")
            .build())
        .sapVirtualInstanceName("string")
        .tags(Map.of("string", "string"))
        .build());
    
    sapvirtual_instance_resource = azure_native.workloads.SAPVirtualInstance("sapvirtualInstanceResource",
        configuration={
            "configuration_type": "Deployment",
            "app_location": "string",
            "infrastructure_configuration": {
                "app_resource_group": "string",
                "deployment_type": "SingleServer",
                "subnet_id": "string",
                "virtual_machine_configuration": {
                    "image_reference": {
                        "offer": "string",
                        "publisher": "string",
                        "sku": "string",
                        "version": "string",
                    },
                    "os_profile": {
                        "admin_password": "string",
                        "admin_username": "string",
                        "os_configuration": {
                            "os_type": "Linux",
                            "disable_password_authentication": False,
                            "ssh": {
                                "public_keys": [{
                                    "key_data": "string",
                                }],
                            },
                            "ssh_key_pair": {
                                "private_key": "string",
                                "public_key": "string",
                            },
                        },
                    },
                    "vm_size": "string",
                },
                "custom_resource_names": {
                    "naming_pattern_type": "FullResourceName",
                    "virtual_machine": {
                        "data_disk_names": {
                            "string": ["string"],
                        },
                        "host_name": "string",
                        "network_interfaces": [{
                            "network_interface_name": "string",
                        }],
                        "os_disk_name": "string",
                        "vm_name": "string",
                    },
                },
                "database_type": "string",
                "db_disk_configuration": {
                    "disk_volume_configurations": {
                        "string": {
                            "count": 0,
                            "size_gb": 0,
                            "sku": {
                                "name": "string",
                            },
                        },
                    },
                },
                "network_configuration": {
                    "is_secondary_ip_enabled": False,
                },
            },
            "software_configuration": {
                "software_installation_type": "External",
                "central_server_vm_id": "string",
            },
        },
        environment="string",
        resource_group_name="string",
        sap_product="string",
        identity={
            "type": "string",
            "user_assigned_identities": ["string"],
        },
        location="string",
        managed_resource_group_configuration={
            "name": "string",
        },
        sap_virtual_instance_name="string",
        tags={
            "string": "string",
        })
    
    const sapvirtualInstanceResource = new azure_native.workloads.SAPVirtualInstance("sapvirtualInstanceResource", {
        configuration: {
            configurationType: "Deployment",
            appLocation: "string",
            infrastructureConfiguration: {
                appResourceGroup: "string",
                deploymentType: "SingleServer",
                subnetId: "string",
                virtualMachineConfiguration: {
                    imageReference: {
                        offer: "string",
                        publisher: "string",
                        sku: "string",
                        version: "string",
                    },
                    osProfile: {
                        adminPassword: "string",
                        adminUsername: "string",
                        osConfiguration: {
                            osType: "Linux",
                            disablePasswordAuthentication: false,
                            ssh: {
                                publicKeys: [{
                                    keyData: "string",
                                }],
                            },
                            sshKeyPair: {
                                privateKey: "string",
                                publicKey: "string",
                            },
                        },
                    },
                    vmSize: "string",
                },
                customResourceNames: {
                    namingPatternType: "FullResourceName",
                    virtualMachine: {
                        dataDiskNames: {
                            string: ["string"],
                        },
                        hostName: "string",
                        networkInterfaces: [{
                            networkInterfaceName: "string",
                        }],
                        osDiskName: "string",
                        vmName: "string",
                    },
                },
                databaseType: "string",
                dbDiskConfiguration: {
                    diskVolumeConfigurations: {
                        string: {
                            count: 0,
                            sizeGB: 0,
                            sku: {
                                name: "string",
                            },
                        },
                    },
                },
                networkConfiguration: {
                    isSecondaryIpEnabled: false,
                },
            },
            softwareConfiguration: {
                softwareInstallationType: "External",
                centralServerVmId: "string",
            },
        },
        environment: "string",
        resourceGroupName: "string",
        sapProduct: "string",
        identity: {
            type: "string",
            userAssignedIdentities: ["string"],
        },
        location: "string",
        managedResourceGroupConfiguration: {
            name: "string",
        },
        sapVirtualInstanceName: "string",
        tags: {
            string: "string",
        },
    });
    
    type: azure-native:workloads:SAPVirtualInstance
    properties:
        configuration:
            appLocation: string
            configurationType: Deployment
            infrastructureConfiguration:
                appResourceGroup: string
                customResourceNames:
                    namingPatternType: FullResourceName
                    virtualMachine:
                        dataDiskNames:
                            string:
                                - string
                        hostName: string
                        networkInterfaces:
                            - networkInterfaceName: string
                        osDiskName: string
                        vmName: string
                databaseType: string
                dbDiskConfiguration:
                    diskVolumeConfigurations:
                        string:
                            count: 0
                            sizeGB: 0
                            sku:
                                name: string
                deploymentType: SingleServer
                networkConfiguration:
                    isSecondaryIpEnabled: false
                subnetId: string
                virtualMachineConfiguration:
                    imageReference:
                        offer: string
                        publisher: string
                        sku: string
                        version: string
                    osProfile:
                        adminPassword: string
                        adminUsername: string
                        osConfiguration:
                            disablePasswordAuthentication: false
                            osType: Linux
                            ssh:
                                publicKeys:
                                    - keyData: string
                            sshKeyPair:
                                privateKey: string
                                publicKey: string
                    vmSize: string
            softwareConfiguration:
                centralServerVmId: string
                softwareInstallationType: External
        environment: string
        identity:
            type: string
            userAssignedIdentities:
                - string
        location: string
        managedResourceGroupConfiguration:
            name: string
        resourceGroupName: string
        sapProduct: string
        sapVirtualInstanceName: string
        tags:
            string: string
    

    SAPVirtualInstance 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 SAPVirtualInstance resource accepts the following input properties:

    Configuration Pulumi.AzureNative.Workloads.Inputs.DeploymentConfiguration | Pulumi.AzureNative.Workloads.Inputs.DeploymentWithOSConfiguration | Pulumi.AzureNative.Workloads.Inputs.DiscoveryConfiguration
    Defines if the SAP system is being created using Azure Center for SAP solutions (ACSS) or if an existing SAP system is being registered with ACSS
    Environment string | Pulumi.AzureNative.Workloads.SAPEnvironmentType
    Defines the environment type - Production/Non Production.
    ResourceGroupName string
    The name of the resource group. The name is case insensitive.
    SapProduct string | Pulumi.AzureNative.Workloads.SAPProductType
    Defines the SAP Product type.
    Identity Pulumi.AzureNative.Workloads.Inputs.UserAssignedServiceIdentity
    A pre-created user assigned identity with appropriate roles assigned. To learn more on identity and roles required, visit the ACSS how-to-guide.
    Location string
    The geo-location where the resource lives
    ManagedResourceGroupConfiguration Pulumi.AzureNative.Workloads.Inputs.ManagedRGConfiguration
    Managed resource group configuration
    SapVirtualInstanceName string
    The name of the Virtual Instances for SAP solutions resource
    Tags Dictionary<string, string>
    Resource tags.
    Configuration DeploymentConfigurationArgs | DeploymentWithOSConfigurationArgs | DiscoveryConfigurationArgs
    Defines if the SAP system is being created using Azure Center for SAP solutions (ACSS) or if an existing SAP system is being registered with ACSS
    Environment string | SAPEnvironmentType
    Defines the environment type - Production/Non Production.
    ResourceGroupName string
    The name of the resource group. The name is case insensitive.
    SapProduct string | SAPProductType
    Defines the SAP Product type.
    Identity UserAssignedServiceIdentityArgs
    A pre-created user assigned identity with appropriate roles assigned. To learn more on identity and roles required, visit the ACSS how-to-guide.
    Location string
    The geo-location where the resource lives
    ManagedResourceGroupConfiguration ManagedRGConfigurationArgs
    Managed resource group configuration
    SapVirtualInstanceName string
    The name of the Virtual Instances for SAP solutions resource
    Tags map[string]string
    Resource tags.
    configuration DeploymentConfiguration | DeploymentWithOSConfiguration | DiscoveryConfiguration
    Defines if the SAP system is being created using Azure Center for SAP solutions (ACSS) or if an existing SAP system is being registered with ACSS
    environment String | SAPEnvironmentType
    Defines the environment type - Production/Non Production.
    resourceGroupName String
    The name of the resource group. The name is case insensitive.
    sapProduct String | SAPProductType
    Defines the SAP Product type.
    identity UserAssignedServiceIdentity
    A pre-created user assigned identity with appropriate roles assigned. To learn more on identity and roles required, visit the ACSS how-to-guide.
    location String
    The geo-location where the resource lives
    managedResourceGroupConfiguration ManagedRGConfiguration
    Managed resource group configuration
    sapVirtualInstanceName String
    The name of the Virtual Instances for SAP solutions resource
    tags Map<String,String>
    Resource tags.
    configuration DeploymentConfiguration | DeploymentWithOSConfiguration | DiscoveryConfiguration
    Defines if the SAP system is being created using Azure Center for SAP solutions (ACSS) or if an existing SAP system is being registered with ACSS
    environment string | SAPEnvironmentType
    Defines the environment type - Production/Non Production.
    resourceGroupName string
    The name of the resource group. The name is case insensitive.
    sapProduct string | SAPProductType
    Defines the SAP Product type.
    identity UserAssignedServiceIdentity
    A pre-created user assigned identity with appropriate roles assigned. To learn more on identity and roles required, visit the ACSS how-to-guide.
    location string
    The geo-location where the resource lives
    managedResourceGroupConfiguration ManagedRGConfiguration
    Managed resource group configuration
    sapVirtualInstanceName string
    The name of the Virtual Instances for SAP solutions resource
    tags {[key: string]: string}
    Resource tags.
    configuration DeploymentConfigurationArgs | DeploymentWithOSConfigurationArgs | DiscoveryConfigurationArgs
    Defines if the SAP system is being created using Azure Center for SAP solutions (ACSS) or if an existing SAP system is being registered with ACSS
    environment str | SAPEnvironmentType
    Defines the environment type - Production/Non Production.
    resource_group_name str
    The name of the resource group. The name is case insensitive.
    sap_product str | SAPProductType
    Defines the SAP Product type.
    identity UserAssignedServiceIdentityArgs
    A pre-created user assigned identity with appropriate roles assigned. To learn more on identity and roles required, visit the ACSS how-to-guide.
    location str
    The geo-location where the resource lives
    managed_resource_group_configuration ManagedRGConfigurationArgs
    Managed resource group configuration
    sap_virtual_instance_name str
    The name of the Virtual Instances for SAP solutions resource
    tags Mapping[str, str]
    Resource tags.
    configuration Property Map | Property Map | Property Map
    Defines if the SAP system is being created using Azure Center for SAP solutions (ACSS) or if an existing SAP system is being registered with ACSS
    environment String | "NonProd" | "Prod"
    Defines the environment type - Production/Non Production.
    resourceGroupName String
    The name of the resource group. The name is case insensitive.
    sapProduct String | "ECC" | "S4HANA" | "Other"
    Defines the SAP Product type.
    identity Property Map
    A pre-created user assigned identity with appropriate roles assigned. To learn more on identity and roles required, visit the ACSS how-to-guide.
    location String
    The geo-location where the resource lives
    managedResourceGroupConfiguration Property Map
    Managed resource group configuration
    sapVirtualInstanceName String
    The name of the Virtual Instances for SAP solutions resource
    tags Map<String>
    Resource tags.

    Outputs

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

    Errors Pulumi.AzureNative.Workloads.Outputs.SAPVirtualInstanceErrorResponse
    Indicates any errors on the Virtual Instance for SAP solutions resource.
    Health string
    Defines the health of SAP Instances.
    Id string
    The provider-assigned unique ID for this managed resource.
    Name string
    The name of the resource
    ProvisioningState string
    Defines the provisioning states.
    State string
    Defines the Virtual Instance for SAP state.
    Status string
    Defines the SAP Instance status.
    SystemData Pulumi.AzureNative.Workloads.Outputs.SystemDataResponse
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    Type string
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
    Errors SAPVirtualInstanceErrorResponse
    Indicates any errors on the Virtual Instance for SAP solutions resource.
    Health string
    Defines the health of SAP Instances.
    Id string
    The provider-assigned unique ID for this managed resource.
    Name string
    The name of the resource
    ProvisioningState string
    Defines the provisioning states.
    State string
    Defines the Virtual Instance for SAP state.
    Status string
    Defines the SAP Instance status.
    SystemData SystemDataResponse
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    Type string
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
    errors SAPVirtualInstanceErrorResponse
    Indicates any errors on the Virtual Instance for SAP solutions resource.
    health String
    Defines the health of SAP Instances.
    id String
    The provider-assigned unique ID for this managed resource.
    name String
    The name of the resource
    provisioningState String
    Defines the provisioning states.
    state String
    Defines the Virtual Instance for SAP state.
    status String
    Defines the SAP Instance status.
    systemData SystemDataResponse
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    type String
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
    errors SAPVirtualInstanceErrorResponse
    Indicates any errors on the Virtual Instance for SAP solutions resource.
    health string
    Defines the health of SAP Instances.
    id string
    The provider-assigned unique ID for this managed resource.
    name string
    The name of the resource
    provisioningState string
    Defines the provisioning states.
    state string
    Defines the Virtual Instance for SAP state.
    status string
    Defines the SAP Instance status.
    systemData SystemDataResponse
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    type string
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
    errors SAPVirtualInstanceErrorResponse
    Indicates any errors on the Virtual Instance for SAP solutions resource.
    health str
    Defines the health of SAP Instances.
    id str
    The provider-assigned unique ID for this managed resource.
    name str
    The name of the resource
    provisioning_state str
    Defines the provisioning states.
    state str
    Defines the Virtual Instance for SAP state.
    status str
    Defines the SAP Instance status.
    system_data SystemDataResponse
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    type str
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
    errors Property Map
    Indicates any errors on the Virtual Instance for SAP solutions resource.
    health String
    Defines the health of SAP Instances.
    id String
    The provider-assigned unique ID for this managed resource.
    name String
    The name of the resource
    provisioningState String
    Defines the provisioning states.
    state String
    Defines the Virtual Instance for SAP state.
    status String
    Defines the SAP Instance status.
    systemData Property Map
    Azure Resource Manager metadata containing createdBy and modifiedBy information.
    type String
    The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

    Supporting Types

    ApplicationServerConfiguration, ApplicationServerConfigurationArgs

    InstanceCount double
    The number of app server instances.
    SubnetId string
    The subnet id.
    VirtualMachineConfiguration Pulumi.AzureNative.Workloads.Inputs.VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    InstanceCount float64
    The number of app server instances.
    SubnetId string
    The subnet id.
    VirtualMachineConfiguration VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    instanceCount Double
    The number of app server instances.
    subnetId String
    The subnet id.
    virtualMachineConfiguration VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    instanceCount number
    The number of app server instances.
    subnetId string
    The subnet id.
    virtualMachineConfiguration VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    instance_count float
    The number of app server instances.
    subnet_id str
    The subnet id.
    virtual_machine_configuration VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    instanceCount Number
    The number of app server instances.
    subnetId String
    The subnet id.
    virtualMachineConfiguration Property Map
    Gets or sets the virtual machine configuration.

    ApplicationServerConfigurationResponse, ApplicationServerConfigurationResponseArgs

    InstanceCount double
    The number of app server instances.
    SubnetId string
    The subnet id.
    VirtualMachineConfiguration Pulumi.AzureNative.Workloads.Inputs.VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    InstanceCount float64
    The number of app server instances.
    SubnetId string
    The subnet id.
    VirtualMachineConfiguration VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    instanceCount Double
    The number of app server instances.
    subnetId String
    The subnet id.
    virtualMachineConfiguration VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    instanceCount number
    The number of app server instances.
    subnetId string
    The subnet id.
    virtualMachineConfiguration VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    instance_count float
    The number of app server instances.
    subnet_id str
    The subnet id.
    virtual_machine_configuration VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    instanceCount Number
    The number of app server instances.
    subnetId String
    The subnet id.
    virtualMachineConfiguration Property Map
    Gets or sets the virtual machine configuration.

    ApplicationServerFullResourceNames, ApplicationServerFullResourceNamesArgs

    AvailabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-App-AvSet.
    VirtualMachines List<Pulumi.AzureNative.Workloads.Inputs.VirtualMachineResourceNames>
    The list of virtual machine naming details.
    AvailabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-App-AvSet.
    VirtualMachines []VirtualMachineResourceNames
    The list of virtual machine naming details.
    availabilitySetName String
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-App-AvSet.
    virtualMachines List<VirtualMachineResourceNames>
    The list of virtual machine naming details.
    availabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-App-AvSet.
    virtualMachines VirtualMachineResourceNames[]
    The list of virtual machine naming details.
    availability_set_name str
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-App-AvSet.
    virtual_machines Sequence[VirtualMachineResourceNames]
    The list of virtual machine naming details.
    availabilitySetName String
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-App-AvSet.
    virtualMachines List<Property Map>
    The list of virtual machine naming details.

    ApplicationServerFullResourceNamesResponse, ApplicationServerFullResourceNamesResponseArgs

    AvailabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-App-AvSet.
    VirtualMachines List<Pulumi.AzureNative.Workloads.Inputs.VirtualMachineResourceNamesResponse>
    The list of virtual machine naming details.
    AvailabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-App-AvSet.
    VirtualMachines []VirtualMachineResourceNamesResponse
    The list of virtual machine naming details.
    availabilitySetName String
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-App-AvSet.
    virtualMachines List<VirtualMachineResourceNamesResponse>
    The list of virtual machine naming details.
    availabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-App-AvSet.
    virtualMachines VirtualMachineResourceNamesResponse[]
    The list of virtual machine naming details.
    availability_set_name str
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-App-AvSet.
    virtual_machines Sequence[VirtualMachineResourceNamesResponse]
    The list of virtual machine naming details.
    availabilitySetName String
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-App-AvSet.
    virtualMachines List<Property Map>
    The list of virtual machine naming details.

    CentralServerConfiguration, CentralServerConfigurationArgs

    InstanceCount double
    The number of central server VMs.
    SubnetId string
    The subnet id.
    VirtualMachineConfiguration Pulumi.AzureNative.Workloads.Inputs.VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    InstanceCount float64
    The number of central server VMs.
    SubnetId string
    The subnet id.
    VirtualMachineConfiguration VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    instanceCount Double
    The number of central server VMs.
    subnetId String
    The subnet id.
    virtualMachineConfiguration VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    instanceCount number
    The number of central server VMs.
    subnetId string
    The subnet id.
    virtualMachineConfiguration VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    instance_count float
    The number of central server VMs.
    subnet_id str
    The subnet id.
    virtual_machine_configuration VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    instanceCount Number
    The number of central server VMs.
    subnetId String
    The subnet id.
    virtualMachineConfiguration Property Map
    Gets or sets the virtual machine configuration.

    CentralServerConfigurationResponse, CentralServerConfigurationResponseArgs

    InstanceCount double
    The number of central server VMs.
    SubnetId string
    The subnet id.
    VirtualMachineConfiguration Pulumi.AzureNative.Workloads.Inputs.VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    InstanceCount float64
    The number of central server VMs.
    SubnetId string
    The subnet id.
    VirtualMachineConfiguration VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    instanceCount Double
    The number of central server VMs.
    subnetId String
    The subnet id.
    virtualMachineConfiguration VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    instanceCount number
    The number of central server VMs.
    subnetId string
    The subnet id.
    virtualMachineConfiguration VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    instance_count float
    The number of central server VMs.
    subnet_id str
    The subnet id.
    virtual_machine_configuration VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    instanceCount Number
    The number of central server VMs.
    subnetId String
    The subnet id.
    virtualMachineConfiguration Property Map
    Gets or sets the virtual machine configuration.

    CentralServerFullResourceNames, CentralServerFullResourceNamesArgs

    AvailabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-ASCS-AvSet.
    LoadBalancer Pulumi.AzureNative.Workloads.Inputs.LoadBalancerResourceNames
    The resource names object for load balancer and related resources.
    VirtualMachines List<Pulumi.AzureNative.Workloads.Inputs.VirtualMachineResourceNames>
    The list of names for all ASCS virtual machines to be deployed. The number of entries in this list should be equal to the number VMs to be created for ASCS layer. At maximum, there can be two virtual machines at this layer: ASCS and ERS.
    AvailabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-ASCS-AvSet.
    LoadBalancer LoadBalancerResourceNames
    The resource names object for load balancer and related resources.
    VirtualMachines []VirtualMachineResourceNames
    The list of names for all ASCS virtual machines to be deployed. The number of entries in this list should be equal to the number VMs to be created for ASCS layer. At maximum, there can be two virtual machines at this layer: ASCS and ERS.
    availabilitySetName String
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-ASCS-AvSet.
    loadBalancer LoadBalancerResourceNames
    The resource names object for load balancer and related resources.
    virtualMachines List<VirtualMachineResourceNames>
    The list of names for all ASCS virtual machines to be deployed. The number of entries in this list should be equal to the number VMs to be created for ASCS layer. At maximum, there can be two virtual machines at this layer: ASCS and ERS.
    availabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-ASCS-AvSet.
    loadBalancer LoadBalancerResourceNames
    The resource names object for load balancer and related resources.
    virtualMachines VirtualMachineResourceNames[]
    The list of names for all ASCS virtual machines to be deployed. The number of entries in this list should be equal to the number VMs to be created for ASCS layer. At maximum, there can be two virtual machines at this layer: ASCS and ERS.
    availability_set_name str
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-ASCS-AvSet.
    load_balancer LoadBalancerResourceNames
    The resource names object for load balancer and related resources.
    virtual_machines Sequence[VirtualMachineResourceNames]
    The list of names for all ASCS virtual machines to be deployed. The number of entries in this list should be equal to the number VMs to be created for ASCS layer. At maximum, there can be two virtual machines at this layer: ASCS and ERS.
    availabilitySetName String
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-ASCS-AvSet.
    loadBalancer Property Map
    The resource names object for load balancer and related resources.
    virtualMachines List<Property Map>
    The list of names for all ASCS virtual machines to be deployed. The number of entries in this list should be equal to the number VMs to be created for ASCS layer. At maximum, there can be two virtual machines at this layer: ASCS and ERS.

    CentralServerFullResourceNamesResponse, CentralServerFullResourceNamesResponseArgs

    AvailabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-ASCS-AvSet.
    LoadBalancer Pulumi.AzureNative.Workloads.Inputs.LoadBalancerResourceNamesResponse
    The resource names object for load balancer and related resources.
    VirtualMachines List<Pulumi.AzureNative.Workloads.Inputs.VirtualMachineResourceNamesResponse>
    The list of names for all ASCS virtual machines to be deployed. The number of entries in this list should be equal to the number VMs to be created for ASCS layer. At maximum, there can be two virtual machines at this layer: ASCS and ERS.
    AvailabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-ASCS-AvSet.
    LoadBalancer LoadBalancerResourceNamesResponse
    The resource names object for load balancer and related resources.
    VirtualMachines []VirtualMachineResourceNamesResponse
    The list of names for all ASCS virtual machines to be deployed. The number of entries in this list should be equal to the number VMs to be created for ASCS layer. At maximum, there can be two virtual machines at this layer: ASCS and ERS.
    availabilitySetName String
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-ASCS-AvSet.
    loadBalancer LoadBalancerResourceNamesResponse
    The resource names object for load balancer and related resources.
    virtualMachines List<VirtualMachineResourceNamesResponse>
    The list of names for all ASCS virtual machines to be deployed. The number of entries in this list should be equal to the number VMs to be created for ASCS layer. At maximum, there can be two virtual machines at this layer: ASCS and ERS.
    availabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-ASCS-AvSet.
    loadBalancer LoadBalancerResourceNamesResponse
    The resource names object for load balancer and related resources.
    virtualMachines VirtualMachineResourceNamesResponse[]
    The list of names for all ASCS virtual machines to be deployed. The number of entries in this list should be equal to the number VMs to be created for ASCS layer. At maximum, there can be two virtual machines at this layer: ASCS and ERS.
    availability_set_name str
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-ASCS-AvSet.
    load_balancer LoadBalancerResourceNamesResponse
    The resource names object for load balancer and related resources.
    virtual_machines Sequence[VirtualMachineResourceNamesResponse]
    The list of names for all ASCS virtual machines to be deployed. The number of entries in this list should be equal to the number VMs to be created for ASCS layer. At maximum, there can be two virtual machines at this layer: ASCS and ERS.
    availabilitySetName String
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-ASCS-AvSet.
    loadBalancer Property Map
    The resource names object for load balancer and related resources.
    virtualMachines List<Property Map>
    The list of names for all ASCS virtual machines to be deployed. The number of entries in this list should be equal to the number VMs to be created for ASCS layer. At maximum, there can be two virtual machines at this layer: ASCS and ERS.

    CreateAndMountFileShareConfiguration, CreateAndMountFileShareConfigurationArgs

    ResourceGroup string
    The name of transport file share resource group. This should be pre created by the customer. The app rg is used in case of missing input.
    StorageAccountName string
    The name of file share storage account name . A custom name is used in case of missing input.
    ResourceGroup string
    The name of transport file share resource group. This should be pre created by the customer. The app rg is used in case of missing input.
    StorageAccountName string
    The name of file share storage account name . A custom name is used in case of missing input.
    resourceGroup String
    The name of transport file share resource group. This should be pre created by the customer. The app rg is used in case of missing input.
    storageAccountName String
    The name of file share storage account name . A custom name is used in case of missing input.
    resourceGroup string
    The name of transport file share resource group. This should be pre created by the customer. The app rg is used in case of missing input.
    storageAccountName string
    The name of file share storage account name . A custom name is used in case of missing input.
    resource_group str
    The name of transport file share resource group. This should be pre created by the customer. The app rg is used in case of missing input.
    storage_account_name str
    The name of file share storage account name . A custom name is used in case of missing input.
    resourceGroup String
    The name of transport file share resource group. This should be pre created by the customer. The app rg is used in case of missing input.
    storageAccountName String
    The name of file share storage account name . A custom name is used in case of missing input.

    CreateAndMountFileShareConfigurationResponse, CreateAndMountFileShareConfigurationResponseArgs

    ResourceGroup string
    The name of transport file share resource group. This should be pre created by the customer. The app rg is used in case of missing input.
    StorageAccountName string
    The name of file share storage account name . A custom name is used in case of missing input.
    ResourceGroup string
    The name of transport file share resource group. This should be pre created by the customer. The app rg is used in case of missing input.
    StorageAccountName string
    The name of file share storage account name . A custom name is used in case of missing input.
    resourceGroup String
    The name of transport file share resource group. This should be pre created by the customer. The app rg is used in case of missing input.
    storageAccountName String
    The name of file share storage account name . A custom name is used in case of missing input.
    resourceGroup string
    The name of transport file share resource group. This should be pre created by the customer. The app rg is used in case of missing input.
    storageAccountName string
    The name of file share storage account name . A custom name is used in case of missing input.
    resource_group str
    The name of transport file share resource group. This should be pre created by the customer. The app rg is used in case of missing input.
    storage_account_name str
    The name of file share storage account name . A custom name is used in case of missing input.
    resourceGroup String
    The name of transport file share resource group. This should be pre created by the customer. The app rg is used in case of missing input.
    storageAccountName String
    The name of file share storage account name . A custom name is used in case of missing input.

    DatabaseConfiguration, DatabaseConfigurationArgs

    InstanceCount double
    The number of database VMs.
    SubnetId string
    The subnet id.
    VirtualMachineConfiguration Pulumi.AzureNative.Workloads.Inputs.VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    DatabaseType string | Pulumi.AzureNative.Workloads.SAPDatabaseType
    The database type.
    DiskConfiguration Pulumi.AzureNative.Workloads.Inputs.DiskConfiguration
    Gets or sets the disk configuration.
    InstanceCount float64
    The number of database VMs.
    SubnetId string
    The subnet id.
    VirtualMachineConfiguration VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    DatabaseType string | SAPDatabaseType
    The database type.
    DiskConfiguration DiskConfiguration
    Gets or sets the disk configuration.
    instanceCount Double
    The number of database VMs.
    subnetId String
    The subnet id.
    virtualMachineConfiguration VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    databaseType String | SAPDatabaseType
    The database type.
    diskConfiguration DiskConfiguration
    Gets or sets the disk configuration.
    instanceCount number
    The number of database VMs.
    subnetId string
    The subnet id.
    virtualMachineConfiguration VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    databaseType string | SAPDatabaseType
    The database type.
    diskConfiguration DiskConfiguration
    Gets or sets the disk configuration.
    instance_count float
    The number of database VMs.
    subnet_id str
    The subnet id.
    virtual_machine_configuration VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    database_type str | SAPDatabaseType
    The database type.
    disk_configuration DiskConfiguration
    Gets or sets the disk configuration.
    instanceCount Number
    The number of database VMs.
    subnetId String
    The subnet id.
    virtualMachineConfiguration Property Map
    Gets or sets the virtual machine configuration.
    databaseType String | "HANA" | "DB2"
    The database type.
    diskConfiguration Property Map
    Gets or sets the disk configuration.

    DatabaseConfigurationResponse, DatabaseConfigurationResponseArgs

    InstanceCount double
    The number of database VMs.
    SubnetId string
    The subnet id.
    VirtualMachineConfiguration Pulumi.AzureNative.Workloads.Inputs.VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    DatabaseType string
    The database type.
    DiskConfiguration Pulumi.AzureNative.Workloads.Inputs.DiskConfigurationResponse
    Gets or sets the disk configuration.
    InstanceCount float64
    The number of database VMs.
    SubnetId string
    The subnet id.
    VirtualMachineConfiguration VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    DatabaseType string
    The database type.
    DiskConfiguration DiskConfigurationResponse
    Gets or sets the disk configuration.
    instanceCount Double
    The number of database VMs.
    subnetId String
    The subnet id.
    virtualMachineConfiguration VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    databaseType String
    The database type.
    diskConfiguration DiskConfigurationResponse
    Gets or sets the disk configuration.
    instanceCount number
    The number of database VMs.
    subnetId string
    The subnet id.
    virtualMachineConfiguration VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    databaseType string
    The database type.
    diskConfiguration DiskConfigurationResponse
    Gets or sets the disk configuration.
    instance_count float
    The number of database VMs.
    subnet_id str
    The subnet id.
    virtual_machine_configuration VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    database_type str
    The database type.
    disk_configuration DiskConfigurationResponse
    Gets or sets the disk configuration.
    instanceCount Number
    The number of database VMs.
    subnetId String
    The subnet id.
    virtualMachineConfiguration Property Map
    Gets or sets the virtual machine configuration.
    databaseType String
    The database type.
    diskConfiguration Property Map
    Gets or sets the disk configuration.

    DatabaseServerFullResourceNames, DatabaseServerFullResourceNamesArgs

    AvailabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-DB-AvSet.
    LoadBalancer Pulumi.AzureNative.Workloads.Inputs.LoadBalancerResourceNames
    The resource names object for load balancer and related resources.
    VirtualMachines List<Pulumi.AzureNative.Workloads.Inputs.VirtualMachineResourceNames>
    The list of virtual machine naming details.
    AvailabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-DB-AvSet.
    LoadBalancer LoadBalancerResourceNames
    The resource names object for load balancer and related resources.
    VirtualMachines []VirtualMachineResourceNames
    The list of virtual machine naming details.
    availabilitySetName String
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-DB-AvSet.
    loadBalancer LoadBalancerResourceNames
    The resource names object for load balancer and related resources.
    virtualMachines List<VirtualMachineResourceNames>
    The list of virtual machine naming details.
    availabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-DB-AvSet.
    loadBalancer LoadBalancerResourceNames
    The resource names object for load balancer and related resources.
    virtualMachines VirtualMachineResourceNames[]
    The list of virtual machine naming details.
    availability_set_name str
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-DB-AvSet.
    load_balancer LoadBalancerResourceNames
    The resource names object for load balancer and related resources.
    virtual_machines Sequence[VirtualMachineResourceNames]
    The list of virtual machine naming details.
    availabilitySetName String
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-DB-AvSet.
    loadBalancer Property Map
    The resource names object for load balancer and related resources.
    virtualMachines List<Property Map>
    The list of virtual machine naming details.

    DatabaseServerFullResourceNamesResponse, DatabaseServerFullResourceNamesResponseArgs

    AvailabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-DB-AvSet.
    LoadBalancer Pulumi.AzureNative.Workloads.Inputs.LoadBalancerResourceNamesResponse
    The resource names object for load balancer and related resources.
    VirtualMachines List<Pulumi.AzureNative.Workloads.Inputs.VirtualMachineResourceNamesResponse>
    The list of virtual machine naming details.
    AvailabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-DB-AvSet.
    LoadBalancer LoadBalancerResourceNamesResponse
    The resource names object for load balancer and related resources.
    VirtualMachines []VirtualMachineResourceNamesResponse
    The list of virtual machine naming details.
    availabilitySetName String
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-DB-AvSet.
    loadBalancer LoadBalancerResourceNamesResponse
    The resource names object for load balancer and related resources.
    virtualMachines List<VirtualMachineResourceNamesResponse>
    The list of virtual machine naming details.
    availabilitySetName string
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-DB-AvSet.
    loadBalancer LoadBalancerResourceNamesResponse
    The resource names object for load balancer and related resources.
    virtualMachines VirtualMachineResourceNamesResponse[]
    The list of virtual machine naming details.
    availability_set_name str
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-DB-AvSet.
    load_balancer LoadBalancerResourceNamesResponse
    The resource names object for load balancer and related resources.
    virtual_machines Sequence[VirtualMachineResourceNamesResponse]
    The list of virtual machine naming details.
    availabilitySetName String
    The full name for availability set. In case name is not provided, it will be defaulted to {SID}-DB-AvSet.
    loadBalancer Property Map
    The resource names object for load balancer and related resources.
    virtualMachines List<Property Map>
    The list of virtual machine naming details.

    DeployerVmPackages, DeployerVmPackagesArgs

    StorageAccountId string
    The deployer VM packages storage account id
    Url string
    The URL to the deployer VM packages file.
    StorageAccountId string
    The deployer VM packages storage account id
    Url string
    The URL to the deployer VM packages file.
    storageAccountId String
    The deployer VM packages storage account id
    url String
    The URL to the deployer VM packages file.
    storageAccountId string
    The deployer VM packages storage account id
    url string
    The URL to the deployer VM packages file.
    storage_account_id str
    The deployer VM packages storage account id
    url str
    The URL to the deployer VM packages file.
    storageAccountId String
    The deployer VM packages storage account id
    url String
    The URL to the deployer VM packages file.

    DeployerVmPackagesResponse, DeployerVmPackagesResponseArgs

    StorageAccountId string
    The deployer VM packages storage account id
    Url string
    The URL to the deployer VM packages file.
    StorageAccountId string
    The deployer VM packages storage account id
    Url string
    The URL to the deployer VM packages file.
    storageAccountId String
    The deployer VM packages storage account id
    url String
    The URL to the deployer VM packages file.
    storageAccountId string
    The deployer VM packages storage account id
    url string
    The URL to the deployer VM packages file.
    storage_account_id str
    The deployer VM packages storage account id
    url str
    The URL to the deployer VM packages file.
    storageAccountId String
    The deployer VM packages storage account id
    url String
    The URL to the deployer VM packages file.

    DeploymentConfiguration, DeploymentConfigurationArgs

    appLocation String
    The geo-location where the SAP system is to be created.
    infrastructureConfiguration Property Map | Property Map
    The infrastructure configuration.
    softwareConfiguration Property Map | Property Map | Property Map
    The software configuration.

    DeploymentConfigurationResponse, DeploymentConfigurationResponseArgs

    appLocation String
    The geo-location where the SAP system is to be created.
    infrastructureConfiguration Property Map | Property Map
    The infrastructure configuration.
    softwareConfiguration Property Map | Property Map | Property Map
    The software configuration.

    DeploymentWithOSConfiguration, DeploymentWithOSConfigurationArgs

    appLocation String
    The geo-location where the SAP system is to be created.
    infrastructureConfiguration Property Map | Property Map
    The infrastructure configuration.
    osSapConfiguration Property Map
    The OS and SAP configuration.
    softwareConfiguration Property Map | Property Map | Property Map
    The software configuration.

    DeploymentWithOSConfigurationResponse, DeploymentWithOSConfigurationResponseArgs

    appLocation String
    The geo-location where the SAP system is to be created.
    infrastructureConfiguration Property Map | Property Map
    The infrastructure configuration.
    osSapConfiguration Property Map
    The OS and SAP configuration.
    softwareConfiguration Property Map | Property Map | Property Map
    The software configuration.

    DiscoveryConfiguration, DiscoveryConfigurationArgs

    CentralServerVmId string
    The virtual machine ID of the Central Server.
    ManagedRgStorageAccountName string
    The custom storage account name for the storage account created by the service in the managed resource group created as part of VIS deployment.Refer to the storage account naming rules here.If not provided, the service will create the storage account with a random name.
    CentralServerVmId string
    The virtual machine ID of the Central Server.
    ManagedRgStorageAccountName string
    The custom storage account name for the storage account created by the service in the managed resource group created as part of VIS deployment.Refer to the storage account naming rules here.If not provided, the service will create the storage account with a random name.
    centralServerVmId String
    The virtual machine ID of the Central Server.
    managedRgStorageAccountName String
    The custom storage account name for the storage account created by the service in the managed resource group created as part of VIS deployment.Refer to the storage account naming rules here.If not provided, the service will create the storage account with a random name.
    centralServerVmId string
    The virtual machine ID of the Central Server.
    managedRgStorageAccountName string
    The custom storage account name for the storage account created by the service in the managed resource group created as part of VIS deployment.Refer to the storage account naming rules here.If not provided, the service will create the storage account with a random name.
    central_server_vm_id str
    The virtual machine ID of the Central Server.
    managed_rg_storage_account_name str
    The custom storage account name for the storage account created by the service in the managed resource group created as part of VIS deployment.Refer to the storage account naming rules here.If not provided, the service will create the storage account with a random name.
    centralServerVmId String
    The virtual machine ID of the Central Server.
    managedRgStorageAccountName String
    The custom storage account name for the storage account created by the service in the managed resource group created as part of VIS deployment.Refer to the storage account naming rules here.If not provided, the service will create the storage account with a random name.

    DiscoveryConfigurationResponse, DiscoveryConfigurationResponseArgs

    AppLocation string
    The geo-location where the SAP system exists.
    CentralServerVmId string
    The virtual machine ID of the Central Server.
    ManagedRgStorageAccountName string
    The custom storage account name for the storage account created by the service in the managed resource group created as part of VIS deployment.Refer to the storage account naming rules here.If not provided, the service will create the storage account with a random name.
    AppLocation string
    The geo-location where the SAP system exists.
    CentralServerVmId string
    The virtual machine ID of the Central Server.
    ManagedRgStorageAccountName string
    The custom storage account name for the storage account created by the service in the managed resource group created as part of VIS deployment.Refer to the storage account naming rules here.If not provided, the service will create the storage account with a random name.
    appLocation String
    The geo-location where the SAP system exists.
    centralServerVmId String
    The virtual machine ID of the Central Server.
    managedRgStorageAccountName String
    The custom storage account name for the storage account created by the service in the managed resource group created as part of VIS deployment.Refer to the storage account naming rules here.If not provided, the service will create the storage account with a random name.
    appLocation string
    The geo-location where the SAP system exists.
    centralServerVmId string
    The virtual machine ID of the Central Server.
    managedRgStorageAccountName string
    The custom storage account name for the storage account created by the service in the managed resource group created as part of VIS deployment.Refer to the storage account naming rules here.If not provided, the service will create the storage account with a random name.
    app_location str
    The geo-location where the SAP system exists.
    central_server_vm_id str
    The virtual machine ID of the Central Server.
    managed_rg_storage_account_name str
    The custom storage account name for the storage account created by the service in the managed resource group created as part of VIS deployment.Refer to the storage account naming rules here.If not provided, the service will create the storage account with a random name.
    appLocation String
    The geo-location where the SAP system exists.
    centralServerVmId String
    The virtual machine ID of the Central Server.
    managedRgStorageAccountName String
    The custom storage account name for the storage account created by the service in the managed resource group created as part of VIS deployment.Refer to the storage account naming rules here.If not provided, the service will create the storage account with a random name.

    DiskConfiguration, DiskConfigurationArgs

    DiskVolumeConfigurations Dictionary<string, Pulumi.AzureNative.Workloads.Inputs.DiskVolumeConfiguration>
    The disk configuration for the db volume. For HANA, Required volumes are: ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os'], Optional volume : ['backup'].
    DiskVolumeConfigurations map[string]DiskVolumeConfiguration
    The disk configuration for the db volume. For HANA, Required volumes are: ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os'], Optional volume : ['backup'].
    diskVolumeConfigurations Map<String,DiskVolumeConfiguration>
    The disk configuration for the db volume. For HANA, Required volumes are: ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os'], Optional volume : ['backup'].
    diskVolumeConfigurations {[key: string]: DiskVolumeConfiguration}
    The disk configuration for the db volume. For HANA, Required volumes are: ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os'], Optional volume : ['backup'].
    disk_volume_configurations Mapping[str, DiskVolumeConfiguration]
    The disk configuration for the db volume. For HANA, Required volumes are: ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os'], Optional volume : ['backup'].
    diskVolumeConfigurations Map<Property Map>
    The disk configuration for the db volume. For HANA, Required volumes are: ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os'], Optional volume : ['backup'].

    DiskConfigurationResponse, DiskConfigurationResponseArgs

    DiskVolumeConfigurations Dictionary<string, Pulumi.AzureNative.Workloads.Inputs.DiskVolumeConfigurationResponse>
    The disk configuration for the db volume. For HANA, Required volumes are: ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os'], Optional volume : ['backup'].
    DiskVolumeConfigurations map[string]DiskVolumeConfigurationResponse
    The disk configuration for the db volume. For HANA, Required volumes are: ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os'], Optional volume : ['backup'].
    diskVolumeConfigurations Map<String,DiskVolumeConfigurationResponse>
    The disk configuration for the db volume. For HANA, Required volumes are: ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os'], Optional volume : ['backup'].
    diskVolumeConfigurations {[key: string]: DiskVolumeConfigurationResponse}
    The disk configuration for the db volume. For HANA, Required volumes are: ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os'], Optional volume : ['backup'].
    disk_volume_configurations Mapping[str, DiskVolumeConfigurationResponse]
    The disk configuration for the db volume. For HANA, Required volumes are: ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os'], Optional volume : ['backup'].
    diskVolumeConfigurations Map<Property Map>
    The disk configuration for the db volume. For HANA, Required volumes are: ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os'], Optional volume : ['backup'].

    DiskSku, DiskSkuArgs

    Name string | Pulumi.AzureNative.Workloads.DiskSkuName
    Defines the disk sku name.
    Name string | DiskSkuName
    Defines the disk sku name.
    name String | DiskSkuName
    Defines the disk sku name.
    name string | DiskSkuName
    Defines the disk sku name.
    name str | DiskSkuName
    Defines the disk sku name.

    DiskSkuName, DiskSkuNameArgs

    Standard_LRS
    Standard_LRS
    Premium_LRS
    Premium_LRS
    StandardSSD_LRS
    StandardSSD_LRS
    UltraSSD_LRS
    UltraSSD_LRS
    Premium_ZRS
    Premium_ZRS
    StandardSSD_ZRS
    StandardSSD_ZRS
    PremiumV2_LRS
    PremiumV2_LRS
    DiskSkuName_Standard_LRS
    Standard_LRS
    DiskSkuName_Premium_LRS
    Premium_LRS
    DiskSkuName_StandardSSD_LRS
    StandardSSD_LRS
    DiskSkuName_UltraSSD_LRS
    UltraSSD_LRS
    DiskSkuName_Premium_ZRS
    Premium_ZRS
    DiskSkuName_StandardSSD_ZRS
    StandardSSD_ZRS
    DiskSkuName_PremiumV2_LRS
    PremiumV2_LRS
    Standard_LRS
    Standard_LRS
    Premium_LRS
    Premium_LRS
    StandardSSD_LRS
    StandardSSD_LRS
    UltraSSD_LRS
    UltraSSD_LRS
    Premium_ZRS
    Premium_ZRS
    StandardSSD_ZRS
    StandardSSD_ZRS
    PremiumV2_LRS
    PremiumV2_LRS
    Standard_LRS
    Standard_LRS
    Premium_LRS
    Premium_LRS
    StandardSSD_LRS
    StandardSSD_LRS
    UltraSSD_LRS
    UltraSSD_LRS
    Premium_ZRS
    Premium_ZRS
    StandardSSD_ZRS
    StandardSSD_ZRS
    PremiumV2_LRS
    PremiumV2_LRS
    STANDARD_LRS
    Standard_LRS
    PREMIUM_LRS
    Premium_LRS
    STANDARD_SS_D_LRS
    StandardSSD_LRS
    ULTRA_SS_D_LRS
    UltraSSD_LRS
    PREMIUM_ZRS
    Premium_ZRS
    STANDARD_SS_D_ZRS
    StandardSSD_ZRS
    PREMIUM_V2_LRS
    PremiumV2_LRS
    "Standard_LRS"
    Standard_LRS
    "Premium_LRS"
    Premium_LRS
    "StandardSSD_LRS"
    StandardSSD_LRS
    "UltraSSD_LRS"
    UltraSSD_LRS
    "Premium_ZRS"
    Premium_ZRS
    "StandardSSD_ZRS"
    StandardSSD_ZRS
    "PremiumV2_LRS"
    PremiumV2_LRS

    DiskSkuResponse, DiskSkuResponseArgs

    Name string
    Defines the disk sku name.
    Name string
    Defines the disk sku name.
    name String
    Defines the disk sku name.
    name string
    Defines the disk sku name.
    name str
    Defines the disk sku name.
    name String
    Defines the disk sku name.

    DiskVolumeConfiguration, DiskVolumeConfigurationArgs

    Count double
    The total number of disks required for the concerned volume.
    SizeGB double
    The disk size in GB.
    Sku Pulumi.AzureNative.Workloads.Inputs.DiskSku
    The disk SKU details.
    Count float64
    The total number of disks required for the concerned volume.
    SizeGB float64
    The disk size in GB.
    Sku DiskSku
    The disk SKU details.
    count Double
    The total number of disks required for the concerned volume.
    sizeGB Double
    The disk size in GB.
    sku DiskSku
    The disk SKU details.
    count number
    The total number of disks required for the concerned volume.
    sizeGB number
    The disk size in GB.
    sku DiskSku
    The disk SKU details.
    count float
    The total number of disks required for the concerned volume.
    size_gb float
    The disk size in GB.
    sku DiskSku
    The disk SKU details.
    count Number
    The total number of disks required for the concerned volume.
    sizeGB Number
    The disk size in GB.
    sku Property Map
    The disk SKU details.

    DiskVolumeConfigurationResponse, DiskVolumeConfigurationResponseArgs

    Count double
    The total number of disks required for the concerned volume.
    SizeGB double
    The disk size in GB.
    Sku Pulumi.AzureNative.Workloads.Inputs.DiskSkuResponse
    The disk SKU details.
    Count float64
    The total number of disks required for the concerned volume.
    SizeGB float64
    The disk size in GB.
    Sku DiskSkuResponse
    The disk SKU details.
    count Double
    The total number of disks required for the concerned volume.
    sizeGB Double
    The disk size in GB.
    sku DiskSkuResponse
    The disk SKU details.
    count number
    The total number of disks required for the concerned volume.
    sizeGB number
    The disk size in GB.
    sku DiskSkuResponse
    The disk SKU details.
    count float
    The total number of disks required for the concerned volume.
    size_gb float
    The disk size in GB.
    sku DiskSkuResponse
    The disk SKU details.
    count Number
    The total number of disks required for the concerned volume.
    sizeGB Number
    The disk size in GB.
    sku Property Map
    The disk SKU details.

    ErrorDefinitionResponse, ErrorDefinitionResponseArgs

    Code string
    Service specific error code which serves as the substatus for the HTTP error code.
    Details List<Pulumi.AzureNative.Workloads.Inputs.ErrorDefinitionResponse>
    Internal error details.
    Message string
    Description of the error.
    Recommendation string
    Description of the recommendation.
    Code string
    Service specific error code which serves as the substatus for the HTTP error code.
    Details []ErrorDefinitionResponse
    Internal error details.
    Message string
    Description of the error.
    Recommendation string
    Description of the recommendation.
    code String
    Service specific error code which serves as the substatus for the HTTP error code.
    details List<ErrorDefinitionResponse>
    Internal error details.
    message String
    Description of the error.
    recommendation String
    Description of the recommendation.
    code string
    Service specific error code which serves as the substatus for the HTTP error code.
    details ErrorDefinitionResponse[]
    Internal error details.
    message string
    Description of the error.
    recommendation string
    Description of the recommendation.
    code str
    Service specific error code which serves as the substatus for the HTTP error code.
    details Sequence[ErrorDefinitionResponse]
    Internal error details.
    message str
    Description of the error.
    recommendation str
    Description of the recommendation.
    code String
    Service specific error code which serves as the substatus for the HTTP error code.
    details List<Property Map>
    Internal error details.
    message String
    Description of the error.
    recommendation String
    Description of the recommendation.

    ExternalInstallationSoftwareConfiguration, ExternalInstallationSoftwareConfigurationArgs

    CentralServerVmId string
    The resource ID of the virtual machine containing the central server instance.
    CentralServerVmId string
    The resource ID of the virtual machine containing the central server instance.
    centralServerVmId String
    The resource ID of the virtual machine containing the central server instance.
    centralServerVmId string
    The resource ID of the virtual machine containing the central server instance.
    central_server_vm_id str
    The resource ID of the virtual machine containing the central server instance.
    centralServerVmId String
    The resource ID of the virtual machine containing the central server instance.

    ExternalInstallationSoftwareConfigurationResponse, ExternalInstallationSoftwareConfigurationResponseArgs

    CentralServerVmId string
    The resource ID of the virtual machine containing the central server instance.
    CentralServerVmId string
    The resource ID of the virtual machine containing the central server instance.
    centralServerVmId String
    The resource ID of the virtual machine containing the central server instance.
    centralServerVmId string
    The resource ID of the virtual machine containing the central server instance.
    central_server_vm_id str
    The resource ID of the virtual machine containing the central server instance.
    centralServerVmId String
    The resource ID of the virtual machine containing the central server instance.

    HighAvailabilityConfiguration, HighAvailabilityConfigurationArgs

    HighAvailabilityType string | SAPHighAvailabilityType
    The high availability type.
    highAvailabilityType String | SAPHighAvailabilityType
    The high availability type.
    highAvailabilityType string | SAPHighAvailabilityType
    The high availability type.
    high_availability_type str | SAPHighAvailabilityType
    The high availability type.

    HighAvailabilityConfigurationResponse, HighAvailabilityConfigurationResponseArgs

    HighAvailabilityType string
    The high availability type.
    HighAvailabilityType string
    The high availability type.
    highAvailabilityType String
    The high availability type.
    highAvailabilityType string
    The high availability type.
    high_availability_type str
    The high availability type.
    highAvailabilityType String
    The high availability type.

    HighAvailabilitySoftwareConfiguration, HighAvailabilitySoftwareConfigurationArgs

    FencingClientId string
    The fencing client id.
    FencingClientPassword string
    The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
    FencingClientId string
    The fencing client id.
    FencingClientPassword string
    The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
    fencingClientId String
    The fencing client id.
    fencingClientPassword String
    The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
    fencingClientId string
    The fencing client id.
    fencingClientPassword string
    The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
    fencing_client_id str
    The fencing client id.
    fencing_client_password str
    The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
    fencingClientId String
    The fencing client id.
    fencingClientPassword String
    The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.

    HighAvailabilitySoftwareConfigurationResponse, HighAvailabilitySoftwareConfigurationResponseArgs

    FencingClientId string
    The fencing client id.
    FencingClientPassword string
    The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
    FencingClientId string
    The fencing client id.
    FencingClientPassword string
    The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
    fencingClientId String
    The fencing client id.
    fencingClientPassword String
    The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
    fencingClientId string
    The fencing client id.
    fencingClientPassword string
    The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
    fencing_client_id str
    The fencing client id.
    fencing_client_password str
    The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
    fencingClientId String
    The fencing client id.
    fencingClientPassword String
    The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.

    ImageReference, ImageReferenceArgs

    Offer string
    Specifies the offer of the platform image or marketplace image used to create the virtual machine.
    Publisher string
    The image publisher.
    Sku string
    The image SKU.
    Version string
    Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available.
    Offer string
    Specifies the offer of the platform image or marketplace image used to create the virtual machine.
    Publisher string
    The image publisher.
    Sku string
    The image SKU.
    Version string
    Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available.
    offer String
    Specifies the offer of the platform image or marketplace image used to create the virtual machine.
    publisher String
    The image publisher.
    sku String
    The image SKU.
    version String
    Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available.
    offer string
    Specifies the offer of the platform image or marketplace image used to create the virtual machine.
    publisher string
    The image publisher.
    sku string
    The image SKU.
    version string
    Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available.
    offer str
    Specifies the offer of the platform image or marketplace image used to create the virtual machine.
    publisher str
    The image publisher.
    sku str
    The image SKU.
    version str
    Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available.
    offer String
    Specifies the offer of the platform image or marketplace image used to create the virtual machine.
    publisher String
    The image publisher.
    sku String
    The image SKU.
    version String
    Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available.

    ImageReferenceResponse, ImageReferenceResponseArgs

    Offer string
    Specifies the offer of the platform image or marketplace image used to create the virtual machine.
    Publisher string
    The image publisher.
    Sku string
    The image SKU.
    Version string
    Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available.
    Offer string
    Specifies the offer of the platform image or marketplace image used to create the virtual machine.
    Publisher string
    The image publisher.
    Sku string
    The image SKU.
    Version string
    Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available.
    offer String
    Specifies the offer of the platform image or marketplace image used to create the virtual machine.
    publisher String
    The image publisher.
    sku String
    The image SKU.
    version String
    Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available.
    offer string
    Specifies the offer of the platform image or marketplace image used to create the virtual machine.
    publisher string
    The image publisher.
    sku string
    The image SKU.
    version string
    Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available.
    offer str
    Specifies the offer of the platform image or marketplace image used to create the virtual machine.
    publisher str
    The image publisher.
    sku str
    The image SKU.
    version str
    Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available.
    offer String
    Specifies the offer of the platform image or marketplace image used to create the virtual machine.
    publisher String
    The image publisher.
    sku String
    The image SKU.
    version String
    Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available.

    LinuxConfiguration, LinuxConfigurationArgs

    DisablePasswordAuthentication bool
    Specifies whether password authentication should be disabled.
    Ssh Pulumi.AzureNative.Workloads.Inputs.SshConfiguration
    Specifies the ssh key configuration for a Linux OS. (This property is deprecated, please use 'sshKeyPair' instead)
    SshKeyPair Pulumi.AzureNative.Workloads.Inputs.SshKeyPair
    The SSH Key-pair used to authenticate with the VM's.
    DisablePasswordAuthentication bool
    Specifies whether password authentication should be disabled.
    Ssh SshConfiguration
    Specifies the ssh key configuration for a Linux OS. (This property is deprecated, please use 'sshKeyPair' instead)
    SshKeyPair SshKeyPair
    The SSH Key-pair used to authenticate with the VM's.
    disablePasswordAuthentication Boolean
    Specifies whether password authentication should be disabled.
    ssh SshConfiguration
    Specifies the ssh key configuration for a Linux OS. (This property is deprecated, please use 'sshKeyPair' instead)
    sshKeyPair SshKeyPair
    The SSH Key-pair used to authenticate with the VM's.
    disablePasswordAuthentication boolean
    Specifies whether password authentication should be disabled.
    ssh SshConfiguration
    Specifies the ssh key configuration for a Linux OS. (This property is deprecated, please use 'sshKeyPair' instead)
    sshKeyPair SshKeyPair
    The SSH Key-pair used to authenticate with the VM's.
    disable_password_authentication bool
    Specifies whether password authentication should be disabled.
    ssh SshConfiguration
    Specifies the ssh key configuration for a Linux OS. (This property is deprecated, please use 'sshKeyPair' instead)
    ssh_key_pair SshKeyPair
    The SSH Key-pair used to authenticate with the VM's.
    disablePasswordAuthentication Boolean
    Specifies whether password authentication should be disabled.
    ssh Property Map
    Specifies the ssh key configuration for a Linux OS. (This property is deprecated, please use 'sshKeyPair' instead)
    sshKeyPair Property Map
    The SSH Key-pair used to authenticate with the VM's.

    LinuxConfigurationResponse, LinuxConfigurationResponseArgs

    DisablePasswordAuthentication bool
    Specifies whether password authentication should be disabled.
    Ssh Pulumi.AzureNative.Workloads.Inputs.SshConfigurationResponse
    Specifies the ssh key configuration for a Linux OS. (This property is deprecated, please use 'sshKeyPair' instead)
    SshKeyPair Pulumi.AzureNative.Workloads.Inputs.SshKeyPairResponse
    The SSH Key-pair used to authenticate with the VM's.
    DisablePasswordAuthentication bool
    Specifies whether password authentication should be disabled.
    Ssh SshConfigurationResponse
    Specifies the ssh key configuration for a Linux OS. (This property is deprecated, please use 'sshKeyPair' instead)
    SshKeyPair SshKeyPairResponse
    The SSH Key-pair used to authenticate with the VM's.
    disablePasswordAuthentication Boolean
    Specifies whether password authentication should be disabled.
    ssh SshConfigurationResponse
    Specifies the ssh key configuration for a Linux OS. (This property is deprecated, please use 'sshKeyPair' instead)
    sshKeyPair SshKeyPairResponse
    The SSH Key-pair used to authenticate with the VM's.
    disablePasswordAuthentication boolean
    Specifies whether password authentication should be disabled.
    ssh SshConfigurationResponse
    Specifies the ssh key configuration for a Linux OS. (This property is deprecated, please use 'sshKeyPair' instead)
    sshKeyPair SshKeyPairResponse
    The SSH Key-pair used to authenticate with the VM's.
    disable_password_authentication bool
    Specifies whether password authentication should be disabled.
    ssh SshConfigurationResponse
    Specifies the ssh key configuration for a Linux OS. (This property is deprecated, please use 'sshKeyPair' instead)
    ssh_key_pair SshKeyPairResponse
    The SSH Key-pair used to authenticate with the VM's.
    disablePasswordAuthentication Boolean
    Specifies whether password authentication should be disabled.
    ssh Property Map
    Specifies the ssh key configuration for a Linux OS. (This property is deprecated, please use 'sshKeyPair' instead)
    sshKeyPair Property Map
    The SSH Key-pair used to authenticate with the VM's.

    LoadBalancerResourceNames, LoadBalancerResourceNamesArgs

    BackendPoolNames List<string>
    The list of backend pool names. Currently, ACSS deploys only one backend pool and hence, size of this list should be 1
    FrontendIpConfigurationNames List<string>
    The list of frontend IP configuration names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    HealthProbeNames List<string>
    The list of health probe names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    LoadBalancerName string
    The full resource name for load balancer. If this value is not provided, load balancer will be name as {ASCS/DB}-loadBalancer.
    BackendPoolNames []string
    The list of backend pool names. Currently, ACSS deploys only one backend pool and hence, size of this list should be 1
    FrontendIpConfigurationNames []string
    The list of frontend IP configuration names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    HealthProbeNames []string
    The list of health probe names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    LoadBalancerName string
    The full resource name for load balancer. If this value is not provided, load balancer will be name as {ASCS/DB}-loadBalancer.
    backendPoolNames List<String>
    The list of backend pool names. Currently, ACSS deploys only one backend pool and hence, size of this list should be 1
    frontendIpConfigurationNames List<String>
    The list of frontend IP configuration names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    healthProbeNames List<String>
    The list of health probe names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    loadBalancerName String
    The full resource name for load balancer. If this value is not provided, load balancer will be name as {ASCS/DB}-loadBalancer.
    backendPoolNames string[]
    The list of backend pool names. Currently, ACSS deploys only one backend pool and hence, size of this list should be 1
    frontendIpConfigurationNames string[]
    The list of frontend IP configuration names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    healthProbeNames string[]
    The list of health probe names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    loadBalancerName string
    The full resource name for load balancer. If this value is not provided, load balancer will be name as {ASCS/DB}-loadBalancer.
    backend_pool_names Sequence[str]
    The list of backend pool names. Currently, ACSS deploys only one backend pool and hence, size of this list should be 1
    frontend_ip_configuration_names Sequence[str]
    The list of frontend IP configuration names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    health_probe_names Sequence[str]
    The list of health probe names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    load_balancer_name str
    The full resource name for load balancer. If this value is not provided, load balancer will be name as {ASCS/DB}-loadBalancer.
    backendPoolNames List<String>
    The list of backend pool names. Currently, ACSS deploys only one backend pool and hence, size of this list should be 1
    frontendIpConfigurationNames List<String>
    The list of frontend IP configuration names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    healthProbeNames List<String>
    The list of health probe names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    loadBalancerName String
    The full resource name for load balancer. If this value is not provided, load balancer will be name as {ASCS/DB}-loadBalancer.

    LoadBalancerResourceNamesResponse, LoadBalancerResourceNamesResponseArgs

    BackendPoolNames List<string>
    The list of backend pool names. Currently, ACSS deploys only one backend pool and hence, size of this list should be 1
    FrontendIpConfigurationNames List<string>
    The list of frontend IP configuration names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    HealthProbeNames List<string>
    The list of health probe names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    LoadBalancerName string
    The full resource name for load balancer. If this value is not provided, load balancer will be name as {ASCS/DB}-loadBalancer.
    BackendPoolNames []string
    The list of backend pool names. Currently, ACSS deploys only one backend pool and hence, size of this list should be 1
    FrontendIpConfigurationNames []string
    The list of frontend IP configuration names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    HealthProbeNames []string
    The list of health probe names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    LoadBalancerName string
    The full resource name for load balancer. If this value is not provided, load balancer will be name as {ASCS/DB}-loadBalancer.
    backendPoolNames List<String>
    The list of backend pool names. Currently, ACSS deploys only one backend pool and hence, size of this list should be 1
    frontendIpConfigurationNames List<String>
    The list of frontend IP configuration names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    healthProbeNames List<String>
    The list of health probe names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    loadBalancerName String
    The full resource name for load balancer. If this value is not provided, load balancer will be name as {ASCS/DB}-loadBalancer.
    backendPoolNames string[]
    The list of backend pool names. Currently, ACSS deploys only one backend pool and hence, size of this list should be 1
    frontendIpConfigurationNames string[]
    The list of frontend IP configuration names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    healthProbeNames string[]
    The list of health probe names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    loadBalancerName string
    The full resource name for load balancer. If this value is not provided, load balancer will be name as {ASCS/DB}-loadBalancer.
    backend_pool_names Sequence[str]
    The list of backend pool names. Currently, ACSS deploys only one backend pool and hence, size of this list should be 1
    frontend_ip_configuration_names Sequence[str]
    The list of frontend IP configuration names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    health_probe_names Sequence[str]
    The list of health probe names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    load_balancer_name str
    The full resource name for load balancer. If this value is not provided, load balancer will be name as {ASCS/DB}-loadBalancer.
    backendPoolNames List<String>
    The list of backend pool names. Currently, ACSS deploys only one backend pool and hence, size of this list should be 1
    frontendIpConfigurationNames List<String>
    The list of frontend IP configuration names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    healthProbeNames List<String>
    The list of health probe names. If provided as input, size of this list should be 2 for cs layer and should be 1 for database layer.
    loadBalancerName String
    The full resource name for load balancer. If this value is not provided, load balancer will be name as {ASCS/DB}-loadBalancer.

    ManagedRGConfiguration, ManagedRGConfigurationArgs

    Name string
    Managed resource group name
    Name string
    Managed resource group name
    name String
    Managed resource group name
    name string
    Managed resource group name
    name str
    Managed resource group name
    name String
    Managed resource group name

    ManagedRGConfigurationResponse, ManagedRGConfigurationResponseArgs

    Name string
    Managed resource group name
    Name string
    Managed resource group name
    name String
    Managed resource group name
    name string
    Managed resource group name
    name str
    Managed resource group name
    name String
    Managed resource group name

    ManagedServiceIdentityType, ManagedServiceIdentityTypeArgs

    None
    None
    UserAssigned
    UserAssigned
    ManagedServiceIdentityTypeNone
    None
    ManagedServiceIdentityTypeUserAssigned
    UserAssigned
    None
    None
    UserAssigned
    UserAssigned
    None
    None
    UserAssigned
    UserAssigned
    NONE
    None
    USER_ASSIGNED
    UserAssigned
    "None"
    None
    "UserAssigned"
    UserAssigned

    MountFileShareConfiguration, MountFileShareConfigurationArgs

    Id string
    The fileshare resource ID
    PrivateEndpointId string
    The private endpoint resource ID
    Id string
    The fileshare resource ID
    PrivateEndpointId string
    The private endpoint resource ID
    id String
    The fileshare resource ID
    privateEndpointId String
    The private endpoint resource ID
    id string
    The fileshare resource ID
    privateEndpointId string
    The private endpoint resource ID
    id str
    The fileshare resource ID
    private_endpoint_id str
    The private endpoint resource ID
    id String
    The fileshare resource ID
    privateEndpointId String
    The private endpoint resource ID

    MountFileShareConfigurationResponse, MountFileShareConfigurationResponseArgs

    Id string
    The fileshare resource ID
    PrivateEndpointId string
    The private endpoint resource ID
    Id string
    The fileshare resource ID
    PrivateEndpointId string
    The private endpoint resource ID
    id String
    The fileshare resource ID
    privateEndpointId String
    The private endpoint resource ID
    id string
    The fileshare resource ID
    privateEndpointId string
    The private endpoint resource ID
    id str
    The fileshare resource ID
    private_endpoint_id str
    The private endpoint resource ID
    id String
    The fileshare resource ID
    privateEndpointId String
    The private endpoint resource ID

    NetworkConfiguration, NetworkConfigurationArgs

    IsSecondaryIpEnabled bool
    Specifies whether a secondary IP address should be added to the network interface on all VMs of the SAP system being deployed
    IsSecondaryIpEnabled bool
    Specifies whether a secondary IP address should be added to the network interface on all VMs of the SAP system being deployed
    isSecondaryIpEnabled Boolean
    Specifies whether a secondary IP address should be added to the network interface on all VMs of the SAP system being deployed
    isSecondaryIpEnabled boolean
    Specifies whether a secondary IP address should be added to the network interface on all VMs of the SAP system being deployed
    is_secondary_ip_enabled bool
    Specifies whether a secondary IP address should be added to the network interface on all VMs of the SAP system being deployed
    isSecondaryIpEnabled Boolean
    Specifies whether a secondary IP address should be added to the network interface on all VMs of the SAP system being deployed

    NetworkConfigurationResponse, NetworkConfigurationResponseArgs

    IsSecondaryIpEnabled bool
    Specifies whether a secondary IP address should be added to the network interface on all VMs of the SAP system being deployed
    IsSecondaryIpEnabled bool
    Specifies whether a secondary IP address should be added to the network interface on all VMs of the SAP system being deployed
    isSecondaryIpEnabled Boolean
    Specifies whether a secondary IP address should be added to the network interface on all VMs of the SAP system being deployed
    isSecondaryIpEnabled boolean
    Specifies whether a secondary IP address should be added to the network interface on all VMs of the SAP system being deployed
    is_secondary_ip_enabled bool
    Specifies whether a secondary IP address should be added to the network interface on all VMs of the SAP system being deployed
    isSecondaryIpEnabled Boolean
    Specifies whether a secondary IP address should be added to the network interface on all VMs of the SAP system being deployed

    NetworkInterfaceResourceNames, NetworkInterfaceResourceNamesArgs

    NetworkInterfaceName string
    The full name for network interface. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}-Nic. In case of HA-AvZone systems, default name will be {SID}-{App/ASCS/DB}-Zone{A/B}-Nic with an incrementor at the end in case of more than 1 instance per layer. For distributed and HA-AvSet systems, default name will be {SID}-{App/ASCS/DB}-Nic with an incrementor at the end in case of more than 1 instance per layer.
    NetworkInterfaceName string
    The full name for network interface. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}-Nic. In case of HA-AvZone systems, default name will be {SID}-{App/ASCS/DB}-Zone{A/B}-Nic with an incrementor at the end in case of more than 1 instance per layer. For distributed and HA-AvSet systems, default name will be {SID}-{App/ASCS/DB}-Nic with an incrementor at the end in case of more than 1 instance per layer.
    networkInterfaceName String
    The full name for network interface. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}-Nic. In case of HA-AvZone systems, default name will be {SID}-{App/ASCS/DB}-Zone{A/B}-Nic with an incrementor at the end in case of more than 1 instance per layer. For distributed and HA-AvSet systems, default name will be {SID}-{App/ASCS/DB}-Nic with an incrementor at the end in case of more than 1 instance per layer.
    networkInterfaceName string
    The full name for network interface. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}-Nic. In case of HA-AvZone systems, default name will be {SID}-{App/ASCS/DB}-Zone{A/B}-Nic with an incrementor at the end in case of more than 1 instance per layer. For distributed and HA-AvSet systems, default name will be {SID}-{App/ASCS/DB}-Nic with an incrementor at the end in case of more than 1 instance per layer.
    network_interface_name str
    The full name for network interface. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}-Nic. In case of HA-AvZone systems, default name will be {SID}-{App/ASCS/DB}-Zone{A/B}-Nic with an incrementor at the end in case of more than 1 instance per layer. For distributed and HA-AvSet systems, default name will be {SID}-{App/ASCS/DB}-Nic with an incrementor at the end in case of more than 1 instance per layer.
    networkInterfaceName String
    The full name for network interface. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}-Nic. In case of HA-AvZone systems, default name will be {SID}-{App/ASCS/DB}-Zone{A/B}-Nic with an incrementor at the end in case of more than 1 instance per layer. For distributed and HA-AvSet systems, default name will be {SID}-{App/ASCS/DB}-Nic with an incrementor at the end in case of more than 1 instance per layer.

    NetworkInterfaceResourceNamesResponse, NetworkInterfaceResourceNamesResponseArgs

    NetworkInterfaceName string
    The full name for network interface. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}-Nic. In case of HA-AvZone systems, default name will be {SID}-{App/ASCS/DB}-Zone{A/B}-Nic with an incrementor at the end in case of more than 1 instance per layer. For distributed and HA-AvSet systems, default name will be {SID}-{App/ASCS/DB}-Nic with an incrementor at the end in case of more than 1 instance per layer.
    NetworkInterfaceName string
    The full name for network interface. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}-Nic. In case of HA-AvZone systems, default name will be {SID}-{App/ASCS/DB}-Zone{A/B}-Nic with an incrementor at the end in case of more than 1 instance per layer. For distributed and HA-AvSet systems, default name will be {SID}-{App/ASCS/DB}-Nic with an incrementor at the end in case of more than 1 instance per layer.
    networkInterfaceName String
    The full name for network interface. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}-Nic. In case of HA-AvZone systems, default name will be {SID}-{App/ASCS/DB}-Zone{A/B}-Nic with an incrementor at the end in case of more than 1 instance per layer. For distributed and HA-AvSet systems, default name will be {SID}-{App/ASCS/DB}-Nic with an incrementor at the end in case of more than 1 instance per layer.
    networkInterfaceName string
    The full name for network interface. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}-Nic. In case of HA-AvZone systems, default name will be {SID}-{App/ASCS/DB}-Zone{A/B}-Nic with an incrementor at the end in case of more than 1 instance per layer. For distributed and HA-AvSet systems, default name will be {SID}-{App/ASCS/DB}-Nic with an incrementor at the end in case of more than 1 instance per layer.
    network_interface_name str
    The full name for network interface. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}-Nic. In case of HA-AvZone systems, default name will be {SID}-{App/ASCS/DB}-Zone{A/B}-Nic with an incrementor at the end in case of more than 1 instance per layer. For distributed and HA-AvSet systems, default name will be {SID}-{App/ASCS/DB}-Nic with an incrementor at the end in case of more than 1 instance per layer.
    networkInterfaceName String
    The full name for network interface. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}-Nic. In case of HA-AvZone systems, default name will be {SID}-{App/ASCS/DB}-Zone{A/B}-Nic with an incrementor at the end in case of more than 1 instance per layer. For distributed and HA-AvSet systems, default name will be {SID}-{App/ASCS/DB}-Nic with an incrementor at the end in case of more than 1 instance per layer.

    OSProfile, OSProfileArgs

    AdminPassword string
    Specifies the password of the administrator account. Minimum-length (Windows): 8 characters Minimum-length (Linux): 6 characters Max-length (Windows): 123 characters Max-length (Linux): 72 characters Complexity requirements: 3 out of 4 conditions below need to be fulfilled Has lower characters Has upper characters Has a digit Has a special character (Regex match [\W_]) **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" For resetting the password, see How to reset the Remote Desktop service or its login password in a Windows VM For resetting root password, see Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension
    AdminUsername string
    Specifies the name of the administrator account. This property cannot be updated after the VM is created. Windows-only restriction: Cannot end in "." Disallowed values: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". Minimum-length (Linux): 1 character Max-length (Linux): 64 characters Max-length (Windows): 20 characters.
    OsConfiguration Pulumi.AzureNative.Workloads.Inputs.LinuxConfiguration | Pulumi.AzureNative.Workloads.Inputs.WindowsConfiguration
    Specifies Windows operating system settings on the virtual machine.
    AdminPassword string
    Specifies the password of the administrator account. Minimum-length (Windows): 8 characters Minimum-length (Linux): 6 characters Max-length (Windows): 123 characters Max-length (Linux): 72 characters Complexity requirements: 3 out of 4 conditions below need to be fulfilled Has lower characters Has upper characters Has a digit Has a special character (Regex match [\W_]) **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" For resetting the password, see How to reset the Remote Desktop service or its login password in a Windows VM For resetting root password, see Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension
    AdminUsername string
    Specifies the name of the administrator account. This property cannot be updated after the VM is created. Windows-only restriction: Cannot end in "." Disallowed values: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". Minimum-length (Linux): 1 character Max-length (Linux): 64 characters Max-length (Windows): 20 characters.
    OsConfiguration LinuxConfiguration | WindowsConfiguration
    Specifies Windows operating system settings on the virtual machine.
    adminPassword String
    Specifies the password of the administrator account. Minimum-length (Windows): 8 characters Minimum-length (Linux): 6 characters Max-length (Windows): 123 characters Max-length (Linux): 72 characters Complexity requirements: 3 out of 4 conditions below need to be fulfilled Has lower characters Has upper characters Has a digit Has a special character (Regex match [\W_]) **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" For resetting the password, see How to reset the Remote Desktop service or its login password in a Windows VM For resetting root password, see Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension
    adminUsername String
    Specifies the name of the administrator account. This property cannot be updated after the VM is created. Windows-only restriction: Cannot end in "." Disallowed values: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". Minimum-length (Linux): 1 character Max-length (Linux): 64 characters Max-length (Windows): 20 characters.
    osConfiguration LinuxConfiguration | WindowsConfiguration
    Specifies Windows operating system settings on the virtual machine.
    adminPassword string
    Specifies the password of the administrator account. Minimum-length (Windows): 8 characters Minimum-length (Linux): 6 characters Max-length (Windows): 123 characters Max-length (Linux): 72 characters Complexity requirements: 3 out of 4 conditions below need to be fulfilled Has lower characters Has upper characters Has a digit Has a special character (Regex match [\W_]) **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" For resetting the password, see How to reset the Remote Desktop service or its login password in a Windows VM For resetting root password, see Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension
    adminUsername string
    Specifies the name of the administrator account. This property cannot be updated after the VM is created. Windows-only restriction: Cannot end in "." Disallowed values: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". Minimum-length (Linux): 1 character Max-length (Linux): 64 characters Max-length (Windows): 20 characters.
    osConfiguration LinuxConfiguration | WindowsConfiguration
    Specifies Windows operating system settings on the virtual machine.
    admin_password str
    Specifies the password of the administrator account. Minimum-length (Windows): 8 characters Minimum-length (Linux): 6 characters Max-length (Windows): 123 characters Max-length (Linux): 72 characters Complexity requirements: 3 out of 4 conditions below need to be fulfilled Has lower characters Has upper characters Has a digit Has a special character (Regex match [\W_]) **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" For resetting the password, see How to reset the Remote Desktop service or its login password in a Windows VM For resetting root password, see Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension
    admin_username str
    Specifies the name of the administrator account. This property cannot be updated after the VM is created. Windows-only restriction: Cannot end in "." Disallowed values: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". Minimum-length (Linux): 1 character Max-length (Linux): 64 characters Max-length (Windows): 20 characters.
    os_configuration LinuxConfiguration | WindowsConfiguration
    Specifies Windows operating system settings on the virtual machine.
    adminPassword String
    Specifies the password of the administrator account. Minimum-length (Windows): 8 characters Minimum-length (Linux): 6 characters Max-length (Windows): 123 characters Max-length (Linux): 72 characters Complexity requirements: 3 out of 4 conditions below need to be fulfilled Has lower characters Has upper characters Has a digit Has a special character (Regex match [\W_]) **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" For resetting the password, see How to reset the Remote Desktop service or its login password in a Windows VM For resetting root password, see Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension
    adminUsername String
    Specifies the name of the administrator account. This property cannot be updated after the VM is created. Windows-only restriction: Cannot end in "." Disallowed values: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". Minimum-length (Linux): 1 character Max-length (Linux): 64 characters Max-length (Windows): 20 characters.
    osConfiguration Property Map | Property Map
    Specifies Windows operating system settings on the virtual machine.

    OSProfileResponse, OSProfileResponseArgs

    AdminPassword string
    Specifies the password of the administrator account. Minimum-length (Windows): 8 characters Minimum-length (Linux): 6 characters Max-length (Windows): 123 characters Max-length (Linux): 72 characters Complexity requirements: 3 out of 4 conditions below need to be fulfilled Has lower characters Has upper characters Has a digit Has a special character (Regex match [\W_]) **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" For resetting the password, see How to reset the Remote Desktop service or its login password in a Windows VM For resetting root password, see Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension
    AdminUsername string
    Specifies the name of the administrator account. This property cannot be updated after the VM is created. Windows-only restriction: Cannot end in "." Disallowed values: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". Minimum-length (Linux): 1 character Max-length (Linux): 64 characters Max-length (Windows): 20 characters.
    OsConfiguration Pulumi.AzureNative.Workloads.Inputs.LinuxConfigurationResponse | Pulumi.AzureNative.Workloads.Inputs.WindowsConfigurationResponse
    Specifies Windows operating system settings on the virtual machine.
    AdminPassword string
    Specifies the password of the administrator account. Minimum-length (Windows): 8 characters Minimum-length (Linux): 6 characters Max-length (Windows): 123 characters Max-length (Linux): 72 characters Complexity requirements: 3 out of 4 conditions below need to be fulfilled Has lower characters Has upper characters Has a digit Has a special character (Regex match [\W_]) **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" For resetting the password, see How to reset the Remote Desktop service or its login password in a Windows VM For resetting root password, see Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension
    AdminUsername string
    Specifies the name of the administrator account. This property cannot be updated after the VM is created. Windows-only restriction: Cannot end in "." Disallowed values: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". Minimum-length (Linux): 1 character Max-length (Linux): 64 characters Max-length (Windows): 20 characters.
    OsConfiguration LinuxConfigurationResponse | WindowsConfigurationResponse
    Specifies Windows operating system settings on the virtual machine.
    adminPassword String
    Specifies the password of the administrator account. Minimum-length (Windows): 8 characters Minimum-length (Linux): 6 characters Max-length (Windows): 123 characters Max-length (Linux): 72 characters Complexity requirements: 3 out of 4 conditions below need to be fulfilled Has lower characters Has upper characters Has a digit Has a special character (Regex match [\W_]) **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" For resetting the password, see How to reset the Remote Desktop service or its login password in a Windows VM For resetting root password, see Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension
    adminUsername String
    Specifies the name of the administrator account. This property cannot be updated after the VM is created. Windows-only restriction: Cannot end in "." Disallowed values: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". Minimum-length (Linux): 1 character Max-length (Linux): 64 characters Max-length (Windows): 20 characters.
    osConfiguration LinuxConfigurationResponse | WindowsConfigurationResponse
    Specifies Windows operating system settings on the virtual machine.
    adminPassword string
    Specifies the password of the administrator account. Minimum-length (Windows): 8 characters Minimum-length (Linux): 6 characters Max-length (Windows): 123 characters Max-length (Linux): 72 characters Complexity requirements: 3 out of 4 conditions below need to be fulfilled Has lower characters Has upper characters Has a digit Has a special character (Regex match [\W_]) **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" For resetting the password, see How to reset the Remote Desktop service or its login password in a Windows VM For resetting root password, see Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension
    adminUsername string
    Specifies the name of the administrator account. This property cannot be updated after the VM is created. Windows-only restriction: Cannot end in "." Disallowed values: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". Minimum-length (Linux): 1 character Max-length (Linux): 64 characters Max-length (Windows): 20 characters.
    osConfiguration LinuxConfigurationResponse | WindowsConfigurationResponse
    Specifies Windows operating system settings on the virtual machine.
    admin_password str
    Specifies the password of the administrator account. Minimum-length (Windows): 8 characters Minimum-length (Linux): 6 characters Max-length (Windows): 123 characters Max-length (Linux): 72 characters Complexity requirements: 3 out of 4 conditions below need to be fulfilled Has lower characters Has upper characters Has a digit Has a special character (Regex match [\W_]) **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" For resetting the password, see How to reset the Remote Desktop service or its login password in a Windows VM For resetting root password, see Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension
    admin_username str
    Specifies the name of the administrator account. This property cannot be updated after the VM is created. Windows-only restriction: Cannot end in "." Disallowed values: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". Minimum-length (Linux): 1 character Max-length (Linux): 64 characters Max-length (Windows): 20 characters.
    os_configuration LinuxConfigurationResponse | WindowsConfigurationResponse
    Specifies Windows operating system settings on the virtual machine.
    adminPassword String
    Specifies the password of the administrator account. Minimum-length (Windows): 8 characters Minimum-length (Linux): 6 characters Max-length (Windows): 123 characters Max-length (Linux): 72 characters Complexity requirements: 3 out of 4 conditions below need to be fulfilled Has lower characters Has upper characters Has a digit Has a special character (Regex match [\W_]) **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" For resetting the password, see How to reset the Remote Desktop service or its login password in a Windows VM For resetting root password, see Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension
    adminUsername String
    Specifies the name of the administrator account. This property cannot be updated after the VM is created. Windows-only restriction: Cannot end in "." Disallowed values: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". Minimum-length (Linux): 1 character Max-length (Linux): 64 characters Max-length (Windows): 20 characters.
    osConfiguration Property Map | Property Map
    Specifies Windows operating system settings on the virtual machine.

    OsSapConfiguration, OsSapConfigurationArgs

    DeployerVmPackages Pulumi.AzureNative.Workloads.Inputs.DeployerVmPackages
    The url and storage account ID where deployer VM packages are uploaded
    SapFqdn string
    The FQDN to set for the SAP system
    DeployerVmPackages DeployerVmPackages
    The url and storage account ID where deployer VM packages are uploaded
    SapFqdn string
    The FQDN to set for the SAP system
    deployerVmPackages DeployerVmPackages
    The url and storage account ID where deployer VM packages are uploaded
    sapFqdn String
    The FQDN to set for the SAP system
    deployerVmPackages DeployerVmPackages
    The url and storage account ID where deployer VM packages are uploaded
    sapFqdn string
    The FQDN to set for the SAP system
    deployer_vm_packages DeployerVmPackages
    The url and storage account ID where deployer VM packages are uploaded
    sap_fqdn str
    The FQDN to set for the SAP system
    deployerVmPackages Property Map
    The url and storage account ID where deployer VM packages are uploaded
    sapFqdn String
    The FQDN to set for the SAP system

    OsSapConfigurationResponse, OsSapConfigurationResponseArgs

    DeployerVmPackages Pulumi.AzureNative.Workloads.Inputs.DeployerVmPackagesResponse
    The url and storage account ID where deployer VM packages are uploaded
    SapFqdn string
    The FQDN to set for the SAP system
    DeployerVmPackages DeployerVmPackagesResponse
    The url and storage account ID where deployer VM packages are uploaded
    SapFqdn string
    The FQDN to set for the SAP system
    deployerVmPackages DeployerVmPackagesResponse
    The url and storage account ID where deployer VM packages are uploaded
    sapFqdn String
    The FQDN to set for the SAP system
    deployerVmPackages DeployerVmPackagesResponse
    The url and storage account ID where deployer VM packages are uploaded
    sapFqdn string
    The FQDN to set for the SAP system
    deployer_vm_packages DeployerVmPackagesResponse
    The url and storage account ID where deployer VM packages are uploaded
    sap_fqdn str
    The FQDN to set for the SAP system
    deployerVmPackages Property Map
    The url and storage account ID where deployer VM packages are uploaded
    sapFqdn String
    The FQDN to set for the SAP system

    SAPDatabaseType, SAPDatabaseTypeArgs

    HANA
    HANAHANA Database type of SAP system.
    DB2
    DB2DB2 database type of the SAP system.
    SAPDatabaseTypeHANA
    HANAHANA Database type of SAP system.
    SAPDatabaseTypeDB2
    DB2DB2 database type of the SAP system.
    HANA
    HANAHANA Database type of SAP system.
    DB2
    DB2DB2 database type of the SAP system.
    HANA
    HANAHANA Database type of SAP system.
    DB2
    DB2DB2 database type of the SAP system.
    HANA
    HANAHANA Database type of SAP system.
    DB2
    DB2DB2 database type of the SAP system.
    "HANA"
    HANAHANA Database type of SAP system.
    "DB2"
    DB2DB2 database type of the SAP system.

    SAPEnvironmentType, SAPEnvironmentTypeArgs

    NonProd
    NonProdNon Production SAP system.
    Prod
    ProdProduction SAP system.
    SAPEnvironmentTypeNonProd
    NonProdNon Production SAP system.
    SAPEnvironmentTypeProd
    ProdProduction SAP system.
    NonProd
    NonProdNon Production SAP system.
    Prod
    ProdProduction SAP system.
    NonProd
    NonProdNon Production SAP system.
    Prod
    ProdProduction SAP system.
    NON_PROD
    NonProdNon Production SAP system.
    PROD
    ProdProduction SAP system.
    "NonProd"
    NonProdNon Production SAP system.
    "Prod"
    ProdProduction SAP system.

    SAPHighAvailabilityType, SAPHighAvailabilityTypeArgs

    AvailabilitySet
    AvailabilitySetHA deployment with availability sets.
    AvailabilityZone
    AvailabilityZoneHA deployment with availability zones.
    SAPHighAvailabilityTypeAvailabilitySet
    AvailabilitySetHA deployment with availability sets.
    SAPHighAvailabilityTypeAvailabilityZone
    AvailabilityZoneHA deployment with availability zones.
    AvailabilitySet
    AvailabilitySetHA deployment with availability sets.
    AvailabilityZone
    AvailabilityZoneHA deployment with availability zones.
    AvailabilitySet
    AvailabilitySetHA deployment with availability sets.
    AvailabilityZone
    AvailabilityZoneHA deployment with availability zones.
    AVAILABILITY_SET
    AvailabilitySetHA deployment with availability sets.
    AVAILABILITY_ZONE
    AvailabilityZoneHA deployment with availability zones.
    "AvailabilitySet"
    AvailabilitySetHA deployment with availability sets.
    "AvailabilityZone"
    AvailabilityZoneHA deployment with availability zones.

    SAPInstallWithoutOSConfigSoftwareConfiguration, SAPInstallWithoutOSConfigSoftwareConfigurationArgs

    BomUrl string
    The URL to the SAP Build of Materials(BOM) file.
    SapBitsStorageAccountId string
    The SAP bits storage account id.
    SoftwareVersion string
    The software version to install.
    HighAvailabilitySoftwareConfiguration Pulumi.AzureNative.Workloads.Inputs.HighAvailabilitySoftwareConfiguration
    Gets or sets the HA software configuration.
    BomUrl string
    The URL to the SAP Build of Materials(BOM) file.
    SapBitsStorageAccountId string
    The SAP bits storage account id.
    SoftwareVersion string
    The software version to install.
    HighAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfiguration
    Gets or sets the HA software configuration.
    bomUrl String
    The URL to the SAP Build of Materials(BOM) file.
    sapBitsStorageAccountId String
    The SAP bits storage account id.
    softwareVersion String
    The software version to install.
    highAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfiguration
    Gets or sets the HA software configuration.
    bomUrl string
    The URL to the SAP Build of Materials(BOM) file.
    sapBitsStorageAccountId string
    The SAP bits storage account id.
    softwareVersion string
    The software version to install.
    highAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfiguration
    Gets or sets the HA software configuration.
    bom_url str
    The URL to the SAP Build of Materials(BOM) file.
    sap_bits_storage_account_id str
    The SAP bits storage account id.
    software_version str
    The software version to install.
    high_availability_software_configuration HighAvailabilitySoftwareConfiguration
    Gets or sets the HA software configuration.
    bomUrl String
    The URL to the SAP Build of Materials(BOM) file.
    sapBitsStorageAccountId String
    The SAP bits storage account id.
    softwareVersion String
    The software version to install.
    highAvailabilitySoftwareConfiguration Property Map
    Gets or sets the HA software configuration.

    SAPInstallWithoutOSConfigSoftwareConfigurationResponse, SAPInstallWithoutOSConfigSoftwareConfigurationResponseArgs

    BomUrl string
    The URL to the SAP Build of Materials(BOM) file.
    SapBitsStorageAccountId string
    The SAP bits storage account id.
    SoftwareVersion string
    The software version to install.
    HighAvailabilitySoftwareConfiguration Pulumi.AzureNative.Workloads.Inputs.HighAvailabilitySoftwareConfigurationResponse
    Gets or sets the HA software configuration.
    BomUrl string
    The URL to the SAP Build of Materials(BOM) file.
    SapBitsStorageAccountId string
    The SAP bits storage account id.
    SoftwareVersion string
    The software version to install.
    HighAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfigurationResponse
    Gets or sets the HA software configuration.
    bomUrl String
    The URL to the SAP Build of Materials(BOM) file.
    sapBitsStorageAccountId String
    The SAP bits storage account id.
    softwareVersion String
    The software version to install.
    highAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfigurationResponse
    Gets or sets the HA software configuration.
    bomUrl string
    The URL to the SAP Build of Materials(BOM) file.
    sapBitsStorageAccountId string
    The SAP bits storage account id.
    softwareVersion string
    The software version to install.
    highAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfigurationResponse
    Gets or sets the HA software configuration.
    bom_url str
    The URL to the SAP Build of Materials(BOM) file.
    sap_bits_storage_account_id str
    The SAP bits storage account id.
    software_version str
    The software version to install.
    high_availability_software_configuration HighAvailabilitySoftwareConfigurationResponse
    Gets or sets the HA software configuration.
    bomUrl String
    The URL to the SAP Build of Materials(BOM) file.
    sapBitsStorageAccountId String
    The SAP bits storage account id.
    softwareVersion String
    The software version to install.
    highAvailabilitySoftwareConfiguration Property Map
    Gets or sets the HA software configuration.

    SAPProductType, SAPProductTypeArgs

    ECC
    ECCSAP Product ECC.
    S4HANA
    S4HANASAP Product S4HANA.
    Other
    OtherSAP Products other than the ones listed.
    SAPProductTypeECC
    ECCSAP Product ECC.
    SAPProductTypeS4HANA
    S4HANASAP Product S4HANA.
    SAPProductTypeOther
    OtherSAP Products other than the ones listed.
    ECC
    ECCSAP Product ECC.
    S4HANA
    S4HANASAP Product S4HANA.
    Other
    OtherSAP Products other than the ones listed.
    ECC
    ECCSAP Product ECC.
    S4HANA
    S4HANASAP Product S4HANA.
    Other
    OtherSAP Products other than the ones listed.
    ECC
    ECCSAP Product ECC.
    S4_HANA
    S4HANASAP Product S4HANA.
    OTHER
    OtherSAP Products other than the ones listed.
    "ECC"
    ECCSAP Product ECC.
    "S4HANA"
    S4HANASAP Product S4HANA.
    "Other"
    OtherSAP Products other than the ones listed.

    SAPVirtualInstanceErrorResponse, SAPVirtualInstanceErrorResponseArgs

    Properties ErrorDefinitionResponse
    The Virtual Instance for SAP error body.
    properties ErrorDefinitionResponse
    The Virtual Instance for SAP error body.
    properties ErrorDefinitionResponse
    The Virtual Instance for SAP error body.
    properties ErrorDefinitionResponse
    The Virtual Instance for SAP error body.
    properties Property Map
    The Virtual Instance for SAP error body.

    ServiceInitiatedSoftwareConfiguration, ServiceInitiatedSoftwareConfigurationArgs

    BomUrl string
    The URL to the SAP Build of Materials(BOM) file.
    SapBitsStorageAccountId string
    The SAP bits storage account id.
    SapFqdn string
    The FQDN to set for the SAP system during install.
    SoftwareVersion string
    The software version to install.
    SshPrivateKey string
    The SSH private key.
    HighAvailabilitySoftwareConfiguration Pulumi.AzureNative.Workloads.Inputs.HighAvailabilitySoftwareConfiguration
    Gets or sets the HA software configuration.
    BomUrl string
    The URL to the SAP Build of Materials(BOM) file.
    SapBitsStorageAccountId string
    The SAP bits storage account id.
    SapFqdn string
    The FQDN to set for the SAP system during install.
    SoftwareVersion string
    The software version to install.
    SshPrivateKey string
    The SSH private key.
    HighAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfiguration
    Gets or sets the HA software configuration.
    bomUrl String
    The URL to the SAP Build of Materials(BOM) file.
    sapBitsStorageAccountId String
    The SAP bits storage account id.
    sapFqdn String
    The FQDN to set for the SAP system during install.
    softwareVersion String
    The software version to install.
    sshPrivateKey String
    The SSH private key.
    highAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfiguration
    Gets or sets the HA software configuration.
    bomUrl string
    The URL to the SAP Build of Materials(BOM) file.
    sapBitsStorageAccountId string
    The SAP bits storage account id.
    sapFqdn string
    The FQDN to set for the SAP system during install.
    softwareVersion string
    The software version to install.
    sshPrivateKey string
    The SSH private key.
    highAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfiguration
    Gets or sets the HA software configuration.
    bom_url str
    The URL to the SAP Build of Materials(BOM) file.
    sap_bits_storage_account_id str
    The SAP bits storage account id.
    sap_fqdn str
    The FQDN to set for the SAP system during install.
    software_version str
    The software version to install.
    ssh_private_key str
    The SSH private key.
    high_availability_software_configuration HighAvailabilitySoftwareConfiguration
    Gets or sets the HA software configuration.
    bomUrl String
    The URL to the SAP Build of Materials(BOM) file.
    sapBitsStorageAccountId String
    The SAP bits storage account id.
    sapFqdn String
    The FQDN to set for the SAP system during install.
    softwareVersion String
    The software version to install.
    sshPrivateKey String
    The SSH private key.
    highAvailabilitySoftwareConfiguration Property Map
    Gets or sets the HA software configuration.

    ServiceInitiatedSoftwareConfigurationResponse, ServiceInitiatedSoftwareConfigurationResponseArgs

    BomUrl string
    The URL to the SAP Build of Materials(BOM) file.
    SapBitsStorageAccountId string
    The SAP bits storage account id.
    SapFqdn string
    The FQDN to set for the SAP system during install.
    SoftwareVersion string
    The software version to install.
    SshPrivateKey string
    The SSH private key.
    HighAvailabilitySoftwareConfiguration Pulumi.AzureNative.Workloads.Inputs.HighAvailabilitySoftwareConfigurationResponse
    Gets or sets the HA software configuration.
    BomUrl string
    The URL to the SAP Build of Materials(BOM) file.
    SapBitsStorageAccountId string
    The SAP bits storage account id.
    SapFqdn string
    The FQDN to set for the SAP system during install.
    SoftwareVersion string
    The software version to install.
    SshPrivateKey string
    The SSH private key.
    HighAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfigurationResponse
    Gets or sets the HA software configuration.
    bomUrl String
    The URL to the SAP Build of Materials(BOM) file.
    sapBitsStorageAccountId String
    The SAP bits storage account id.
    sapFqdn String
    The FQDN to set for the SAP system during install.
    softwareVersion String
    The software version to install.
    sshPrivateKey String
    The SSH private key.
    highAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfigurationResponse
    Gets or sets the HA software configuration.
    bomUrl string
    The URL to the SAP Build of Materials(BOM) file.
    sapBitsStorageAccountId string
    The SAP bits storage account id.
    sapFqdn string
    The FQDN to set for the SAP system during install.
    softwareVersion string
    The software version to install.
    sshPrivateKey string
    The SSH private key.
    highAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfigurationResponse
    Gets or sets the HA software configuration.
    bom_url str
    The URL to the SAP Build of Materials(BOM) file.
    sap_bits_storage_account_id str
    The SAP bits storage account id.
    sap_fqdn str
    The FQDN to set for the SAP system during install.
    software_version str
    The software version to install.
    ssh_private_key str
    The SSH private key.
    high_availability_software_configuration HighAvailabilitySoftwareConfigurationResponse
    Gets or sets the HA software configuration.
    bomUrl String
    The URL to the SAP Build of Materials(BOM) file.
    sapBitsStorageAccountId String
    The SAP bits storage account id.
    sapFqdn String
    The FQDN to set for the SAP system during install.
    softwareVersion String
    The software version to install.
    sshPrivateKey String
    The SSH private key.
    highAvailabilitySoftwareConfiguration Property Map
    Gets or sets the HA software configuration.

    SharedStorageResourceNames, SharedStorageResourceNamesArgs

    SharedStorageAccountName string
    The full name of the shared storage account. If it is not provided, it will be defaulted to {SID}nfs{guid of 15 chars}.
    SharedStorageAccountPrivateEndPointName string
    The full name of private end point for the shared storage account. If it is not provided, it will be defaulted to {storageAccountName}_pe
    SharedStorageAccountName string
    The full name of the shared storage account. If it is not provided, it will be defaulted to {SID}nfs{guid of 15 chars}.
    SharedStorageAccountPrivateEndPointName string
    The full name of private end point for the shared storage account. If it is not provided, it will be defaulted to {storageAccountName}_pe
    sharedStorageAccountName String
    The full name of the shared storage account. If it is not provided, it will be defaulted to {SID}nfs{guid of 15 chars}.
    sharedStorageAccountPrivateEndPointName String
    The full name of private end point for the shared storage account. If it is not provided, it will be defaulted to {storageAccountName}_pe
    sharedStorageAccountName string
    The full name of the shared storage account. If it is not provided, it will be defaulted to {SID}nfs{guid of 15 chars}.
    sharedStorageAccountPrivateEndPointName string
    The full name of private end point for the shared storage account. If it is not provided, it will be defaulted to {storageAccountName}_pe
    shared_storage_account_name str
    The full name of the shared storage account. If it is not provided, it will be defaulted to {SID}nfs{guid of 15 chars}.
    shared_storage_account_private_end_point_name str
    The full name of private end point for the shared storage account. If it is not provided, it will be defaulted to {storageAccountName}_pe
    sharedStorageAccountName String
    The full name of the shared storage account. If it is not provided, it will be defaulted to {SID}nfs{guid of 15 chars}.
    sharedStorageAccountPrivateEndPointName String
    The full name of private end point for the shared storage account. If it is not provided, it will be defaulted to {storageAccountName}_pe

    SharedStorageResourceNamesResponse, SharedStorageResourceNamesResponseArgs

    SharedStorageAccountName string
    The full name of the shared storage account. If it is not provided, it will be defaulted to {SID}nfs{guid of 15 chars}.
    SharedStorageAccountPrivateEndPointName string
    The full name of private end point for the shared storage account. If it is not provided, it will be defaulted to {storageAccountName}_pe
    SharedStorageAccountName string
    The full name of the shared storage account. If it is not provided, it will be defaulted to {SID}nfs{guid of 15 chars}.
    SharedStorageAccountPrivateEndPointName string
    The full name of private end point for the shared storage account. If it is not provided, it will be defaulted to {storageAccountName}_pe
    sharedStorageAccountName String
    The full name of the shared storage account. If it is not provided, it will be defaulted to {SID}nfs{guid of 15 chars}.
    sharedStorageAccountPrivateEndPointName String
    The full name of private end point for the shared storage account. If it is not provided, it will be defaulted to {storageAccountName}_pe
    sharedStorageAccountName string
    The full name of the shared storage account. If it is not provided, it will be defaulted to {SID}nfs{guid of 15 chars}.
    sharedStorageAccountPrivateEndPointName string
    The full name of private end point for the shared storage account. If it is not provided, it will be defaulted to {storageAccountName}_pe
    shared_storage_account_name str
    The full name of the shared storage account. If it is not provided, it will be defaulted to {SID}nfs{guid of 15 chars}.
    shared_storage_account_private_end_point_name str
    The full name of private end point for the shared storage account. If it is not provided, it will be defaulted to {storageAccountName}_pe
    sharedStorageAccountName String
    The full name of the shared storage account. If it is not provided, it will be defaulted to {SID}nfs{guid of 15 chars}.
    sharedStorageAccountPrivateEndPointName String
    The full name of private end point for the shared storage account. If it is not provided, it will be defaulted to {storageAccountName}_pe

    SingleServerConfiguration, SingleServerConfigurationArgs

    AppResourceGroup string
    The application resource group where SAP system resources will be deployed.
    SubnetId string
    The subnet id.
    VirtualMachineConfiguration Pulumi.AzureNative.Workloads.Inputs.VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    CustomResourceNames Pulumi.AzureNative.Workloads.Inputs.SingleServerFullResourceNames
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    DatabaseType string | Pulumi.AzureNative.Workloads.SAPDatabaseType
    The database type.
    DbDiskConfiguration Pulumi.AzureNative.Workloads.Inputs.DiskConfiguration
    Gets or sets the disk configuration.
    NetworkConfiguration Pulumi.AzureNative.Workloads.Inputs.NetworkConfiguration
    Network configuration for the server
    AppResourceGroup string
    The application resource group where SAP system resources will be deployed.
    SubnetId string
    The subnet id.
    VirtualMachineConfiguration VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    CustomResourceNames SingleServerFullResourceNames
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    DatabaseType string | SAPDatabaseType
    The database type.
    DbDiskConfiguration DiskConfiguration
    Gets or sets the disk configuration.
    NetworkConfiguration NetworkConfiguration
    Network configuration for the server
    appResourceGroup String
    The application resource group where SAP system resources will be deployed.
    subnetId String
    The subnet id.
    virtualMachineConfiguration VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    customResourceNames SingleServerFullResourceNames
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    databaseType String | SAPDatabaseType
    The database type.
    dbDiskConfiguration DiskConfiguration
    Gets or sets the disk configuration.
    networkConfiguration NetworkConfiguration
    Network configuration for the server
    appResourceGroup string
    The application resource group where SAP system resources will be deployed.
    subnetId string
    The subnet id.
    virtualMachineConfiguration VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    customResourceNames SingleServerFullResourceNames
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    databaseType string | SAPDatabaseType
    The database type.
    dbDiskConfiguration DiskConfiguration
    Gets or sets the disk configuration.
    networkConfiguration NetworkConfiguration
    Network configuration for the server
    app_resource_group str
    The application resource group where SAP system resources will be deployed.
    subnet_id str
    The subnet id.
    virtual_machine_configuration VirtualMachineConfiguration
    Gets or sets the virtual machine configuration.
    custom_resource_names SingleServerFullResourceNames
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    database_type str | SAPDatabaseType
    The database type.
    db_disk_configuration DiskConfiguration
    Gets or sets the disk configuration.
    network_configuration NetworkConfiguration
    Network configuration for the server
    appResourceGroup String
    The application resource group where SAP system resources will be deployed.
    subnetId String
    The subnet id.
    virtualMachineConfiguration Property Map
    Gets or sets the virtual machine configuration.
    customResourceNames Property Map
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    databaseType String | "HANA" | "DB2"
    The database type.
    dbDiskConfiguration Property Map
    Gets or sets the disk configuration.
    networkConfiguration Property Map
    Network configuration for the server

    SingleServerConfigurationResponse, SingleServerConfigurationResponseArgs

    AppResourceGroup string
    The application resource group where SAP system resources will be deployed.
    SubnetId string
    The subnet id.
    VirtualMachineConfiguration Pulumi.AzureNative.Workloads.Inputs.VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    CustomResourceNames Pulumi.AzureNative.Workloads.Inputs.SingleServerFullResourceNamesResponse
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    DatabaseType string
    The database type.
    DbDiskConfiguration Pulumi.AzureNative.Workloads.Inputs.DiskConfigurationResponse
    Gets or sets the disk configuration.
    NetworkConfiguration Pulumi.AzureNative.Workloads.Inputs.NetworkConfigurationResponse
    Network configuration for the server
    AppResourceGroup string
    The application resource group where SAP system resources will be deployed.
    SubnetId string
    The subnet id.
    VirtualMachineConfiguration VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    CustomResourceNames SingleServerFullResourceNamesResponse
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    DatabaseType string
    The database type.
    DbDiskConfiguration DiskConfigurationResponse
    Gets or sets the disk configuration.
    NetworkConfiguration NetworkConfigurationResponse
    Network configuration for the server
    appResourceGroup String
    The application resource group where SAP system resources will be deployed.
    subnetId String
    The subnet id.
    virtualMachineConfiguration VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    customResourceNames SingleServerFullResourceNamesResponse
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    databaseType String
    The database type.
    dbDiskConfiguration DiskConfigurationResponse
    Gets or sets the disk configuration.
    networkConfiguration NetworkConfigurationResponse
    Network configuration for the server
    appResourceGroup string
    The application resource group where SAP system resources will be deployed.
    subnetId string
    The subnet id.
    virtualMachineConfiguration VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    customResourceNames SingleServerFullResourceNamesResponse
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    databaseType string
    The database type.
    dbDiskConfiguration DiskConfigurationResponse
    Gets or sets the disk configuration.
    networkConfiguration NetworkConfigurationResponse
    Network configuration for the server
    app_resource_group str
    The application resource group where SAP system resources will be deployed.
    subnet_id str
    The subnet id.
    virtual_machine_configuration VirtualMachineConfigurationResponse
    Gets or sets the virtual machine configuration.
    custom_resource_names SingleServerFullResourceNamesResponse
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    database_type str
    The database type.
    db_disk_configuration DiskConfigurationResponse
    Gets or sets the disk configuration.
    network_configuration NetworkConfigurationResponse
    Network configuration for the server
    appResourceGroup String
    The application resource group where SAP system resources will be deployed.
    subnetId String
    The subnet id.
    virtualMachineConfiguration Property Map
    Gets or sets the virtual machine configuration.
    customResourceNames Property Map
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    databaseType String
    The database type.
    dbDiskConfiguration Property Map
    Gets or sets the disk configuration.
    networkConfiguration Property Map
    Network configuration for the server

    SingleServerFullResourceNames, SingleServerFullResourceNamesArgs

    VirtualMachine Pulumi.AzureNative.Workloads.Inputs.VirtualMachineResourceNames
    The resource names object for virtual machine and related resources.
    VirtualMachine VirtualMachineResourceNames
    The resource names object for virtual machine and related resources.
    virtualMachine VirtualMachineResourceNames
    The resource names object for virtual machine and related resources.
    virtualMachine VirtualMachineResourceNames
    The resource names object for virtual machine and related resources.
    virtual_machine VirtualMachineResourceNames
    The resource names object for virtual machine and related resources.
    virtualMachine Property Map
    The resource names object for virtual machine and related resources.

    SingleServerFullResourceNamesResponse, SingleServerFullResourceNamesResponseArgs

    VirtualMachine Pulumi.AzureNative.Workloads.Inputs.VirtualMachineResourceNamesResponse
    The resource names object for virtual machine and related resources.
    VirtualMachine VirtualMachineResourceNamesResponse
    The resource names object for virtual machine and related resources.
    virtualMachine VirtualMachineResourceNamesResponse
    The resource names object for virtual machine and related resources.
    virtualMachine VirtualMachineResourceNamesResponse
    The resource names object for virtual machine and related resources.
    virtual_machine VirtualMachineResourceNamesResponse
    The resource names object for virtual machine and related resources.
    virtualMachine Property Map
    The resource names object for virtual machine and related resources.

    SkipFileShareConfiguration, SkipFileShareConfigurationArgs

    SkipFileShareConfigurationResponse, SkipFileShareConfigurationResponseArgs

    SshConfiguration, SshConfigurationArgs

    PublicKeys List<Pulumi.AzureNative.Workloads.Inputs.SshPublicKey>
    The list of SSH public keys used to authenticate with linux based VMs.
    PublicKeys []SshPublicKey
    The list of SSH public keys used to authenticate with linux based VMs.
    publicKeys List<SshPublicKey>
    The list of SSH public keys used to authenticate with linux based VMs.
    publicKeys SshPublicKey[]
    The list of SSH public keys used to authenticate with linux based VMs.
    public_keys Sequence[SshPublicKey]
    The list of SSH public keys used to authenticate with linux based VMs.
    publicKeys List<Property Map>
    The list of SSH public keys used to authenticate with linux based VMs.

    SshConfigurationResponse, SshConfigurationResponseArgs

    PublicKeys List<Pulumi.AzureNative.Workloads.Inputs.SshPublicKeyResponse>
    The list of SSH public keys used to authenticate with linux based VMs.
    PublicKeys []SshPublicKeyResponse
    The list of SSH public keys used to authenticate with linux based VMs.
    publicKeys List<SshPublicKeyResponse>
    The list of SSH public keys used to authenticate with linux based VMs.
    publicKeys SshPublicKeyResponse[]
    The list of SSH public keys used to authenticate with linux based VMs.
    public_keys Sequence[SshPublicKeyResponse]
    The list of SSH public keys used to authenticate with linux based VMs.
    publicKeys List<Property Map>
    The list of SSH public keys used to authenticate with linux based VMs.

    SshKeyPair, SshKeyPairArgs

    PrivateKey string
    SSH private key.
    PublicKey string
    SSH public key
    PrivateKey string
    SSH private key.
    PublicKey string
    SSH public key
    privateKey String
    SSH private key.
    publicKey String
    SSH public key
    privateKey string
    SSH private key.
    publicKey string
    SSH public key
    private_key str
    SSH private key.
    public_key str
    SSH public key
    privateKey String
    SSH private key.
    publicKey String
    SSH public key

    SshKeyPairResponse, SshKeyPairResponseArgs

    PrivateKey string
    SSH private key.
    PublicKey string
    SSH public key
    PrivateKey string
    SSH private key.
    PublicKey string
    SSH public key
    privateKey String
    SSH private key.
    publicKey String
    SSH public key
    privateKey string
    SSH private key.
    publicKey string
    SSH public key
    private_key str
    SSH private key.
    public_key str
    SSH public key
    privateKey String
    SSH private key.
    publicKey String
    SSH public key

    SshPublicKey, SshPublicKeyArgs

    KeyData string
    SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys, see Create SSH keys on Linux and Mac for Linux VMs in Azure.
    KeyData string
    SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys, see Create SSH keys on Linux and Mac for Linux VMs in Azure.
    keyData String
    SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys, see Create SSH keys on Linux and Mac for Linux VMs in Azure.
    keyData string
    SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys, see Create SSH keys on Linux and Mac for Linux VMs in Azure.
    key_data str
    SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys, see Create SSH keys on Linux and Mac for Linux VMs in Azure.
    keyData String
    SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys, see Create SSH keys on Linux and Mac for Linux VMs in Azure.

    SshPublicKeyResponse, SshPublicKeyResponseArgs

    KeyData string
    SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys, see Create SSH keys on Linux and Mac for Linux VMs in Azure.
    KeyData string
    SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys, see Create SSH keys on Linux and Mac for Linux VMs in Azure.
    keyData String
    SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys, see Create SSH keys on Linux and Mac for Linux VMs in Azure.
    keyData string
    SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys, see Create SSH keys on Linux and Mac for Linux VMs in Azure.
    key_data str
    SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys, see Create SSH keys on Linux and Mac for Linux VMs in Azure.
    keyData String
    SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format. For creating ssh keys, see Create SSH keys on Linux and Mac for Linux VMs in Azure.

    StorageConfiguration, StorageConfigurationArgs

    TransportFileShareConfiguration Pulumi.AzureNative.Workloads.Inputs.CreateAndMountFileShareConfiguration | Pulumi.AzureNative.Workloads.Inputs.MountFileShareConfiguration | Pulumi.AzureNative.Workloads.Inputs.SkipFileShareConfiguration
    The properties of the transport directory attached to the VIS. The default for transportFileShareConfiguration is the createAndMount flow if storage configuration is missing.
    TransportFileShareConfiguration CreateAndMountFileShareConfiguration | MountFileShareConfiguration | SkipFileShareConfiguration
    The properties of the transport directory attached to the VIS. The default for transportFileShareConfiguration is the createAndMount flow if storage configuration is missing.
    transportFileShareConfiguration CreateAndMountFileShareConfiguration | MountFileShareConfiguration | SkipFileShareConfiguration
    The properties of the transport directory attached to the VIS. The default for transportFileShareConfiguration is the createAndMount flow if storage configuration is missing.
    transportFileShareConfiguration CreateAndMountFileShareConfiguration | MountFileShareConfiguration | SkipFileShareConfiguration
    The properties of the transport directory attached to the VIS. The default for transportFileShareConfiguration is the createAndMount flow if storage configuration is missing.
    transport_file_share_configuration CreateAndMountFileShareConfiguration | MountFileShareConfiguration | SkipFileShareConfiguration
    The properties of the transport directory attached to the VIS. The default for transportFileShareConfiguration is the createAndMount flow if storage configuration is missing.
    transportFileShareConfiguration Property Map | Property Map | Property Map
    The properties of the transport directory attached to the VIS. The default for transportFileShareConfiguration is the createAndMount flow if storage configuration is missing.

    StorageConfigurationResponse, StorageConfigurationResponseArgs

    TransportFileShareConfiguration Pulumi.AzureNative.Workloads.Inputs.CreateAndMountFileShareConfigurationResponse | Pulumi.AzureNative.Workloads.Inputs.MountFileShareConfigurationResponse | Pulumi.AzureNative.Workloads.Inputs.SkipFileShareConfigurationResponse
    The properties of the transport directory attached to the VIS. The default for transportFileShareConfiguration is the createAndMount flow if storage configuration is missing.
    TransportFileShareConfiguration CreateAndMountFileShareConfigurationResponse | MountFileShareConfigurationResponse | SkipFileShareConfigurationResponse
    The properties of the transport directory attached to the VIS. The default for transportFileShareConfiguration is the createAndMount flow if storage configuration is missing.
    transportFileShareConfiguration CreateAndMountFileShareConfigurationResponse | MountFileShareConfigurationResponse | SkipFileShareConfigurationResponse
    The properties of the transport directory attached to the VIS. The default for transportFileShareConfiguration is the createAndMount flow if storage configuration is missing.
    transportFileShareConfiguration CreateAndMountFileShareConfigurationResponse | MountFileShareConfigurationResponse | SkipFileShareConfigurationResponse
    The properties of the transport directory attached to the VIS. The default for transportFileShareConfiguration is the createAndMount flow if storage configuration is missing.
    transport_file_share_configuration CreateAndMountFileShareConfigurationResponse | MountFileShareConfigurationResponse | SkipFileShareConfigurationResponse
    The properties of the transport directory attached to the VIS. The default for transportFileShareConfiguration is the createAndMount flow if storage configuration is missing.
    transportFileShareConfiguration Property Map | Property Map | Property Map
    The properties of the transport directory attached to the VIS. The default for transportFileShareConfiguration is the createAndMount flow if storage configuration is missing.

    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.

    ThreeTierConfiguration, ThreeTierConfigurationArgs

    AppResourceGroup string
    The application resource group where SAP system resources will be deployed.
    ApplicationServer Pulumi.AzureNative.Workloads.Inputs.ApplicationServerConfiguration
    The application server configuration.
    CentralServer Pulumi.AzureNative.Workloads.Inputs.CentralServerConfiguration
    The central server configuration.
    DatabaseServer Pulumi.AzureNative.Workloads.Inputs.DatabaseConfiguration
    The database configuration.
    CustomResourceNames Pulumi.AzureNative.Workloads.Inputs.ThreeTierFullResourceNames
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    HighAvailabilityConfig Pulumi.AzureNative.Workloads.Inputs.HighAvailabilityConfiguration
    The high availability configuration.
    NetworkConfiguration Pulumi.AzureNative.Workloads.Inputs.NetworkConfiguration
    Network configuration common to all servers
    StorageConfiguration Pulumi.AzureNative.Workloads.Inputs.StorageConfiguration
    The storage configuration.
    AppResourceGroup string
    The application resource group where SAP system resources will be deployed.
    ApplicationServer ApplicationServerConfiguration
    The application server configuration.
    CentralServer CentralServerConfiguration
    The central server configuration.
    DatabaseServer DatabaseConfiguration
    The database configuration.
    CustomResourceNames ThreeTierFullResourceNames
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    HighAvailabilityConfig HighAvailabilityConfiguration
    The high availability configuration.
    NetworkConfiguration NetworkConfiguration
    Network configuration common to all servers
    StorageConfiguration StorageConfiguration
    The storage configuration.
    appResourceGroup String
    The application resource group where SAP system resources will be deployed.
    applicationServer ApplicationServerConfiguration
    The application server configuration.
    centralServer CentralServerConfiguration
    The central server configuration.
    databaseServer DatabaseConfiguration
    The database configuration.
    customResourceNames ThreeTierFullResourceNames
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    highAvailabilityConfig HighAvailabilityConfiguration
    The high availability configuration.
    networkConfiguration NetworkConfiguration
    Network configuration common to all servers
    storageConfiguration StorageConfiguration
    The storage configuration.
    appResourceGroup string
    The application resource group where SAP system resources will be deployed.
    applicationServer ApplicationServerConfiguration
    The application server configuration.
    centralServer CentralServerConfiguration
    The central server configuration.
    databaseServer DatabaseConfiguration
    The database configuration.
    customResourceNames ThreeTierFullResourceNames
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    highAvailabilityConfig HighAvailabilityConfiguration
    The high availability configuration.
    networkConfiguration NetworkConfiguration
    Network configuration common to all servers
    storageConfiguration StorageConfiguration
    The storage configuration.
    app_resource_group str
    The application resource group where SAP system resources will be deployed.
    application_server ApplicationServerConfiguration
    The application server configuration.
    central_server CentralServerConfiguration
    The central server configuration.
    database_server DatabaseConfiguration
    The database configuration.
    custom_resource_names ThreeTierFullResourceNames
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    high_availability_config HighAvailabilityConfiguration
    The high availability configuration.
    network_configuration NetworkConfiguration
    Network configuration common to all servers
    storage_configuration StorageConfiguration
    The storage configuration.
    appResourceGroup String
    The application resource group where SAP system resources will be deployed.
    applicationServer Property Map
    The application server configuration.
    centralServer Property Map
    The central server configuration.
    databaseServer Property Map
    The database configuration.
    customResourceNames Property Map
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    highAvailabilityConfig Property Map
    The high availability configuration.
    networkConfiguration Property Map
    Network configuration common to all servers
    storageConfiguration Property Map
    The storage configuration.

    ThreeTierConfigurationResponse, ThreeTierConfigurationResponseArgs

    AppResourceGroup string
    The application resource group where SAP system resources will be deployed.
    ApplicationServer Pulumi.AzureNative.Workloads.Inputs.ApplicationServerConfigurationResponse
    The application server configuration.
    CentralServer Pulumi.AzureNative.Workloads.Inputs.CentralServerConfigurationResponse
    The central server configuration.
    DatabaseServer Pulumi.AzureNative.Workloads.Inputs.DatabaseConfigurationResponse
    The database configuration.
    CustomResourceNames Pulumi.AzureNative.Workloads.Inputs.ThreeTierFullResourceNamesResponse
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    HighAvailabilityConfig Pulumi.AzureNative.Workloads.Inputs.HighAvailabilityConfigurationResponse
    The high availability configuration.
    NetworkConfiguration Pulumi.AzureNative.Workloads.Inputs.NetworkConfigurationResponse
    Network configuration common to all servers
    StorageConfiguration Pulumi.AzureNative.Workloads.Inputs.StorageConfigurationResponse
    The storage configuration.
    AppResourceGroup string
    The application resource group where SAP system resources will be deployed.
    ApplicationServer ApplicationServerConfigurationResponse
    The application server configuration.
    CentralServer CentralServerConfigurationResponse
    The central server configuration.
    DatabaseServer DatabaseConfigurationResponse
    The database configuration.
    CustomResourceNames ThreeTierFullResourceNamesResponse
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    HighAvailabilityConfig HighAvailabilityConfigurationResponse
    The high availability configuration.
    NetworkConfiguration NetworkConfigurationResponse
    Network configuration common to all servers
    StorageConfiguration StorageConfigurationResponse
    The storage configuration.
    appResourceGroup String
    The application resource group where SAP system resources will be deployed.
    applicationServer ApplicationServerConfigurationResponse
    The application server configuration.
    centralServer CentralServerConfigurationResponse
    The central server configuration.
    databaseServer DatabaseConfigurationResponse
    The database configuration.
    customResourceNames ThreeTierFullResourceNamesResponse
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    highAvailabilityConfig HighAvailabilityConfigurationResponse
    The high availability configuration.
    networkConfiguration NetworkConfigurationResponse
    Network configuration common to all servers
    storageConfiguration StorageConfigurationResponse
    The storage configuration.
    appResourceGroup string
    The application resource group where SAP system resources will be deployed.
    applicationServer ApplicationServerConfigurationResponse
    The application server configuration.
    centralServer CentralServerConfigurationResponse
    The central server configuration.
    databaseServer DatabaseConfigurationResponse
    The database configuration.
    customResourceNames ThreeTierFullResourceNamesResponse
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    highAvailabilityConfig HighAvailabilityConfigurationResponse
    The high availability configuration.
    networkConfiguration NetworkConfigurationResponse
    Network configuration common to all servers
    storageConfiguration StorageConfigurationResponse
    The storage configuration.
    app_resource_group str
    The application resource group where SAP system resources will be deployed.
    application_server ApplicationServerConfigurationResponse
    The application server configuration.
    central_server CentralServerConfigurationResponse
    The central server configuration.
    database_server DatabaseConfigurationResponse
    The database configuration.
    custom_resource_names ThreeTierFullResourceNamesResponse
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    high_availability_config HighAvailabilityConfigurationResponse
    The high availability configuration.
    network_configuration NetworkConfigurationResponse
    Network configuration common to all servers
    storage_configuration StorageConfigurationResponse
    The storage configuration.
    appResourceGroup String
    The application resource group where SAP system resources will be deployed.
    applicationServer Property Map
    The application server configuration.
    centralServer Property Map
    The central server configuration.
    databaseServer Property Map
    The database configuration.
    customResourceNames Property Map
    The set of custom names to be used for underlying azure resources that are part of the SAP system.
    highAvailabilityConfig Property Map
    The high availability configuration.
    networkConfiguration Property Map
    Network configuration common to all servers
    storageConfiguration Property Map
    The storage configuration.

    ThreeTierFullResourceNames, ThreeTierFullResourceNamesArgs

    ApplicationServer Pulumi.AzureNative.Workloads.Inputs.ApplicationServerFullResourceNames
    The full resource names object for application layer resources. The number of entries in this list should be equal to the number VMs to be created for application layer.
    CentralServer Pulumi.AzureNative.Workloads.Inputs.CentralServerFullResourceNames
    The full resource names object for central server layer resources.
    DatabaseServer Pulumi.AzureNative.Workloads.Inputs.DatabaseServerFullResourceNames
    The full resource names object for database layer resources. The number of entries in this list should be equal to the number VMs to be created for database layer.
    SharedStorage Pulumi.AzureNative.Workloads.Inputs.SharedStorageResourceNames
    The resource names object for shared storage.
    ApplicationServer ApplicationServerFullResourceNames
    The full resource names object for application layer resources. The number of entries in this list should be equal to the number VMs to be created for application layer.
    CentralServer CentralServerFullResourceNames
    The full resource names object for central server layer resources.
    DatabaseServer DatabaseServerFullResourceNames
    The full resource names object for database layer resources. The number of entries in this list should be equal to the number VMs to be created for database layer.
    SharedStorage SharedStorageResourceNames
    The resource names object for shared storage.
    applicationServer ApplicationServerFullResourceNames
    The full resource names object for application layer resources. The number of entries in this list should be equal to the number VMs to be created for application layer.
    centralServer CentralServerFullResourceNames
    The full resource names object for central server layer resources.
    databaseServer DatabaseServerFullResourceNames
    The full resource names object for database layer resources. The number of entries in this list should be equal to the number VMs to be created for database layer.
    sharedStorage SharedStorageResourceNames
    The resource names object for shared storage.
    applicationServer ApplicationServerFullResourceNames
    The full resource names object for application layer resources. The number of entries in this list should be equal to the number VMs to be created for application layer.
    centralServer CentralServerFullResourceNames
    The full resource names object for central server layer resources.
    databaseServer DatabaseServerFullResourceNames
    The full resource names object for database layer resources. The number of entries in this list should be equal to the number VMs to be created for database layer.
    sharedStorage SharedStorageResourceNames
    The resource names object for shared storage.
    application_server ApplicationServerFullResourceNames
    The full resource names object for application layer resources. The number of entries in this list should be equal to the number VMs to be created for application layer.
    central_server CentralServerFullResourceNames
    The full resource names object for central server layer resources.
    database_server DatabaseServerFullResourceNames
    The full resource names object for database layer resources. The number of entries in this list should be equal to the number VMs to be created for database layer.
    shared_storage SharedStorageResourceNames
    The resource names object for shared storage.
    applicationServer Property Map
    The full resource names object for application layer resources. The number of entries in this list should be equal to the number VMs to be created for application layer.
    centralServer Property Map
    The full resource names object for central server layer resources.
    databaseServer Property Map
    The full resource names object for database layer resources. The number of entries in this list should be equal to the number VMs to be created for database layer.
    sharedStorage Property Map
    The resource names object for shared storage.

    ThreeTierFullResourceNamesResponse, ThreeTierFullResourceNamesResponseArgs

    ApplicationServer Pulumi.AzureNative.Workloads.Inputs.ApplicationServerFullResourceNamesResponse
    The full resource names object for application layer resources. The number of entries in this list should be equal to the number VMs to be created for application layer.
    CentralServer Pulumi.AzureNative.Workloads.Inputs.CentralServerFullResourceNamesResponse
    The full resource names object for central server layer resources.
    DatabaseServer Pulumi.AzureNative.Workloads.Inputs.DatabaseServerFullResourceNamesResponse
    The full resource names object for database layer resources. The number of entries in this list should be equal to the number VMs to be created for database layer.
    SharedStorage Pulumi.AzureNative.Workloads.Inputs.SharedStorageResourceNamesResponse
    The resource names object for shared storage.
    ApplicationServer ApplicationServerFullResourceNamesResponse
    The full resource names object for application layer resources. The number of entries in this list should be equal to the number VMs to be created for application layer.
    CentralServer CentralServerFullResourceNamesResponse
    The full resource names object for central server layer resources.
    DatabaseServer DatabaseServerFullResourceNamesResponse
    The full resource names object for database layer resources. The number of entries in this list should be equal to the number VMs to be created for database layer.
    SharedStorage SharedStorageResourceNamesResponse
    The resource names object for shared storage.
    applicationServer ApplicationServerFullResourceNamesResponse
    The full resource names object for application layer resources. The number of entries in this list should be equal to the number VMs to be created for application layer.
    centralServer CentralServerFullResourceNamesResponse
    The full resource names object for central server layer resources.
    databaseServer DatabaseServerFullResourceNamesResponse
    The full resource names object for database layer resources. The number of entries in this list should be equal to the number VMs to be created for database layer.
    sharedStorage SharedStorageResourceNamesResponse
    The resource names object for shared storage.
    applicationServer ApplicationServerFullResourceNamesResponse
    The full resource names object for application layer resources. The number of entries in this list should be equal to the number VMs to be created for application layer.
    centralServer CentralServerFullResourceNamesResponse
    The full resource names object for central server layer resources.
    databaseServer DatabaseServerFullResourceNamesResponse
    The full resource names object for database layer resources. The number of entries in this list should be equal to the number VMs to be created for database layer.
    sharedStorage SharedStorageResourceNamesResponse
    The resource names object for shared storage.
    application_server ApplicationServerFullResourceNamesResponse
    The full resource names object for application layer resources. The number of entries in this list should be equal to the number VMs to be created for application layer.
    central_server CentralServerFullResourceNamesResponse
    The full resource names object for central server layer resources.
    database_server DatabaseServerFullResourceNamesResponse
    The full resource names object for database layer resources. The number of entries in this list should be equal to the number VMs to be created for database layer.
    shared_storage SharedStorageResourceNamesResponse
    The resource names object for shared storage.
    applicationServer Property Map
    The full resource names object for application layer resources. The number of entries in this list should be equal to the number VMs to be created for application layer.
    centralServer Property Map
    The full resource names object for central server layer resources.
    databaseServer Property Map
    The full resource names object for database layer resources. The number of entries in this list should be equal to the number VMs to be created for database layer.
    sharedStorage Property Map
    The resource names object for shared storage.

    UserAssignedIdentityResponse, UserAssignedIdentityResponseArgs

    ClientId string
    The client ID of the assigned identity.
    PrincipalId string
    The principal ID of the assigned identity.
    ClientId string
    The client ID of the assigned identity.
    PrincipalId string
    The principal ID of the assigned identity.
    clientId String
    The client ID of the assigned identity.
    principalId String
    The principal ID of the assigned identity.
    clientId string
    The client ID of the assigned identity.
    principalId string
    The principal ID of the assigned identity.
    client_id str
    The client ID of the assigned identity.
    principal_id str
    The principal ID of the assigned identity.
    clientId String
    The client ID of the assigned identity.
    principalId String
    The principal ID of the assigned identity.

    UserAssignedServiceIdentity, UserAssignedServiceIdentityArgs

    Type string | Pulumi.AzureNative.Workloads.ManagedServiceIdentityType
    Type of manage identity
    UserAssignedIdentities List<string>
    User assigned identities dictionary
    Type string | ManagedServiceIdentityType
    Type of manage identity
    UserAssignedIdentities []string
    User assigned identities dictionary
    type String | ManagedServiceIdentityType
    Type of manage identity
    userAssignedIdentities List<String>
    User assigned identities dictionary
    type string | ManagedServiceIdentityType
    Type of manage identity
    userAssignedIdentities string[]
    User assigned identities dictionary
    type str | ManagedServiceIdentityType
    Type of manage identity
    user_assigned_identities Sequence[str]
    User assigned identities dictionary
    type String | "None" | "UserAssigned"
    Type of manage identity
    userAssignedIdentities List<String>
    User assigned identities dictionary

    UserAssignedServiceIdentityResponse, UserAssignedServiceIdentityResponseArgs

    Type string
    Type of manage identity
    UserAssignedIdentities Dictionary<string, Pulumi.AzureNative.Workloads.Inputs.UserAssignedIdentityResponse>
    User assigned identities dictionary
    Type string
    Type of manage identity
    UserAssignedIdentities map[string]UserAssignedIdentityResponse
    User assigned identities dictionary
    type String
    Type of manage identity
    userAssignedIdentities Map<String,UserAssignedIdentityResponse>
    User assigned identities dictionary
    type string
    Type of manage identity
    userAssignedIdentities {[key: string]: UserAssignedIdentityResponse}
    User assigned identities dictionary
    type str
    Type of manage identity
    user_assigned_identities Mapping[str, UserAssignedIdentityResponse]
    User assigned identities dictionary
    type String
    Type of manage identity
    userAssignedIdentities Map<Property Map>
    User assigned identities dictionary

    VirtualMachineConfiguration, VirtualMachineConfigurationArgs

    ImageReference ImageReference
    The image reference.
    OsProfile OSProfile
    The OS profile.
    VmSize string
    The virtual machine size.
    imageReference ImageReference
    The image reference.
    osProfile OSProfile
    The OS profile.
    vmSize String
    The virtual machine size.
    imageReference ImageReference
    The image reference.
    osProfile OSProfile
    The OS profile.
    vmSize string
    The virtual machine size.
    image_reference ImageReference
    The image reference.
    os_profile OSProfile
    The OS profile.
    vm_size str
    The virtual machine size.
    imageReference Property Map
    The image reference.
    osProfile Property Map
    The OS profile.
    vmSize String
    The virtual machine size.

    VirtualMachineConfigurationResponse, VirtualMachineConfigurationResponseArgs

    ImageReference ImageReferenceResponse
    The image reference.
    OsProfile OSProfileResponse
    The OS profile.
    VmSize string
    The virtual machine size.
    imageReference ImageReferenceResponse
    The image reference.
    osProfile OSProfileResponse
    The OS profile.
    vmSize String
    The virtual machine size.
    imageReference ImageReferenceResponse
    The image reference.
    osProfile OSProfileResponse
    The OS profile.
    vmSize string
    The virtual machine size.
    image_reference ImageReferenceResponse
    The image reference.
    os_profile OSProfileResponse
    The OS profile.
    vm_size str
    The virtual machine size.
    imageReference Property Map
    The image reference.
    osProfile Property Map
    The OS profile.
    vmSize String
    The virtual machine size.

    VirtualMachineResourceNames, VirtualMachineResourceNamesArgs

    DataDiskNames Dictionary<string, ImmutableArray<string>>
    The full resource names for virtual machine data disks. This is a dictionary containing list of names of data disks per volume. Currently supported volumes for database layer are ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os', 'backup']. For application and cs layers, only 'default' volume is supported
    HostName string
    The full name for virtual-machine's host (computer name). Currently, ACSS only supports host names which are less than or equal to 13 characters long. If this value is not provided, vmName will be used as host name.
    NetworkInterfaces List<Pulumi.AzureNative.Workloads.Inputs.NetworkInterfaceResourceNames>
    The list of network interface name objects for the selected virtual machine. Currently, only one network interface is supported per virtual machine.
    OsDiskName string
    The full name for OS disk attached to the VM. If this value is not provided, it will be named by ARM as per its default naming standards (prefixed with vm name). There is only one OS disk attached per Virtual Machine.
    VmName string
    The full name for virtual machine. The length of this field can be upto 64 characters. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}vm. In case of HA-AvZone systems, default name will be {SID}{app/ascs/db}z{a/b}vm with an incrementor at the end in case of more than 1 vm per layer. For distributed and HA-AvSet systems, default name will be {SID}{app/ascs/db}vm with an incrementor at the end in case of more than 1 vm per layer.
    DataDiskNames map[string][]string
    The full resource names for virtual machine data disks. This is a dictionary containing list of names of data disks per volume. Currently supported volumes for database layer are ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os', 'backup']. For application and cs layers, only 'default' volume is supported
    HostName string
    The full name for virtual-machine's host (computer name). Currently, ACSS only supports host names which are less than or equal to 13 characters long. If this value is not provided, vmName will be used as host name.
    NetworkInterfaces []NetworkInterfaceResourceNames
    The list of network interface name objects for the selected virtual machine. Currently, only one network interface is supported per virtual machine.
    OsDiskName string
    The full name for OS disk attached to the VM. If this value is not provided, it will be named by ARM as per its default naming standards (prefixed with vm name). There is only one OS disk attached per Virtual Machine.
    VmName string
    The full name for virtual machine. The length of this field can be upto 64 characters. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}vm. In case of HA-AvZone systems, default name will be {SID}{app/ascs/db}z{a/b}vm with an incrementor at the end in case of more than 1 vm per layer. For distributed and HA-AvSet systems, default name will be {SID}{app/ascs/db}vm with an incrementor at the end in case of more than 1 vm per layer.
    dataDiskNames Map<String,List<String>>
    The full resource names for virtual machine data disks. This is a dictionary containing list of names of data disks per volume. Currently supported volumes for database layer are ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os', 'backup']. For application and cs layers, only 'default' volume is supported
    hostName String
    The full name for virtual-machine's host (computer name). Currently, ACSS only supports host names which are less than or equal to 13 characters long. If this value is not provided, vmName will be used as host name.
    networkInterfaces List<NetworkInterfaceResourceNames>
    The list of network interface name objects for the selected virtual machine. Currently, only one network interface is supported per virtual machine.
    osDiskName String
    The full name for OS disk attached to the VM. If this value is not provided, it will be named by ARM as per its default naming standards (prefixed with vm name). There is only one OS disk attached per Virtual Machine.
    vmName String
    The full name for virtual machine. The length of this field can be upto 64 characters. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}vm. In case of HA-AvZone systems, default name will be {SID}{app/ascs/db}z{a/b}vm with an incrementor at the end in case of more than 1 vm per layer. For distributed and HA-AvSet systems, default name will be {SID}{app/ascs/db}vm with an incrementor at the end in case of more than 1 vm per layer.
    dataDiskNames {[key: string]: string[]}
    The full resource names for virtual machine data disks. This is a dictionary containing list of names of data disks per volume. Currently supported volumes for database layer are ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os', 'backup']. For application and cs layers, only 'default' volume is supported
    hostName string
    The full name for virtual-machine's host (computer name). Currently, ACSS only supports host names which are less than or equal to 13 characters long. If this value is not provided, vmName will be used as host name.
    networkInterfaces NetworkInterfaceResourceNames[]
    The list of network interface name objects for the selected virtual machine. Currently, only one network interface is supported per virtual machine.
    osDiskName string
    The full name for OS disk attached to the VM. If this value is not provided, it will be named by ARM as per its default naming standards (prefixed with vm name). There is only one OS disk attached per Virtual Machine.
    vmName string
    The full name for virtual machine. The length of this field can be upto 64 characters. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}vm. In case of HA-AvZone systems, default name will be {SID}{app/ascs/db}z{a/b}vm with an incrementor at the end in case of more than 1 vm per layer. For distributed and HA-AvSet systems, default name will be {SID}{app/ascs/db}vm with an incrementor at the end in case of more than 1 vm per layer.
    data_disk_names Mapping[str, Sequence[str]]
    The full resource names for virtual machine data disks. This is a dictionary containing list of names of data disks per volume. Currently supported volumes for database layer are ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os', 'backup']. For application and cs layers, only 'default' volume is supported
    host_name str
    The full name for virtual-machine's host (computer name). Currently, ACSS only supports host names which are less than or equal to 13 characters long. If this value is not provided, vmName will be used as host name.
    network_interfaces Sequence[NetworkInterfaceResourceNames]
    The list of network interface name objects for the selected virtual machine. Currently, only one network interface is supported per virtual machine.
    os_disk_name str
    The full name for OS disk attached to the VM. If this value is not provided, it will be named by ARM as per its default naming standards (prefixed with vm name). There is only one OS disk attached per Virtual Machine.
    vm_name str
    The full name for virtual machine. The length of this field can be upto 64 characters. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}vm. In case of HA-AvZone systems, default name will be {SID}{app/ascs/db}z{a/b}vm with an incrementor at the end in case of more than 1 vm per layer. For distributed and HA-AvSet systems, default name will be {SID}{app/ascs/db}vm with an incrementor at the end in case of more than 1 vm per layer.
    dataDiskNames Map<List<String>>
    The full resource names for virtual machine data disks. This is a dictionary containing list of names of data disks per volume. Currently supported volumes for database layer are ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os', 'backup']. For application and cs layers, only 'default' volume is supported
    hostName String
    The full name for virtual-machine's host (computer name). Currently, ACSS only supports host names which are less than or equal to 13 characters long. If this value is not provided, vmName will be used as host name.
    networkInterfaces List<Property Map>
    The list of network interface name objects for the selected virtual machine. Currently, only one network interface is supported per virtual machine.
    osDiskName String
    The full name for OS disk attached to the VM. If this value is not provided, it will be named by ARM as per its default naming standards (prefixed with vm name). There is only one OS disk attached per Virtual Machine.
    vmName String
    The full name for virtual machine. The length of this field can be upto 64 characters. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}vm. In case of HA-AvZone systems, default name will be {SID}{app/ascs/db}z{a/b}vm with an incrementor at the end in case of more than 1 vm per layer. For distributed and HA-AvSet systems, default name will be {SID}{app/ascs/db}vm with an incrementor at the end in case of more than 1 vm per layer.

    VirtualMachineResourceNamesResponse, VirtualMachineResourceNamesResponseArgs

    DataDiskNames Dictionary<string, ImmutableArray<string>>
    The full resource names for virtual machine data disks. This is a dictionary containing list of names of data disks per volume. Currently supported volumes for database layer are ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os', 'backup']. For application and cs layers, only 'default' volume is supported
    HostName string
    The full name for virtual-machine's host (computer name). Currently, ACSS only supports host names which are less than or equal to 13 characters long. If this value is not provided, vmName will be used as host name.
    NetworkInterfaces List<Pulumi.AzureNative.Workloads.Inputs.NetworkInterfaceResourceNamesResponse>
    The list of network interface name objects for the selected virtual machine. Currently, only one network interface is supported per virtual machine.
    OsDiskName string
    The full name for OS disk attached to the VM. If this value is not provided, it will be named by ARM as per its default naming standards (prefixed with vm name). There is only one OS disk attached per Virtual Machine.
    VmName string
    The full name for virtual machine. The length of this field can be upto 64 characters. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}vm. In case of HA-AvZone systems, default name will be {SID}{app/ascs/db}z{a/b}vm with an incrementor at the end in case of more than 1 vm per layer. For distributed and HA-AvSet systems, default name will be {SID}{app/ascs/db}vm with an incrementor at the end in case of more than 1 vm per layer.
    DataDiskNames map[string][]string
    The full resource names for virtual machine data disks. This is a dictionary containing list of names of data disks per volume. Currently supported volumes for database layer are ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os', 'backup']. For application and cs layers, only 'default' volume is supported
    HostName string
    The full name for virtual-machine's host (computer name). Currently, ACSS only supports host names which are less than or equal to 13 characters long. If this value is not provided, vmName will be used as host name.
    NetworkInterfaces []NetworkInterfaceResourceNamesResponse
    The list of network interface name objects for the selected virtual machine. Currently, only one network interface is supported per virtual machine.
    OsDiskName string
    The full name for OS disk attached to the VM. If this value is not provided, it will be named by ARM as per its default naming standards (prefixed with vm name). There is only one OS disk attached per Virtual Machine.
    VmName string
    The full name for virtual machine. The length of this field can be upto 64 characters. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}vm. In case of HA-AvZone systems, default name will be {SID}{app/ascs/db}z{a/b}vm with an incrementor at the end in case of more than 1 vm per layer. For distributed and HA-AvSet systems, default name will be {SID}{app/ascs/db}vm with an incrementor at the end in case of more than 1 vm per layer.
    dataDiskNames Map<String,List<String>>
    The full resource names for virtual machine data disks. This is a dictionary containing list of names of data disks per volume. Currently supported volumes for database layer are ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os', 'backup']. For application and cs layers, only 'default' volume is supported
    hostName String
    The full name for virtual-machine's host (computer name). Currently, ACSS only supports host names which are less than or equal to 13 characters long. If this value is not provided, vmName will be used as host name.
    networkInterfaces List<NetworkInterfaceResourceNamesResponse>
    The list of network interface name objects for the selected virtual machine. Currently, only one network interface is supported per virtual machine.
    osDiskName String
    The full name for OS disk attached to the VM. If this value is not provided, it will be named by ARM as per its default naming standards (prefixed with vm name). There is only one OS disk attached per Virtual Machine.
    vmName String
    The full name for virtual machine. The length of this field can be upto 64 characters. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}vm. In case of HA-AvZone systems, default name will be {SID}{app/ascs/db}z{a/b}vm with an incrementor at the end in case of more than 1 vm per layer. For distributed and HA-AvSet systems, default name will be {SID}{app/ascs/db}vm with an incrementor at the end in case of more than 1 vm per layer.
    dataDiskNames {[key: string]: string[]}
    The full resource names for virtual machine data disks. This is a dictionary containing list of names of data disks per volume. Currently supported volumes for database layer are ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os', 'backup']. For application and cs layers, only 'default' volume is supported
    hostName string
    The full name for virtual-machine's host (computer name). Currently, ACSS only supports host names which are less than or equal to 13 characters long. If this value is not provided, vmName will be used as host name.
    networkInterfaces NetworkInterfaceResourceNamesResponse[]
    The list of network interface name objects for the selected virtual machine. Currently, only one network interface is supported per virtual machine.
    osDiskName string
    The full name for OS disk attached to the VM. If this value is not provided, it will be named by ARM as per its default naming standards (prefixed with vm name). There is only one OS disk attached per Virtual Machine.
    vmName string
    The full name for virtual machine. The length of this field can be upto 64 characters. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}vm. In case of HA-AvZone systems, default name will be {SID}{app/ascs/db}z{a/b}vm with an incrementor at the end in case of more than 1 vm per layer. For distributed and HA-AvSet systems, default name will be {SID}{app/ascs/db}vm with an incrementor at the end in case of more than 1 vm per layer.
    data_disk_names Mapping[str, Sequence[str]]
    The full resource names for virtual machine data disks. This is a dictionary containing list of names of data disks per volume. Currently supported volumes for database layer are ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os', 'backup']. For application and cs layers, only 'default' volume is supported
    host_name str
    The full name for virtual-machine's host (computer name). Currently, ACSS only supports host names which are less than or equal to 13 characters long. If this value is not provided, vmName will be used as host name.
    network_interfaces Sequence[NetworkInterfaceResourceNamesResponse]
    The list of network interface name objects for the selected virtual machine. Currently, only one network interface is supported per virtual machine.
    os_disk_name str
    The full name for OS disk attached to the VM. If this value is not provided, it will be named by ARM as per its default naming standards (prefixed with vm name). There is only one OS disk attached per Virtual Machine.
    vm_name str
    The full name for virtual machine. The length of this field can be upto 64 characters. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}vm. In case of HA-AvZone systems, default name will be {SID}{app/ascs/db}z{a/b}vm with an incrementor at the end in case of more than 1 vm per layer. For distributed and HA-AvSet systems, default name will be {SID}{app/ascs/db}vm with an incrementor at the end in case of more than 1 vm per layer.
    dataDiskNames Map<List<String>>
    The full resource names for virtual machine data disks. This is a dictionary containing list of names of data disks per volume. Currently supported volumes for database layer are ['hana/data', 'hana/log', hana/shared', 'usr/sap', 'os', 'backup']. For application and cs layers, only 'default' volume is supported
    hostName String
    The full name for virtual-machine's host (computer name). Currently, ACSS only supports host names which are less than or equal to 13 characters long. If this value is not provided, vmName will be used as host name.
    networkInterfaces List<Property Map>
    The list of network interface name objects for the selected virtual machine. Currently, only one network interface is supported per virtual machine.
    osDiskName String
    The full name for OS disk attached to the VM. If this value is not provided, it will be named by ARM as per its default naming standards (prefixed with vm name). There is only one OS disk attached per Virtual Machine.
    vmName String
    The full name for virtual machine. The length of this field can be upto 64 characters. If name is not provided, service uses a default name based on the deployment type. For SingleServer, default name is {SID}vm. In case of HA-AvZone systems, default name will be {SID}{app/ascs/db}z{a/b}vm with an incrementor at the end in case of more than 1 vm per layer. For distributed and HA-AvSet systems, default name will be {SID}{app/ascs/db}vm with an incrementor at the end in case of more than 1 vm per layer.

    WindowsConfiguration, WindowsConfigurationArgs

    WindowsConfigurationResponse, WindowsConfigurationResponseArgs

    Import

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

    $ pulumi import azure-native:workloads:SAPVirtualInstance Q20 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Workloads/sapVirtualInstances/{sapVirtualInstanceName} 
    

    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 v1 docs if using the v1 version of this package.
    Azure Native v2.73.0 published on Wednesday, Nov 20, 2024 by Pulumi