1. Packages
  2. Azure Native
  3. API Docs
  4. workloads
  5. SapVirtualInstance
This is the latest version of Azure Native. Use the Azure Native v2 docs if using the v2 version of this package.
Azure Native v3.0.1 published on Monday, Apr 7, 2025 by Pulumi

azure-native.workloads.SapVirtualInstance

Explore with Pulumi AI

This is the latest version of Azure Native. Use the Azure Native v2 docs if using the v2 version of this package.
Azure Native v3.0.1 published on Monday, Apr 7, 2025 by Pulumi

Define the Virtual Instance for SAP solutions resource.

Uses Azure REST API version 2024-09-01.

Example Usage

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
                        {
                            Id = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1",
                        },
                        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
                        {
                            Id = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1",
                        },
                        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
                        {
                            Id = "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1",
                        },
                        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,
    });

});
Copy
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{
								Id: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1",
							},
							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{
								Id: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1",
							},
							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{
								Id: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1",
							},
							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
	})
}
Copy
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()
                                .id("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1")
                                .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()
                                .id("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1")
                                .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()
                                .id("/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1")
                                .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());

    }
}
Copy
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: {
                        id: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1",
                    },
                    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: {
                        id: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1",
                    },
                    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: {
                        id: "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1",
                    },
                    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: {},
});
Copy
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": {
                        "id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1",
                    },
                    "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": {
                        "id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1",
                    },
                    "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": {
                        "id": "/subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1",
                    },
                    "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={})
Copy
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:
                id: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1
              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:
                id: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1
              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:
                id: /subscriptions/49d64d54-e966-4c46-a868-1999802b762c/resourceGroups/test-rg/providers/Microsoft.Compute/galleries/testgallery/images/rhelimagetest/versions/0.0.1
              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: {}
Copy

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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy

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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy

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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy

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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy

Create Infrastructure (with OS configuration) with trusted access enabled

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",
        ManagedResourcesNetworkAccessType = AzureNative.Workloads.ManagedResourcesNetworkAccessType.Private,
        ResourceGroupName = "test-rg",
        SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
        SapVirtualInstanceName = "X00",
        Tags = null,
    });

});
Copy
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"),
			ManagedResourcesNetworkAccessType: pulumi.String(workloads.ManagedResourcesNetworkAccessTypePrivate),
			ResourceGroupName:                 pulumi.String("test-rg"),
			SapProduct:                        pulumi.String(workloads.SAPProductTypeS4HANA),
			SapVirtualInstanceName:            pulumi.String("X00"),
			Tags:                              pulumi.StringMap{},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
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")
            .managedResourcesNetworkAccessType("Private")
            .resourceGroupName("test-rg")
            .sapProduct("S4HANA")
            .sapVirtualInstanceName("X00")
            .tags()
            .build());

    }
}
Copy
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",
    managedResourcesNetworkAccessType: azure_native.workloads.ManagedResourcesNetworkAccessType.Private,
    resourceGroupName: "test-rg",
    sapProduct: azure_native.workloads.SAPProductType.S4HANA,
    sapVirtualInstanceName: "X00",
    tags: {},
});
Copy
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",
    managed_resources_network_access_type=azure_native.workloads.ManagedResourcesNetworkAccessType.PRIVATE,
    resource_group_name="test-rg",
    sap_product=azure_native.workloads.SAPProductType.S4_HANA,
    sap_virtual_instance_name="X00",
    tags={})
Copy
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
      managedResourcesNetworkAccessType: Private
      resourceGroupName: test-rg
      sapProduct: S4HANA
      sapVirtualInstanceName: X00
      tags: {}
Copy

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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy

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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy

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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy

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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy
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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy
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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy
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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy
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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy
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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy
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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy
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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy
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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy

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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy

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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy

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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy

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" },
        },
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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",
    },
});
Copy
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",
    })
Copy
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
Copy

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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy

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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy

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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy

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" },
        },
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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",
    },
});
Copy
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",
    })
Copy
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
Copy

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,
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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: {},
});
Copy
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={})
Copy
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: {}
Copy

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" },
        },
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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",
    },
});
Copy
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",
    })
Copy
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
Copy

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" },
        },
    });

});
Copy
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
	})
}
Copy
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());

    }
}
Copy
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",
    },
});
Copy
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",
    })
Copy
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
Copy

Register with trusted access enabled

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",
        ManagedResourcesNetworkAccessType = AzureNative.Workloads.ManagedResourcesNetworkAccessType.Private,
        ResourceGroupName = "test-rg",
        SapProduct = AzureNative.Workloads.SAPProductType.S4HANA,
        SapVirtualInstanceName = "X00",
        Tags = 
        {
            { "createdby", "abc@microsoft.com" },
            { "test", "abc" },
        },
    });

});
Copy
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"),
			ManagedResourcesNetworkAccessType: pulumi.String(workloads.ManagedResourcesNetworkAccessTypePrivate),
			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
	})
}
Copy
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")
            .managedResourcesNetworkAccessType("Private")
            .resourceGroupName("test-rg")
            .sapProduct("S4HANA")
            .sapVirtualInstanceName("X00")
            .tags(Map.ofEntries(
                Map.entry("createdby", "abc@microsoft.com"),
                Map.entry("test", "abc")
            ))
            .build());

    }
}
Copy
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",
    managedResourcesNetworkAccessType: azure_native.workloads.ManagedResourcesNetworkAccessType.Private,
    resourceGroupName: "test-rg",
    sapProduct: azure_native.workloads.SAPProductType.S4HANA,
    sapVirtualInstanceName: "X00",
    tags: {
        createdby: "abc@microsoft.com",
        test: "abc",
    },
});
Copy
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",
    managed_resources_network_access_type=azure_native.workloads.ManagedResourcesNetworkAccessType.PRIVATE,
    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",
    })
Copy
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
      managedResourcesNetworkAccessType: Private
      resourceGroupName: test-rg
      sapProduct: S4HANA
      sapVirtualInstanceName: X00
      tags:
        createdby: abc@microsoft.com
        test: abc
Copy

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[SAPVirtualInstanceIdentityArgs] = None,
                       location: Optional[str] = None,
                       managed_resource_group_configuration: Optional[ManagedRGConfigurationArgs] = None,
                       managed_resources_network_access_type: Optional[Union[str, ManagedResourcesNetworkAccessType]] = 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 This property is required. string
