VendorSkus

class VendorSkus : KotlinCustomResource

Sku sub resource. Uses Azure REST API version 2022-01-01-preview. In version 2.x of the Azure Native provider, it used API version 2022-01-01-preview.

Example Usage

Create or update the sku of vendor resource

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var vendorSkus = new AzureNative.HybridNetwork.VendorSkus("vendorSkus", new()
{
DeploymentMode = AzureNative.HybridNetwork.SkuDeploymentMode.PrivateEdgeZone,
ManagedApplicationTemplate = null,
NetworkFunctionTemplate = new AzureNative.HybridNetwork.Inputs.NetworkFunctionTemplateArgs
{
NetworkFunctionRoleConfigurations = new[]
{
new AzureNative.HybridNetwork.Inputs.NetworkFunctionRoleConfigurationArgs
{
CustomProfile = new AzureNative.HybridNetwork.Inputs.CustomProfileArgs
{
MetadataConfigurationPath = "/var/logs/network.cfg",
},
NetworkInterfaces = new[]
{
new AzureNative.HybridNetwork.Inputs.NetworkInterfaceArgs
{
IpConfigurations = new[]
{
new AzureNative.HybridNetwork.Inputs.NetworkInterfaceIPConfigurationArgs
{
Gateway = "",
IpAddress = "",
IpAllocationMethod = AzureNative.HybridNetwork.IPAllocationMethod.Dynamic,
IpVersion = AzureNative.HybridNetwork.IPVersion.IPv4,
Subnet = "",
},
},
MacAddress = "",
NetworkInterfaceName = "nic1",
VmSwitchType = AzureNative.HybridNetwork.VMSwitchType.Wan,
},
new AzureNative.HybridNetwork.Inputs.NetworkInterfaceArgs
{
IpConfigurations = new[]
{
new AzureNative.HybridNetwork.Inputs.NetworkInterfaceIPConfigurationArgs
{
Gateway = "",
IpAddress = "",
IpAllocationMethod = AzureNative.HybridNetwork.IPAllocationMethod.Dynamic,
IpVersion = AzureNative.HybridNetwork.IPVersion.IPv4,
Subnet = "",
},
},
MacAddress = "",
NetworkInterfaceName = "nic2",
VmSwitchType = AzureNative.HybridNetwork.VMSwitchType.Management,
},
},
OsProfile = new AzureNative.HybridNetwork.Inputs.OsProfileArgs
{
AdminUsername = "dummyuser",
CustomData = "base-64 encoded string of custom data",
LinuxConfiguration = new AzureNative.HybridNetwork.Inputs.LinuxConfigurationArgs
{
Ssh = new AzureNative.HybridNetwork.Inputs.SshConfigurationArgs
{
PublicKeys = new[]
{
new AzureNative.HybridNetwork.Inputs.SshPublicKeyArgs
{
KeyData = "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAgEAwrr66r8n6B8Y0zMF3dOpXEapIQD9DiYQ6D6/zwor9o39jSkHNiMMER/GETBbzP83LOcekm02aRjo55ArO7gPPVvCXbrirJu9pkm4AC4BBre5xSLS= user@constoso-DSH",
Path = "home/user/.ssh/authorized_keys",
},
},
},
},
},
RoleName = "test",
RoleType = AzureNative.HybridNetwork.NetworkFunctionRoleConfigurationType.VirtualMachine,
StorageProfile = new AzureNative.HybridNetwork.Inputs.StorageProfileArgs
{
DataDisks = new[]
{
new AzureNative.HybridNetwork.Inputs.DataDiskArgs
{
CreateOption = AzureNative.HybridNetwork.DiskCreateOptionTypes.Empty,
DiskSizeGB = 10,
Name = "DataDisk1",
},
},
ImageReference = new AzureNative.HybridNetwork.Inputs.ImageReferenceArgs
{
Offer = "UbuntuServer",
Publisher = "Canonical",
Sku = "18.04-LTS",
Version = "18.04.201804262",
},
OsDisk = new AzureNative.HybridNetwork.Inputs.OsDiskArgs
{
DiskSizeGB = 30,
Name = "vhdName",
OsType = AzureNative.HybridNetwork.OperatingSystemTypes.Linux,
Vhd = new AzureNative.HybridNetwork.Inputs.VirtualHardDiskArgs
{
Uri = "https://contoso.net/link/vnd.vhd?sp=rl&st=2020-10-08T20:38:19Z&se=2020-12-09T19:38:00Z&sv=2019-12-12&sr=b&sig=7BM2f4yOw%3D",
},
},
},
VirtualMachineSize = AzureNative.HybridNetwork.VirtualMachineSizeTypes.Standard_D3_v2,
},
},
},
NetworkFunctionType = AzureNative.HybridNetwork.NetworkFunctionType.VirtualNetworkFunction,
Preview = true,
SkuName = "TestSku",
VendorName = "TestVendor",
});
});
package main
import (
hybridnetwork "github.com/pulumi/pulumi-azure-native-sdk/hybridnetwork/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := hybridnetwork.NewVendorSkus(ctx, "vendorSkus", &hybridnetwork.VendorSkusArgs{
DeploymentMode: pulumi.String(hybridnetwork.SkuDeploymentModePrivateEdgeZone),
ManagedApplicationTemplate: pulumi.Any(map[string]interface{}{}),
NetworkFunctionTemplate: &hybridnetwork.NetworkFunctionTemplateArgs{
NetworkFunctionRoleConfigurations: hybridnetwork.NetworkFunctionRoleConfigurationArray{
&hybridnetwork.NetworkFunctionRoleConfigurationArgs{
CustomProfile: &hybridnetwork.CustomProfileArgs{
MetadataConfigurationPath: pulumi.String("/var/logs/network.cfg"),
},
NetworkInterfaces: hybridnetwork.NetworkInterfaceArray{
&hybridnetwork.NetworkInterfaceArgs{
IpConfigurations: hybridnetwork.NetworkInterfaceIPConfigurationArray{
&hybridnetwork.NetworkInterfaceIPConfigurationArgs{
Gateway: pulumi.String(""),
IpAddress: pulumi.String(""),
IpAllocationMethod: pulumi.String(hybridnetwork.IPAllocationMethodDynamic),
IpVersion: pulumi.String(hybridnetwork.IPVersionIPv4),
Subnet: pulumi.String(""),
},
},
MacAddress: pulumi.String(""),
NetworkInterfaceName: pulumi.String("nic1"),
VmSwitchType: pulumi.String(hybridnetwork.VMSwitchTypeWan),
},
&hybridnetwork.NetworkInterfaceArgs{
IpConfigurations: hybridnetwork.NetworkInterfaceIPConfigurationArray{
&hybridnetwork.NetworkInterfaceIPConfigurationArgs{
Gateway: pulumi.String(""),
IpAddress: pulumi.String(""),
IpAllocationMethod: pulumi.String(hybridnetwork.IPAllocationMethodDynamic),
IpVersion: pulumi.String(hybridnetwork.IPVersionIPv4),
Subnet: pulumi.String(""),
},
},
MacAddress: pulumi.String(""),
NetworkInterfaceName: pulumi.String("nic2"),
VmSwitchType: pulumi.String(hybridnetwork.VMSwitchTypeManagement),
},
},
OsProfile: &hybridnetwork.OsProfileArgs{
AdminUsername: pulumi.String("dummyuser"),
CustomData: pulumi.String("base-64 encoded string of custom data"),
LinuxConfiguration: &hybridnetwork.LinuxConfigurationArgs{
Ssh: &hybridnetwork.SshConfigurationArgs{
PublicKeys: hybridnetwork.SshPublicKeyArray{
&hybridnetwork.SshPublicKeyArgs{
KeyData: pulumi.String("ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAgEAwrr66r8n6B8Y0zMF3dOpXEapIQD9DiYQ6D6/zwor9o39jSkHNiMMER/GETBbzP83LOcekm02aRjo55ArO7gPPVvCXbrirJu9pkm4AC4BBre5xSLS= user@constoso-DSH"),
Path: pulumi.String("home/user/.ssh/authorized_keys"),
},
},
},
},
},
RoleName: pulumi.String("test"),
RoleType: pulumi.String(hybridnetwork.NetworkFunctionRoleConfigurationTypeVirtualMachine),
StorageProfile: &hybridnetwork.StorageProfileArgs{
DataDisks: hybridnetwork.DataDiskArray{
&hybridnetwork.DataDiskArgs{
CreateOption: pulumi.String(hybridnetwork.DiskCreateOptionTypesEmpty),
DiskSizeGB: pulumi.Int(10),
Name: pulumi.String("DataDisk1"),
},
},
ImageReference: &hybridnetwork.ImageReferenceArgs{
Offer: pulumi.String("UbuntuServer"),
Publisher: pulumi.String("Canonical"),
Sku: pulumi.String("18.04-LTS"),
Version: pulumi.String("18.04.201804262"),
},
OsDisk: &hybridnetwork.OsDiskArgs{
DiskSizeGB: pulumi.Int(30),
Name: pulumi.String("vhdName"),
OsType: pulumi.String(hybridnetwork.OperatingSystemTypesLinux),
Vhd: &hybridnetwork.VirtualHardDiskArgs{
Uri: pulumi.String("https://contoso.net/link/vnd.vhd?sp=rl&st=2020-10-08T20:38:19Z&se=2020-12-09T19:38:00Z&sv=2019-12-12&sr=b&sig=7BM2f4yOw%3D"),
},
},
},
VirtualMachineSize: pulumi.String(hybridnetwork.VirtualMachineSizeTypes_Standard_D3_v2),
},
},
},
NetworkFunctionType: pulumi.String(hybridnetwork.NetworkFunctionTypeVirtualNetworkFunction),
Preview: pulumi.Bool(true),
SkuName: pulumi.String("TestSku"),
VendorName: pulumi.String("TestVendor"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.hybridnetwork.VendorSkus;
import com.pulumi.azurenative.hybridnetwork.VendorSkusArgs;
import com.pulumi.azurenative.hybridnetwork.inputs.NetworkFunctionTemplateArgs;
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 vendorSkus = new VendorSkus("vendorSkus", VendorSkusArgs.builder()
.deploymentMode("PrivateEdgeZone")
.managedApplicationTemplate(Map.ofEntries(
))
.networkFunctionTemplate(NetworkFunctionTemplateArgs.builder()
.networkFunctionRoleConfigurations(NetworkFunctionRoleConfigurationArgs.builder()
.customProfile(CustomProfileArgs.builder()
.metadataConfigurationPath("/var/logs/network.cfg")
.build())
.networkInterfaces(
NetworkInterfaceArgs.builder()
.ipConfigurations(NetworkInterfaceIPConfigurationArgs.builder()
.gateway("")
.ipAddress("")
.ipAllocationMethod("Dynamic")
.ipVersion("IPv4")
.subnet("")
.build())
.macAddress("")
.networkInterfaceName("nic1")
.vmSwitchType("Wan")
.build(),
NetworkInterfaceArgs.builder()
.ipConfigurations(NetworkInterfaceIPConfigurationArgs.builder()
.gateway("")
.ipAddress("")
.ipAllocationMethod("Dynamic")
.ipVersion("IPv4")
.subnet("")
.build())
.macAddress("")
.networkInterfaceName("nic2")
.vmSwitchType("Management")
.build())
.osProfile(OsProfileArgs.builder()
.adminUsername("dummyuser")
.customData("base-64 encoded string of custom data")
.linuxConfiguration(LinuxConfigurationArgs.builder()
.ssh(SshConfigurationArgs.builder()
.publicKeys(SshPublicKeyArgs.builder()
.keyData("ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAgEAwrr66r8n6B8Y0zMF3dOpXEapIQD9DiYQ6D6/zwor9o39jSkHNiMMER/GETBbzP83LOcekm02aRjo55ArO7gPPVvCXbrirJu9pkm4AC4BBre5xSLS= user@constoso-DSH")
.path("home/user/.ssh/authorized_keys")
.build())
.build())
.build())
.build())
.roleName("test")
.roleType("VirtualMachine")
.storageProfile(StorageProfileArgs.builder()
.dataDisks(DataDiskArgs.builder()
.createOption("Empty")
.diskSizeGB(10)
.name("DataDisk1")
.build())
.imageReference(ImageReferenceArgs.builder()
.offer("UbuntuServer")
.publisher("Canonical")
.sku("18.04-LTS")
.version("18.04.201804262")
.build())
.osDisk(OsDiskArgs.builder()
.diskSizeGB(30)
.name("vhdName")
.osType("Linux")
.vhd(VirtualHardDiskArgs.builder()
.uri("https://contoso.net/link/vnd.vhd?sp=rl&st=2020-10-08T20:38:19Z&se=2020-12-09T19:38:00Z&sv=2019-12-12&sr=b&sig=7BM2f4yOw%3D")
.build())
.build())
.build())
.virtualMachineSize("Standard_D3_v2")
.build())
.build())
.networkFunctionType("VirtualNetworkFunction")
.preview(true)
.skuName("TestSku")
.vendorName("TestVendor")
.build());
}
}

Import

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

$ pulumi import azure-native:hybridnetwork:VendorSkus TestSku /subscriptions/{subscriptionId}/providers/Microsoft.HybridNetwork/vendors/{vendorName}/vendorSkus/{skuName}

Properties

Link copied to clipboard
val azureApiVersion: Output<String>

The Azure API version of the resource.

Link copied to clipboard
val deploymentMode: Output<String>?

The sku deployment mode.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard

The parameters for the managed application to be supplied by the vendor.

Link copied to clipboard

The template for the managed application deployment.

Link copied to clipboard
val name: Output<String>

The name of the resource

Link copied to clipboard

The template definition of the network function.

Link copied to clipboard

The network function type.

Link copied to clipboard
val preview: Output<Boolean>?

Indicates if the vendor sku is in preview mode.

Link copied to clipboard

The provisioning state of the vendor sku sub resource.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val skuType: Output<String>?

The sku type.

Link copied to clipboard

The system meta data relating to this resource.

Link copied to clipboard
val type: Output<String>

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

Link copied to clipboard
val urn: Output<String>