NetworkFunctionArgs

data class NetworkFunctionArgs(val device: Output<SubResourceArgs>? = null, val location: Output<String>? = null, val managedApplicationParameters: Output<Any>? = null, val networkFunctionContainerConfigurations: Output<Any>? = null, val networkFunctionName: Output<String>? = null, val networkFunctionUserConfigurations: Output<List<NetworkFunctionUserConfigurationArgs>>? = null, val resourceGroupName: Output<String>? = null, val skuName: Output<String>? = null, val tags: Output<Map<String, String>>? = null, val vendorName: Output<String>? = null) : ConvertibleToJava<NetworkFunctionArgs>

Network function resource response. Uses Azure REST API version 2022-01-01-preview. In version 1.x of the Azure Native provider, it used API version 2020-01-01-preview. Other available API versions: 2023-09-01, 2024-04-15.

Example Usage

Create network function resource

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var networkFunction = new AzureNative.HybridNetwork.NetworkFunction("networkFunction", new()
{
Device = new AzureNative.HybridNetwork.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourcegroups/rg/providers/Microsoft.HybridNetwork/devices/testDevice",
},
Location = "eastus",
ManagedApplicationParameters = null,
NetworkFunctionName = "testNf",
NetworkFunctionUserConfigurations = new[]
{
new AzureNative.HybridNetwork.Inputs.NetworkFunctionUserConfigurationArgs
{
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.Management,
},
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 = "DC-97-F8-79-16-7D",
NetworkInterfaceName = "nic2",
VmSwitchType = AzureNative.HybridNetwork.VMSwitchType.Wan,
},
},
RoleName = "testRole",
UserDataParameters = null,
},
},
ResourceGroupName = "rg",
SkuName = "testSku",
VendorName = "testVendor",
});
});
package main
import (
hybridnetwork "github.com/pulumi/pulumi-azure-native-sdk/hybridnetwork/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := hybridnetwork.NewNetworkFunction(ctx, "networkFunction", &hybridnetwork.NetworkFunctionArgs{
Device: &hybridnetwork.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourcegroups/rg/providers/Microsoft.HybridNetwork/devices/testDevice"),
},
Location: pulumi.String("eastus"),
ManagedApplicationParameters: pulumi.Any(map[string]interface{}{}),
NetworkFunctionName: pulumi.String("testNf"),
NetworkFunctionUserConfigurations: hybridnetwork.NetworkFunctionUserConfigurationArray{
&hybridnetwork.NetworkFunctionUserConfigurationArgs{
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.VMSwitchTypeManagement),
},
&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("DC-97-F8-79-16-7D"),
NetworkInterfaceName: pulumi.String("nic2"),
VmSwitchType: pulumi.String(hybridnetwork.VMSwitchTypeWan),
},
},
RoleName: pulumi.String("testRole"),
UserDataParameters: pulumi.Any(map[string]interface{}{}),
},
},
ResourceGroupName: pulumi.String("rg"),
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.NetworkFunction;
import com.pulumi.azurenative.hybridnetwork.NetworkFunctionArgs;
import com.pulumi.azurenative.hybridnetwork.inputs.SubResourceArgs;
import com.pulumi.azurenative.hybridnetwork.inputs.NetworkFunctionUserConfigurationArgs;
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 networkFunction = new NetworkFunction("networkFunction", NetworkFunctionArgs.builder()
.device(SubResourceArgs.builder()
.id("/subscriptions/subid/resourcegroups/rg/providers/Microsoft.HybridNetwork/devices/testDevice")
.build())
.location("eastus")
.managedApplicationParameters()
.networkFunctionName("testNf")
.networkFunctionUserConfigurations(NetworkFunctionUserConfigurationArgs.builder()
.networkInterfaces(
NetworkInterfaceArgs.builder()
.ipConfigurations(NetworkInterfaceIPConfigurationArgs.builder()
.gateway("")
.ipAddress("")
.ipAllocationMethod("Dynamic")
.ipVersion("IPv4")
.subnet("")
.build())
.macAddress("")
.networkInterfaceName("nic1")
.vmSwitchType("Management")
.build(),
NetworkInterfaceArgs.builder()
.ipConfigurations(NetworkInterfaceIPConfigurationArgs.builder()
.gateway("")
.ipAddress("")
.ipAllocationMethod("Dynamic")
.ipVersion("IPv4")
.subnet("")
.build())
.macAddress("DC-97-F8-79-16-7D")
.networkInterfaceName("nic2")
.vmSwitchType("Wan")
.build())
.roleName("testRole")
.userDataParameters()
.build())
.resourceGroupName("rg")
.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:NetworkFunction testNf /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridNetwork/networkFunctions/{networkFunctionName}

Constructors

Link copied to clipboard
constructor(device: Output<SubResourceArgs>? = null, location: Output<String>? = null, managedApplicationParameters: Output<Any>? = null, networkFunctionContainerConfigurations: Output<Any>? = null, networkFunctionName: Output<String>? = null, networkFunctionUserConfigurations: Output<List<NetworkFunctionUserConfigurationArgs>>? = null, resourceGroupName: Output<String>? = null, skuName: Output<String>? = null, tags: Output<Map<String, String>>? = null, vendorName: Output<String>? = null)

Properties

Link copied to clipboard
val device: Output<SubResourceArgs>? = null

The reference to the device resource. Once set, it cannot be updated.

Link copied to clipboard
val location: Output<String>? = null

The geo-location where the resource lives

Link copied to clipboard
val managedApplicationParameters: Output<Any>? = null

The parameters for the managed application.

Link copied to clipboard

The network function container configurations from the user.

Link copied to clipboard
val networkFunctionName: Output<String>? = null

Resource name for the network function resource.

Link copied to clipboard

The network function configurations from the user.

Link copied to clipboard
val resourceGroupName: Output<String>? = null

The name of the resource group. The name is case insensitive.

Link copied to clipboard
val skuName: Output<String>? = null

The sku name for the network function. Once set, it cannot be updated.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

Resource tags.

Link copied to clipboard
val vendorName: Output<String>? = null

The vendor name for the network function. Once set, it cannot be updated.

Functions

Link copied to clipboard
open override fun toJava(): NetworkFunctionArgs