The unique name of the resource.
args This property is required. SapVirtualInstanceArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. 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 This property is required. string
The unique name of the resource.
args This property is required. SapVirtualInstanceArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. SapVirtualInstanceArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. 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
                {
                    Id = "string",
                    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.SAPVirtualInstanceIdentityArgs
    {
        Type = "string",
        UserAssignedIdentities = new[]
        {
            "string",
        },
    },
    Location = "string",
    ManagedResourceGroupConfiguration = new AzureNative.Workloads.Inputs.ManagedRGConfigurationArgs
    {
        Name = "string",
    },
    ManagedResourcesNetworkAccessType = "string",
    SapVirtualInstanceName = "string",
    Tags = 
    {
        { "string", "string" },
    },
});
Copy
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{
					Id:        "string",
					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.SAPVirtualInstanceIdentityArgs{
		Type: pulumi.String("string"),
		UserAssignedIdentities: pulumi.StringArray{
			pulumi.String("string"),
		},
	},
	Location: pulumi.String("string"),
	ManagedResourceGroupConfiguration: &workloads.ManagedRGConfigurationArgs{
		Name: pulumi.String("string"),
	},
	ManagedResourcesNetworkAccessType: pulumi.String("string"),
	SapVirtualInstanceName:            pulumi.String("string"),
	Tags: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
})
Copy
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()
                    .id("string")
                    .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(SAPVirtualInstanceIdentityArgs.builder()
        .type("string")
        .userAssignedIdentities("string")
        .build())
    .location("string")
    .managedResourceGroupConfiguration(ManagedRGConfigurationArgs.builder()
        .name("string")
        .build())
    .managedResourcesNetworkAccessType("string")
    .sapVirtualInstanceName("string")
    .tags(Map.of("string", "string"))
    .build());
Copy
sap_virtual_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": {
                    "id": "string",
                    "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",
    },
    managed_resources_network_access_type="string",
    sap_virtual_instance_name="string",
    tags={
        "string": "string",
    })
Copy
const sapVirtualInstanceResource = new azure_native.workloads.SapVirtualInstance("sapVirtualInstanceResource", {
    configuration: {
        configurationType: "Deployment",
        appLocation: "string",
        infrastructureConfiguration: {
            appResourceGroup: "string",
            deploymentType: "SingleServer",
            subnetId: "string",
            virtualMachineConfiguration: {
                imageReference: {
                    id: "string",
                    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",
    },
    managedResourcesNetworkAccessType: "string",
    sapVirtualInstanceName: "string",
    tags: {
        string: "string",
    },
});
Copy
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:
                    id: string
                    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
    managedResourcesNetworkAccessType: string
    resourceGroupName: string
    sapProduct: string
    sapVirtualInstanceName: string
    tags:
        string: string
Copy

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 This property is required. 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
This property is required.
Changes to this property will trigger replacement.
string | Pulumi.AzureNative.Workloads.SAPEnvironmentType
Defines the environment type - Production/Non Production.
ResourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the resource group. The name is case insensitive.
SapProduct
This property is required.
Changes to this property will trigger replacement.
string | Pulumi.AzureNative.Workloads.SAPProductType
Defines the SAP Product type.
Identity Pulumi.AzureNative.Workloads.Inputs.SAPVirtualInstanceIdentity
The managed service identities assigned to this resource.
Location Changes to this property will trigger replacement. string
The geo-location where the resource lives
ManagedResourceGroupConfiguration Pulumi.AzureNative.Workloads.Inputs.ManagedRGConfiguration
Managed resource group configuration
ManagedResourcesNetworkAccessType string | Pulumi.AzureNative.Workloads.ManagedResourcesNetworkAccessType
Specifies the network access configuration for the resources that will be deployed in the Managed Resource Group. The options to choose from are Public and Private. If 'Private' is chosen, the Storage Account service tag should be enabled on the subnets in which the SAP VMs exist. This is required for establishing connectivity between VM extensions and the managed resource group storage account. This setting is currently applicable only to Storage Account. Learn more here https://go.microsoft.com/fwlink/?linkid=2247228
SapVirtualInstanceName Changes to this property will trigger replacement. string
The name of the Virtual Instances for SAP solutions resource
Tags Dictionary<string, string>
Resource tags.
Configuration This property is required. 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
This property is required.
Changes to this property will trigger replacement.
string | SAPEnvironmentType
Defines the environment type - Production/Non Production.
ResourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the resource group. The name is case insensitive.
SapProduct
This property is required.
Changes to this property will trigger replacement.
string | SAPProductType
Defines the SAP Product type.
Identity SAPVirtualInstanceIdentityArgs
The managed service identities assigned to this resource.
Location Changes to this property will trigger replacement. string
The geo-location where the resource lives
ManagedResourceGroupConfiguration ManagedRGConfigurationArgs
Managed resource group configuration
ManagedResourcesNetworkAccessType string | ManagedResourcesNetworkAccessType
Specifies the network access configuration for the resources that will be deployed in the Managed Resource Group. The options to choose from are Public and Private. If 'Private' is chosen, the Storage Account service tag should be enabled on the subnets in which the SAP VMs exist. This is required for establishing connectivity between VM extensions and the managed resource group storage account. This setting is currently applicable only to Storage Account. Learn more here https://go.microsoft.com/fwlink/?linkid=2247228
SapVirtualInstanceName Changes to this property will trigger replacement. string
The name of the Virtual Instances for SAP solutions resource
Tags map[string]string
Resource tags.
configuration This property is required. 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
This property is required.
Changes to this property will trigger replacement.
String | SAPEnvironmentType
Defines the environment type - Production/Non Production.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
String
The name of the resource group. The name is case insensitive.
sapProduct
This property is required.
Changes to this property will trigger replacement.
String | SAPProductType
Defines the SAP Product type.
identity SAPVirtualInstanceIdentity
The managed service identities assigned to this resource.
location Changes to this property will trigger replacement. String
The geo-location where the resource lives
managedResourceGroupConfiguration ManagedRGConfiguration
Managed resource group configuration
managedResourcesNetworkAccessType String | ManagedResourcesNetworkAccessType
Specifies the network access configuration for the resources that will be deployed in the Managed Resource Group. The options to choose from are Public and Private. If 'Private' is chosen, the Storage Account service tag should be enabled on the subnets in which the SAP VMs exist. This is required for establishing connectivity between VM extensions and the managed resource group storage account. This setting is currently applicable only to Storage Account. Learn more here https://go.microsoft.com/fwlink/?linkid=2247228
sapVirtualInstanceName Changes to this property will trigger replacement. String
The name of the Virtual Instances for SAP solutions resource
tags Map<String,String>
Resource tags.
configuration This property is required. 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
This property is required.
Changes to this property will trigger replacement.
string | SAPEnvironmentType
Defines the environment type - Production/Non Production.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the resource group. The name is case insensitive.
sapProduct
This property is required.
Changes to this property will trigger replacement.
string | SAPProductType
Defines the SAP Product type.
identity SAPVirtualInstanceIdentity
The managed service identities assigned to this resource.
location Changes to this property will trigger replacement. string
The geo-location where the resource lives
managedResourceGroupConfiguration ManagedRGConfiguration
Managed resource group configuration
managedResourcesNetworkAccessType string | ManagedResourcesNetworkAccessType
Specifies the network access configuration for the resources that will be deployed in the Managed Resource Group. The options to choose from are Public and Private. If 'Private' is chosen, the Storage Account service tag should be enabled on the subnets in which the SAP VMs exist. This is required for establishing connectivity between VM extensions and the managed resource group storage account. This setting is currently applicable only to Storage Account. Learn more here https://go.microsoft.com/fwlink/?linkid=2247228
sapVirtualInstanceName Changes to this property will trigger replacement. string
The name of the Virtual Instances for SAP solutions resource
tags {[key: string]: string}
Resource tags.
configuration This property is required. 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
This property is required.
Changes to this property will trigger replacement.
str | SAPEnvironmentType
Defines the environment type - Production/Non Production.
resource_group_name
This property is required.
Changes to this property will trigger replacement.
str
The name of the resource group. The name is case insensitive.
sap_product
This property is required.
Changes to this property will trigger replacement.
str | SAPProductType
Defines the SAP Product type.
identity SAPVirtualInstanceIdentityArgs
The managed service identities assigned to this resource.
location Changes to this property will trigger replacement. str
The geo-location where the resource lives
managed_resource_group_configuration ManagedRGConfigurationArgs
Managed resource group configuration
managed_resources_network_access_type str | ManagedResourcesNetworkAccessType
Specifies the network access configuration for the resources that will be deployed in the Managed Resource Group. The options to choose from are Public and Private. If 'Private' is chosen, the Storage Account service tag should be enabled on the subnets in which the SAP VMs exist. This is required for establishing connectivity between VM extensions and the managed resource group storage account. This setting is currently applicable only to Storage Account. Learn more here https://go.microsoft.com/fwlink/?linkid=2247228
sap_virtual_instance_name Changes to this property will trigger replacement. str
The name of the Virtual Instances for SAP solutions resource
tags Mapping[str, str]
Resource tags.
configuration This property is required. 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
This property is required.
Changes to this property will trigger replacement.
String | "NonProd" | "Prod"
Defines the environment type - Production/Non Production.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
String
The name of the resource group. The name is case insensitive.
sapProduct
This property is required.
Changes to this property will trigger replacement.
String | "ECC" | "S4HANA" | "Other"
Defines the SAP Product type.
identity Property Map
The managed service identities assigned to this resource.
location Changes to this property will trigger replacement. String
The geo-location where the resource lives
managedResourceGroupConfiguration Property Map
Managed resource group configuration
managedResourcesNetworkAccessType String | "Public" | "Private"
Specifies the network access configuration for the resources that will be deployed in the Managed Resource Group. The options to choose from are Public and Private. If 'Private' is chosen, the Storage Account service tag should be enabled on the subnets in which the SAP VMs exist. This is required for establishing connectivity between VM extensions and the managed resource group storage account. This setting is currently applicable only to Storage Account. Learn more here https://go.microsoft.com/fwlink/?linkid=2247228
sapVirtualInstanceName Changes to this property will trigger replacement. 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:

AzureApiVersion string
The Azure API version of the resource.
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"
AzureApiVersion string
The Azure API version of the resource.
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"
azureApiVersion String
The Azure API version of the resource.
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"
azureApiVersion string
The Azure API version of the resource.
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"
azure_api_version str
The Azure API version of the resource.
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"
azureApiVersion String
The Azure API version of the resource.
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 This property is required. double
The number of app server instances.
SubnetId This property is required. string
The subnet id.
VirtualMachineConfiguration This property is required. Pulumi.AzureNative.Workloads.Inputs.VirtualMachineConfiguration
Gets or sets the virtual machine configuration.
InstanceCount This property is required. float64
The number of app server instances.
SubnetId This property is required. string
The subnet id.
VirtualMachineConfiguration This property is required. VirtualMachineConfiguration
Gets or sets the virtual machine configuration.
instanceCount This property is required. Double
The number of app server instances.
subnetId This property is required. String
The subnet id.
virtualMachineConfiguration This property is required. VirtualMachineConfiguration
Gets or sets the virtual machine configuration.
instanceCount This property is required. number
The number of app server instances.
subnetId This property is required. string
The subnet id.
virtualMachineConfiguration This property is required. VirtualMachineConfiguration
Gets or sets the virtual machine configuration.
instance_count This property is required. float
The number of app server instances.
subnet_id This property is required. str
The subnet id.
virtual_machine_configuration This property is required. VirtualMachineConfiguration
Gets or sets the virtual machine configuration.
instanceCount This property is required. Number
The number of app server instances.
subnetId This property is required. String
The subnet id.
virtualMachineConfiguration This property is required. Property Map
Gets or sets the virtual machine configuration.

ApplicationServerConfigurationResponse
, ApplicationServerConfigurationResponseArgs

InstanceCount This property is required. double
The number of app server instances.
SubnetId This property is required. string
The subnet id.
VirtualMachineConfiguration This property is required. Pulumi.AzureNative.Workloads.Inputs.VirtualMachineConfigurationResponse
Gets or sets the virtual machine configuration.
InstanceCount This property is required. float64
The number of app server instances.
SubnetId This property is required. string
The subnet id.
VirtualMachineConfiguration This property is required. VirtualMachineConfigurationResponse
Gets or sets the virtual machine configuration.
instanceCount This property is required. Double
The number of app server instances.
subnetId This property is required. String
The subnet id.
virtualMachineConfiguration This property is required. VirtualMachineConfigurationResponse
Gets or sets the virtual machine configuration.
instanceCount This property is required. number
The number of app server instances.
subnetId This property is required. string
The subnet id.
virtualMachineConfiguration This property is required. VirtualMachineConfigurationResponse
Gets or sets the virtual machine configuration.
instance_count This property is required. float
The number of app server instances.
subnet_id This property is required. str
The subnet id.
virtual_machine_configuration This property is required. VirtualMachineConfigurationResponse
Gets or sets the virtual machine configuration.
instanceCount This property is required. Number
The number of app server instances.
subnetId This property is required. String
The subnet id.
virtualMachineConfiguration This property is required. 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 This property is required. double
The number of central server VMs.
SubnetId This property is required. string
The subnet id.
VirtualMachineConfiguration This property is required. Pulumi.AzureNative.Workloads.Inputs.VirtualMachineConfiguration
Gets or sets the virtual machine configuration.
InstanceCount This property is required. float64
The number of central server VMs.
SubnetId This property is required. string
The subnet id.
VirtualMachineConfiguration This property is required. VirtualMachineConfiguration
Gets or sets the virtual machine configuration.
instanceCount This property is required. Double
The number of central server VMs.
subnetId This property is required. String
The subnet id.
virtualMachineConfiguration This property is required. VirtualMachineConfiguration
Gets or sets the virtual machine configuration.
instanceCount This property is required. number
The number of central server VMs.
subnetId This property is required. string
The subnet id.
virtualMachineConfiguration This property is required. VirtualMachineConfiguration
Gets or sets the virtual machine configuration.
instance_count This property is required. float
The number of central server VMs.
subnet_id This property is required. str
The subnet id.
virtual_machine_configuration This property is required. VirtualMachineConfiguration
Gets or sets the virtual machine configuration.
instanceCount This property is required. Number
The number of central server VMs.
subnetId This property is required. String
The subnet id.
virtualMachineConfiguration This property is required. Property Map
Gets or sets the virtual machine configuration.

CentralServerConfigurationResponse
, CentralServerConfigurationResponseArgs

InstanceCount This property is required. double
The number of central server VMs.
SubnetId This property is required. string
The subnet id.
VirtualMachineConfiguration This property is required. Pulumi.AzureNative.Workloads.Inputs.VirtualMachineConfigurationResponse
Gets or sets the virtual machine configuration.
InstanceCount This property is required. float64
The number of central server VMs.
SubnetId This property is required. string
The subnet id.
VirtualMachineConfiguration This property is required. VirtualMachineConfigurationResponse
Gets or sets the virtual machine configuration.
instanceCount This property is required. Double
The number of central server VMs.
subnetId This property is required. String
The subnet id.
virtualMachineConfiguration This property is required. VirtualMachineConfigurationResponse
Gets or sets the virtual machine configuration.
instanceCount This property is required. number
The number of central server VMs.
subnetId This property is required. string
The subnet id.
virtualMachineConfiguration This property is required. VirtualMachineConfigurationResponse
Gets or sets the virtual machine configuration.
instance_count This property is required. float
The number of central server VMs.
subnet_id This property is required. str
The subnet id.
virtual_machine_configuration This property is required. VirtualMachineConfigurationResponse
Gets or sets the virtual machine configuration.
instanceCount This property is required. Number
The number of central server VMs.
subnetId This property is required. String
The subnet id.
virtualMachineConfiguration This property is required. 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 This property is required. double
The number of database VMs.
SubnetId This property is required. string
The subnet id.
VirtualMachineConfiguration This property is required. 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 This property is required. float64
The number of database VMs.
SubnetId This property is required. string
The subnet id.
VirtualMachineConfiguration This property is required. VirtualMachineConfiguration
Gets or sets the virtual machine configuration.
DatabaseType string | SAPDatabaseType
The database type.
DiskConfiguration DiskConfiguration
Gets or sets the disk configuration.
instanceCount This property is required. Double
The number of database VMs.
subnetId This property is required. String
The subnet id.
virtualMachineConfiguration This property is required. VirtualMachineConfiguration
Gets or sets the virtual machine configuration.
databaseType String | SAPDatabaseType
The database type.
diskConfiguration DiskConfiguration
Gets or sets the disk configuration.
instanceCount This property is required. number
The number of database VMs.
subnetId This property is required. string
The subnet id.
virtualMachineConfiguration This property is required. VirtualMachineConfiguration
Gets or sets the virtual machine configuration.
databaseType string | SAPDatabaseType
The database type.
diskConfiguration DiskConfiguration
Gets or sets the disk configuration.
instance_count This property is required. float
The number of database VMs.
subnet_id This property is required. str
The subnet id.
virtual_machine_configuration This property is required. 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 This property is required. Number
The number of database VMs.
subnetId This property is required. String
The subnet id.
virtualMachineConfiguration This property is required. 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 This property is required. double
The number of database VMs.
SubnetId This property is required. string
The subnet id.
VirtualMachineConfiguration This property is required. 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 This property is required. float64
The number of database VMs.
SubnetId This property is required. string
The subnet id.
VirtualMachineConfiguration This property is required. VirtualMachineConfigurationResponse
Gets or sets the virtual machine configuration.
DatabaseType string
The database type.
DiskConfiguration DiskConfigurationResponse
Gets or sets the disk configuration.
instanceCount This property is required. Double
The number of database VMs.
subnetId This property is required. String
The subnet id.
virtualMachineConfiguration This property is required. VirtualMachineConfigurationResponse
Gets or sets the virtual machine configuration.
databaseType String
The database type.
diskConfiguration DiskConfigurationResponse
Gets or sets the disk configuration.
instanceCount This property is required. number
The number of database VMs.
subnetId This property is required. string
The subnet id.
virtualMachineConfiguration This property is required. VirtualMachineConfigurationResponse
Gets or sets the virtual machine configuration.
databaseType string
The database type.
diskConfiguration DiskConfigurationResponse
Gets or sets the disk configuration.
instance_count This property is required. float
The number of database VMs.
subnet_id This property is required. str
The subnet id.
virtual_machine_configuration This property is required. VirtualMachineConfigurationResponse
Gets or sets the virtual machine configuration.
database_type str
The database type.
disk_configuration DiskConfigurationResponse
Gets or sets the disk configuration.
instanceCount This property is required. Number
The number of database VMs.
subnetId This property is required. String
The subnet id.
virtualMachineConfiguration This property is required. 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 This property is required. 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 This property is required. 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 This property is required. 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 This property is required. 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 This property is required. 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 This property is required. 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_LRSStandard LRS Disk SKU.
Premium_LRS
Premium_LRSPremium_LRS Disk SKU.
StandardSSD_LRS
StandardSSD_LRSStandardSSD_LRS Disk SKU.
UltraSSD_LRS
UltraSSD_LRSUltraSSD_LRS Disk SKU.
Premium_ZRS
Premium_ZRSPremium_ZRS Disk SKU.
StandardSSD_ZRS
StandardSSD_ZRSStandardSSD_ZRS Disk SKU.
PremiumV2_LRS
PremiumV2_LRSPremiumV2_LRS Disk SKU.
DiskSkuName_Standard_LRS
Standard_LRSStandard LRS Disk SKU.
DiskSkuName_Premium_LRS
Premium_LRSPremium_LRS Disk SKU.
DiskSkuName_StandardSSD_LRS
StandardSSD_LRSStandardSSD_LRS Disk SKU.
DiskSkuName_UltraSSD_LRS
UltraSSD_LRSUltraSSD_LRS Disk SKU.
DiskSkuName_Premium_ZRS
Premium_ZRSPremium_ZRS Disk SKU.
DiskSkuName_StandardSSD_ZRS
StandardSSD_ZRSStandardSSD_ZRS Disk SKU.
DiskSkuName_PremiumV2_LRS
PremiumV2_LRSPremiumV2_LRS Disk SKU.
Standard_LRS
Standard_LRSStandard LRS Disk SKU.
Premium_LRS
Premium_LRSPremium_LRS Disk SKU.
StandardSSD_LRS
StandardSSD_LRSStandardSSD_LRS Disk SKU.
UltraSSD_LRS
UltraSSD_LRSUltraSSD_LRS Disk SKU.
Premium_ZRS
Premium_ZRSPremium_ZRS Disk SKU.
StandardSSD_ZRS
StandardSSD_ZRSStandardSSD_ZRS Disk SKU.
PremiumV2_LRS
PremiumV2_LRSPremiumV2_LRS Disk SKU.
Standard_LRS
Standard_LRSStandard LRS Disk SKU.
Premium_LRS
Premium_LRSPremium_LRS Disk SKU.
StandardSSD_LRS
StandardSSD_LRSStandardSSD_LRS Disk SKU.
UltraSSD_LRS
UltraSSD_LRSUltraSSD_LRS Disk SKU.
Premium_ZRS
Premium_ZRSPremium_ZRS Disk SKU.
StandardSSD_ZRS
StandardSSD_ZRSStandardSSD_ZRS Disk SKU.
PremiumV2_LRS
PremiumV2_LRSPremiumV2_LRS Disk SKU.
STANDARD_LRS
Standard_LRSStandard LRS Disk SKU.
PREMIUM_LRS
Premium_LRSPremium_LRS Disk SKU.
STANDARD_SS_D_LRS
StandardSSD_LRSStandardSSD_LRS Disk SKU.
ULTRA_SS_D_LRS
UltraSSD_LRSUltraSSD_LRS Disk SKU.
PREMIUM_ZRS
Premium_ZRSPremium_ZRS Disk SKU.
STANDARD_SS_D_ZRS
StandardSSD_ZRSStandardSSD_ZRS Disk SKU.
PREMIUM_V2_LRS
PremiumV2_LRSPremiumV2_LRS Disk SKU.
"Standard_LRS"
Standard_LRSStandard LRS Disk SKU.
"Premium_LRS"
Premium_LRSPremium_LRS Disk SKU.
"StandardSSD_LRS"
StandardSSD_LRSStandardSSD_LRS Disk SKU.
"UltraSSD_LRS"
UltraSSD_LRSUltraSSD_LRS Disk SKU.
"Premium_ZRS"
Premium_ZRSPremium_ZRS Disk SKU.
"StandardSSD_ZRS"
StandardSSD_ZRSStandardSSD_ZRS Disk SKU.
"PremiumV2_LRS"
PremiumV2_LRSPremiumV2_LRS Disk SKU.

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 This property is required. string
Service specific error code which serves as the substatus for the HTTP error code.
Details This property is required. List<Pulumi.AzureNative.Workloads.Inputs.ErrorDefinitionResponse>
Internal error details.
Message This property is required. string
Description of the error.
Recommendation This property is required. string
Description of the recommendation.
Code This property is required. string
Service specific error code which serves as the substatus for the HTTP error code.
Details This property is required. []ErrorDefinitionResponse
Internal error details.
Message This property is required. string
Description of the error.
Recommendation This property is required. string
Description of the recommendation.
code This property is required. String
Service specific error code which serves as the substatus for the HTTP error code.
details This property is required. List<ErrorDefinitionResponse>
Internal error details.
message This property is required. String
Description of the error.
recommendation This property is required. String
Description of the recommendation.
code This property is required. string
Service specific error code which serves as the substatus for the HTTP error code.
details This property is required. ErrorDefinitionResponse[]
Internal error details.
message This property is required. string
Description of the error.
recommendation This property is required. string
Description of the recommendation.
code This property is required. str
Service specific error code which serves as the substatus for the HTTP error code.
details This property is required. Sequence[ErrorDefinitionResponse]
Internal error details.
message This property is required. str
Description of the error.
recommendation This property is required. str
Description of the recommendation.
code This property is required. String
Service specific error code which serves as the substatus for the HTTP error code.
details This property is required. List<Property Map>
Internal error details.
message This property is required. String
Description of the error.
recommendation This property is required. 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 This property is required. string | Pulumi.AzureNative.Workloads.SAPHighAvailabilityType
The high availability type.
HighAvailabilityType This property is required. string | SAPHighAvailabilityType
The high availability type.
highAvailabilityType This property is required. String | SAPHighAvailabilityType
The high availability type.
highAvailabilityType This property is required. string | SAPHighAvailabilityType
The high availability type.
high_availability_type This property is required. str | SAPHighAvailabilityType
The high availability type.
highAvailabilityType This property is required. String | "AvailabilitySet" | "AvailabilityZone"
The high availability type.

HighAvailabilityConfigurationResponse
, HighAvailabilityConfigurationResponseArgs

HighAvailabilityType This property is required. string
The high availability type.
HighAvailabilityType This property is required. string
The high availability type.
highAvailabilityType This property is required. String
The high availability type.
highAvailabilityType This property is required. string
The high availability type.
high_availability_type This property is required. str
The high availability type.
highAvailabilityType This property is required. String
The high availability type.

HighAvailabilitySoftwareConfiguration
, HighAvailabilitySoftwareConfigurationArgs

FencingClientId This property is required. string
The fencing client id.
FencingClientPassword This property is required. string
The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
FencingClientId This property is required. string
The fencing client id.
FencingClientPassword This property is required. string
The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
fencingClientId This property is required. String
The fencing client id.
fencingClientPassword This property is required. String
The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
fencingClientId This property is required. string
The fencing client id.
fencingClientPassword This property is required. 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 This property is required. str
The fencing client id.
fencing_client_password This property is required. str
The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
fencingClientId This property is required. String
The fencing client id.
fencingClientPassword This property is required. 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 This property is required. string
The fencing client id.
FencingClientPassword This property is required. string
The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
FencingClientId This property is required. string
The fencing client id.
FencingClientPassword This property is required. string
The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
fencingClientId This property is required. String
The fencing client id.
fencingClientPassword This property is required. String
The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
fencingClientId This property is required. string
The fencing client id.
fencingClientPassword This property is required. 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 This property is required. str
The fencing client id.
fencing_client_password This property is required. str
The fencing client id secret/password. The secret should never expire. This will be used pacemaker to start/stop the cluster VMs.
fencingClientId This property is required. String
The fencing client id.
fencingClientPassword This property is required. 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

Id string
Specifies the ARM resource ID of the Azure Compute Gallery image version used for creating ACSS VMs. You will need to provide this input when you choose to deploy virtual machines in ACSS with OS image from the Azure Compute gallery.
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.
Id string
Specifies the ARM resource ID of the Azure Compute Gallery image version used for creating ACSS VMs. You will need to provide this input when you choose to deploy virtual machines in ACSS with OS image from the Azure Compute gallery.
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.
id String
Specifies the ARM resource ID of the Azure Compute Gallery image version used for creating ACSS VMs. You will need to provide this input when you choose to deploy virtual machines in ACSS with OS image from the Azure Compute gallery.
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.
id string
Specifies the ARM resource ID of the Azure Compute Gallery image version used for creating ACSS VMs. You will need to provide this input when you choose to deploy virtual machines in ACSS with OS image from the Azure Compute gallery.
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.
id str
Specifies the ARM resource ID of the Azure Compute Gallery image version used for creating ACSS VMs. You will need to provide this input when you choose to deploy virtual machines in ACSS with OS image from the Azure Compute gallery.
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.
id String
Specifies the ARM resource ID of the Azure Compute Gallery image version used for creating ACSS VMs. You will need to provide this input when you choose to deploy virtual machines in ACSS with OS image from the Azure Compute gallery.
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

Id string
Specifies the ARM resource ID of the Azure Compute Gallery image version used for creating ACSS VMs. You will need to provide this input when you choose to deploy virtual machines in ACSS with OS image from the Azure Compute gallery.
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.
Id string
Specifies the ARM resource ID of the Azure Compute Gallery image version used for creating ACSS VMs. You will need to provide this input when you choose to deploy virtual machines in ACSS with OS image from the Azure Compute gallery.
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.
id String
Specifies the ARM resource ID of the Azure Compute Gallery image version used for creating ACSS VMs. You will need to provide this input when you choose to deploy virtual machines in ACSS with OS image from the Azure Compute gallery.
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.
id string
Specifies the ARM resource ID of the Azure Compute Gallery image version used for creating ACSS VMs. You will need to provide this input when you choose to deploy virtual machines in ACSS with OS image from the Azure Compute gallery.
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.
id str
Specifies the ARM resource ID of the Azure Compute Gallery image version used for creating ACSS VMs. You will need to provide this input when you choose to deploy virtual machines in ACSS with OS image from the Azure Compute gallery.
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.
id String
Specifies the ARM resource ID of the Azure Compute Gallery image version used for creating ACSS VMs. You will need to provide this input when you choose to deploy virtual machines in ACSS with OS image from the Azure Compute gallery.
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

ManagedResourcesNetworkAccessType
, ManagedResourcesNetworkAccessTypeArgs

Public
PublicManaged resources will be deployed with public network access enabled.
Private
PrivateManaged resources will be deployed with public network access disabled.
ManagedResourcesNetworkAccessTypePublic
PublicManaged resources will be deployed with public network access enabled.
ManagedResourcesNetworkAccessTypePrivate
PrivateManaged resources will be deployed with public network access disabled.
Public
PublicManaged resources will be deployed with public network access enabled.
Private
PrivateManaged resources will be deployed with public network access disabled.
Public
PublicManaged resources will be deployed with public network access enabled.
Private
PrivateManaged resources will be deployed with public network access disabled.
PUBLIC
PublicManaged resources will be deployed with public network access enabled.
PRIVATE
PrivateManaged resources will be deployed with public network access disabled.
"Public"
PublicManaged resources will be deployed with public network access enabled.
"Private"
PrivateManaged resources will be deployed with public network access disabled.

MountFileShareConfiguration
, MountFileShareConfigurationArgs

Id This property is required. string
The fileshare resource ID
PrivateEndpointId This property is required. string
The private endpoint resource ID
Id This property is required. string
The fileshare resource ID
PrivateEndpointId This property is required. string
The private endpoint resource ID
id This property is required. String
The fileshare resource ID
privateEndpointId This property is required. String
The private endpoint resource ID
id This property is required. string
The fileshare resource ID
privateEndpointId This property is required. string
The private endpoint resource ID
id This property is required. str
The fileshare resource ID
private_endpoint_id This property is required. str
The private endpoint resource ID
id This property is required. String
The fileshare resource ID
privateEndpointId This property is required. String
The private endpoint resource ID

MountFileShareConfigurationResponse
, MountFileShareConfigurationResponseArgs

Id This property is required. string
The fileshare resource ID
PrivateEndpointId This property is required. string
The private endpoint resource ID
Id This property is required. string
The fileshare resource ID
PrivateEndpointId This property is required. string
The private endpoint resource ID
id This property is required. String
The fileshare resource ID
privateEndpointId This property is required. String
The private endpoint resource ID
id This property is required. string
The fileshare resource ID
privateEndpointId This property is required. string
The private endpoint resource ID
id This property is required. str
The fileshare resource ID
private_endpoint_id This property is required. str
The private endpoint resource ID
id This property is required. String
The fileshare resource ID
privateEndpointId This property is required. 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 This property is required. string
The URL to the SAP Build of Materials(BOM) file.
SapBitsStorageAccountId This property is required. string
The SAP bits storage account id.
SoftwareVersion This property is required. string
The software version to install.
HighAvailabilitySoftwareConfiguration Pulumi.AzureNative.Workloads.Inputs.HighAvailabilitySoftwareConfiguration
Gets or sets the HA software configuration.
BomUrl This property is required. string
The URL to the SAP Build of Materials(BOM) file.
SapBitsStorageAccountId This property is required. string
The SAP bits storage account id.
SoftwareVersion This property is required. string
The software version to install.
HighAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfiguration
Gets or sets the HA software configuration.
bomUrl This property is required. String
The URL to the SAP Build of Materials(BOM) file.
sapBitsStorageAccountId This property is required. String
The SAP bits storage account id.
softwareVersion This property is required. String
The software version to install.
highAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfiguration
Gets or sets the HA software configuration.
bomUrl This property is required. string
The URL to the SAP Build of Materials(BOM) file.
sapBitsStorageAccountId This property is required. string
The SAP bits storage account id.
softwareVersion This property is required. string
The software version to install.
highAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfiguration
Gets or sets the HA software configuration.
bom_url This property is required. str
The URL to the SAP Build of Materials(BOM) file.
sap_bits_storage_account_id This property is required. str
The SAP bits storage account id.
software_version This property is required. str
The software version to install.
high_availability_software_configuration HighAvailabilitySoftwareConfiguration
Gets or sets the HA software configuration.
bomUrl This property is required. String
The URL to the SAP Build of Materials(BOM) file.
sapBitsStorageAccountId This property is required. String
The SAP bits storage account id.
softwareVersion This property is required. String
The software version to install.
highAvailabilitySoftwareConfiguration Property Map
Gets or sets the HA software configuration.

SAPInstallWithoutOSConfigSoftwareConfigurationResponse
, SAPInstallWithoutOSConfigSoftwareConfigurationResponseArgs

BomUrl This property is required. string
The URL to the SAP Build of Materials(BOM) file.
SapBitsStorageAccountId This property is required. string
The SAP bits storage account id.
SoftwareVersion This property is required. string
The software version to install.
HighAvailabilitySoftwareConfiguration Pulumi.AzureNative.Workloads.Inputs.HighAvailabilitySoftwareConfigurationResponse
Gets or sets the HA software configuration.
BomUrl This property is required. string
The URL to the SAP Build of Materials(BOM) file.
SapBitsStorageAccountId This property is required. string
The SAP bits storage account id.
SoftwareVersion This property is required. string
The software version to install.
HighAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfigurationResponse
Gets or sets the HA software configuration.
bomUrl This property is required. String
The URL to the SAP Build of Materials(BOM) file.
sapBitsStorageAccountId This property is required. String
The SAP bits storage account id.
softwareVersion This property is required. String
The software version to install.
highAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfigurationResponse
Gets or sets the HA software configuration.
bomUrl This property is required. string
The URL to the SAP Build of Materials(BOM) file.
sapBitsStorageAccountId This property is required. string
The SAP bits storage account id.
softwareVersion This property is required. string
The software version to install.
highAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfigurationResponse
Gets or sets the HA software configuration.
bom_url This property is required. str
The URL to the SAP Build of Materials(BOM) file.
sap_bits_storage_account_id This property is required. str
The SAP bits storage account id.
software_version This property is required. str
The software version to install.
high_availability_software_configuration HighAvailabilitySoftwareConfigurationResponse
Gets or sets the HA software configuration.
bomUrl This property is required. String
The URL to the SAP Build of Materials(BOM) file.
sapBitsStorageAccountId This property is required. String
The SAP bits storage account id.
softwareVersion This property is required. 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.

SAPVirtualInstanceIdentity
, SAPVirtualInstanceIdentityArgs

Type This property is required. string | Pulumi.AzureNative.Workloads.SAPVirtualInstanceIdentityType
The type of managed identity assigned to this resource.
UserAssignedIdentities List<string>
The identities assigned to this resource by the user.
Type This property is required. string | SAPVirtualInstanceIdentityType
The type of managed identity assigned to this resource.
UserAssignedIdentities []string
The identities assigned to this resource by the user.
type This property is required. String | SAPVirtualInstanceIdentityType
The type of managed identity assigned to this resource.
userAssignedIdentities List<String>
The identities assigned to this resource by the user.
type This property is required. string | SAPVirtualInstanceIdentityType
The type of managed identity assigned to this resource.
userAssignedIdentities string[]
The identities assigned to this resource by the user.
type This property is required. str | SAPVirtualInstanceIdentityType
The type of managed identity assigned to this resource.
user_assigned_identities Sequence[str]
The identities assigned to this resource by the user.
type This property is required. String | "None" | "UserAssigned"
The type of managed identity assigned to this resource.
userAssignedIdentities List<String>
The identities assigned to this resource by the user.

SAPVirtualInstanceIdentityResponse
, SAPVirtualInstanceIdentityResponseArgs

Type This property is required. string
The type of managed identity assigned to this resource.
UserAssignedIdentities Dictionary<string, Pulumi.AzureNative.Workloads.Inputs.SAPVirtualInstanceIdentityResponseUserAssignedIdentities>
The identities assigned to this resource by the user.
Type This property is required. string
The type of managed identity assigned to this resource.
UserAssignedIdentities map[string]SAPVirtualInstanceIdentityResponseUserAssignedIdentities
The identities assigned to this resource by the user.
type This property is required. String
The type of managed identity assigned to this resource.
userAssignedIdentities Map<String,SAPVirtualInstanceIdentityResponseUserAssignedIdentities>
The identities assigned to this resource by the user.
type This property is required. string
The type of managed identity assigned to this resource.
userAssignedIdentities {[key: string]: SAPVirtualInstanceIdentityResponseUserAssignedIdentities}
The identities assigned to this resource by the user.
type This property is required. str
The type of managed identity assigned to this resource.
user_assigned_identities Mapping[str, SAPVirtualInstanceIdentityResponseUserAssignedIdentities]
The identities assigned to this resource by the user.
type This property is required. String
The type of managed identity assigned to this resource.
userAssignedIdentities Map<Property Map>
The identities assigned to this resource by the user.

SAPVirtualInstanceIdentityResponseUserAssignedIdentities
, SAPVirtualInstanceIdentityResponseUserAssignedIdentitiesArgs

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

SAPVirtualInstanceIdentityType
, SAPVirtualInstanceIdentityTypeArgs

None
NoneNo managed identity.
UserAssigned
UserAssignedUser assigned managed identity.
SAPVirtualInstanceIdentityTypeNone
NoneNo managed identity.
SAPVirtualInstanceIdentityTypeUserAssigned
UserAssignedUser assigned managed identity.
None
NoneNo managed identity.
UserAssigned
UserAssignedUser assigned managed identity.
None
NoneNo managed identity.
UserAssigned
UserAssignedUser assigned managed identity.
NONE
NoneNo managed identity.
USER_ASSIGNED
UserAssignedUser assigned managed identity.
"None"
NoneNo managed identity.
"UserAssigned"
UserAssignedUser assigned managed identity.

ServiceInitiatedSoftwareConfiguration
, ServiceInitiatedSoftwareConfigurationArgs

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

ServiceInitiatedSoftwareConfigurationResponse
, ServiceInitiatedSoftwareConfigurationResponseArgs

BomUrl This property is required. string
The URL to the SAP Build of Materials(BOM) file.
SapBitsStorageAccountId This property is required. string
The SAP bits storage account id.
SapFqdn This property is required. string
The FQDN to set for the SAP system during install.
SoftwareVersion This property is required. string
The software version to install.
SshPrivateKey This property is required. string
The SSH private key.
HighAvailabilitySoftwareConfiguration Pulumi.AzureNative.Workloads.Inputs.HighAvailabilitySoftwareConfigurationResponse
Gets or sets the HA software configuration.
BomUrl This property is required. string
The URL to the SAP Build of Materials(BOM) file.
SapBitsStorageAccountId This property is required. string
The SAP bits storage account id.
SapFqdn This property is required. string
The FQDN to set for the SAP system during install.
SoftwareVersion This property is required. string
The software version to install.
SshPrivateKey This property is required. string
The SSH private key.
HighAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfigurationResponse
Gets or sets the HA software configuration.
bomUrl This property is required. String
The URL to the SAP Build of Materials(BOM) file.
sapBitsStorageAccountId This property is required. String
The SAP bits storage account id.
sapFqdn This property is required. String
The FQDN to set for the SAP system during install.
softwareVersion This property is required. String
The software version to install.
sshPrivateKey This property is required. String
The SSH private key.
highAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfigurationResponse
Gets or sets the HA software configuration.
bomUrl This property is required. string
The URL to the SAP Build of Materials(BOM) file.
sapBitsStorageAccountId This property is required. string
The SAP bits storage account id.
sapFqdn This property is required. string
The FQDN to set for the SAP system during install.
softwareVersion This property is required. string
The software version to install.
sshPrivateKey This property is required. string
The SSH private key.
highAvailabilitySoftwareConfiguration HighAvailabilitySoftwareConfigurationResponse
Gets or sets the HA software configuration.
bom_url This property is required. str
The URL to the SAP Build of Materials(BOM) file.
sap_bits_storage_account_id This property is required. str
The SAP bits storage account id.
sap_fqdn This property is required. str
The FQDN to set for the SAP system during install.
software_version This property is required. str
The software version to install.
ssh_private_key This property is required. str
The SSH private key.
high_availability_software_configuration HighAvailabilitySoftwareConfigurationResponse
Gets or sets the HA software configuration.
bomUrl This property is required. String
The URL to the SAP Build of Materials(BOM) file.
sapBitsStorageAccountId This property is required. String
The SAP bits storage account id.
sapFqdn This property is required. String
The FQDN to set for the SAP system during install.
softwareVersion This property is required. String
The software version to install.
sshPrivateKey This property is required. 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 This property is required. string
The application resource group where SAP system resources will be deployed.
SubnetId This property is required. string
The subnet id.
VirtualMachineConfiguration This property is required. 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 This property is required. string
The application resource group where SAP system resources will be deployed.
SubnetId This property is required. string
The subnet id.
VirtualMachineConfiguration This property is required. 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 This property is required. String
The application resource group where SAP system resources will be deployed.
subnetId This property is required. String
The subnet id.
virtualMachineConfiguration This property is required. 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 This property is required. string
The application resource group where SAP system resources will be deployed.
subnetId This property is required. string
The subnet id.
virtualMachineConfiguration This property is required. 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 This property is required. str
The application resource group where SAP system resources will be deployed.
subnet_id This property is required. str
The subnet id.
virtual_machine_configuration This property is required. 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 This property is required. String
The application resource group where SAP system resources will be deployed.
subnetId This property is required. String
The subnet id.
virtualMachineConfiguration This property is required. 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 This property is required. string
The application resource group where SAP system resources will be deployed.
SubnetId This property is required. string
The subnet id.
VirtualMachineConfiguration This property is required. 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 This property is required. string
The application resource group where SAP system resources will be deployed.
SubnetId This property is required. string
The subnet id.
VirtualMachineConfiguration This property is required. 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 This property is required. String
The application resource group where SAP system resources will be deployed.
subnetId This property is required. String
The subnet id.
virtualMachineConfiguration This property is required. 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 This property is required. string
The application resource group where SAP system resources will be deployed.
subnetId This property is required. string
The subnet id.
virtualMachineConfiguration This property is required. 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 This property is required. str
The application resource group where SAP system resources will be deployed.
subnet_id This property is required. str
The subnet id.
virtual_machine_configuration This property is required. 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 This property is required. String
The application resource group where SAP system resources will be deployed.
subnetId This property is required. String
The subnet id.
virtualMachineConfiguration This property is required. 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 This property is required. string
The application resource group where SAP system resources will be deployed.
ApplicationServer This property is required. Pulumi.AzureNative.Workloads.Inputs.ApplicationServerConfiguration
The application server configuration.
CentralServer This property is required. Pulumi.AzureNative.Workloads.Inputs.CentralServerConfiguration
The central server configuration.
DatabaseServer This property is required. 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 This property is required. string
The application resource group where SAP system resources will be deployed.
ApplicationServer This property is required. ApplicationServerConfiguration
The application server configuration.
CentralServer This property is required. CentralServerConfiguration
The central server configuration.
DatabaseServer This property is required. 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 This property is required. String
The application resource group where SAP system resources will be deployed.
applicationServer This property is required. ApplicationServerConfiguration
The application server configuration.
centralServer This property is required. CentralServerConfiguration
The central server configuration.
databaseServer This property is required. 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 This property is required. string
The application resource group where SAP system resources will be deployed.
applicationServer This property is required. ApplicationServerConfiguration
The application server configuration.
centralServer This property is required. CentralServerConfiguration
The central server configuration.
databaseServer This property is required. 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 This property is required. str
The application resource group where SAP system resources will be deployed.
application_server This property is required. ApplicationServerConfiguration
The application server configuration.
central_server This property is required. CentralServerConfiguration
The central server configuration.
database_server This property is required. 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 This property is required. String
The application resource group where SAP system resources will be deployed.
applicationServer This property is required. Property Map
The application server configuration.
centralServer This property is required. Property Map
The central server configuration.
databaseServer This property is required. 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 This property is required. string
The application resource group where SAP system resources will be deployed.
ApplicationServer This property is required. Pulumi.AzureNative.Workloads.Inputs.ApplicationServerConfigurationResponse
The application server configuration.
CentralServer This property is required. Pulumi.AzureNative.Workloads.Inputs.CentralServerConfigurationResponse
The central server configuration.
DatabaseServer This property is required. 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 This property is required. string
The application resource group where SAP system resources will be deployed.
ApplicationServer This property is required. ApplicationServerConfigurationResponse
The application server configuration.
CentralServer This property is required. CentralServerConfigurationResponse
The central server configuration.
DatabaseServer This property is required. 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 This property is required. String
The application resource group where SAP system resources will be deployed.
applicationServer This property is required. ApplicationServerConfigurationResponse
The application server configuration.
centralServer This property is required. CentralServerConfigurationResponse
The central server configuration.
databaseServer This property is required. 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 This property is required. string
The application resource group where SAP system resources will be deployed.
applicationServer This property is required. ApplicationServerConfigurationResponse
The application server configuration.
centralServer This property is required. CentralServerConfigurationResponse
The central server configuration.
databaseServer This property is required. 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 This property is required. str
The application resource group where SAP system resources will be deployed.
application_server This property is required. ApplicationServerConfigurationResponse
The application server configuration.
central_server This property is required. CentralServerConfigurationResponse
The central server configuration.
database_server This property is required. 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 This property is required. String
The application resource group where SAP system resources will be deployed.
applicationServer This property is required. Property Map
The application server configuration.
centralServer This property is required. Property Map
The central server configuration.
databaseServer This property is required. 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.

VirtualMachineConfiguration
, VirtualMachineConfigurationArgs

ImageReference This property is required. Pulumi.AzureNative.Workloads.Inputs.ImageReference
The image reference.
OsProfile This property is required. Pulumi.AzureNative.Workloads.Inputs.OSProfile
The OS profile.
VmSize This property is required. string
The virtual machine size.
ImageReference This property is required. ImageReference
The image reference.
OsProfile This property is required. OSProfile
The OS profile.
VmSize This property is required. string
The virtual machine size.
imageReference This property is required. ImageReference
The image reference.
osProfile This property is required. OSProfile
The OS profile.
vmSize This property is required. String
The virtual machine size.
imageReference This property is required. ImageReference
The image reference.
osProfile This property is required. OSProfile
The OS profile.
vmSize This property is required. string
The virtual machine size.
image_reference This property is required. ImageReference
The image reference.
os_profile This property is required. OSProfile
The OS profile.
vm_size This property is required. str
The virtual machine size.
imageReference This property is required. Property Map
The image reference.
osProfile This property is required. Property Map
The OS profile.
vmSize This property is required. String
The virtual machine size.

VirtualMachineConfigurationResponse
, VirtualMachineConfigurationResponseArgs

ImageReference This property is required. Pulumi.AzureNative.Workloads.Inputs.ImageReferenceResponse
The image reference.
OsProfile This property is required. Pulumi.AzureNative.Workloads.Inputs.OSProfileResponse
The OS profile.
VmSize This property is required. string
The virtual machine size.
ImageReference This property is required. ImageReferenceResponse
The image reference.
OsProfile This property is required. OSProfileResponse
The OS profile.
VmSize This property is required. string
The virtual machine size.
imageReference This property is required. ImageReferenceResponse
The image reference.
osProfile This property is required. OSProfileResponse
The OS profile.
vmSize This property is required. String
The virtual machine size.
imageReference This property is required. ImageReferenceResponse
The image reference.
osProfile This property is required. OSProfileResponse
The OS profile.
vmSize This property is required. string
The virtual machine size.
image_reference This property is required. ImageReferenceResponse
The image reference.
os_profile This property is required. OSProfileResponse
The OS profile.
vm_size This property is required. str
The virtual machine size.
imageReference This property is required. Property Map
The image reference.
osProfile This property is required. Property Map
The OS profile.
vmSize This property is required. 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} 
Copy

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

Package Details

Repository
Azure Native pulumi/pulumi-azure-native
License
Apache-2.0
This is the latest version of Azure Native. Use the Azure Native v2 docs if using the v2 version of this package.
Azure Native v3.0.1 published on Monday, Apr 7, 2025 by Pulumi