![JAR search and dependency download from the Maven repository](/logo.png)
com.pulumi.azurenative.hybridnetwork.kotlin.NetworkFunctionDefinitionVersion.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-azure-native-kotlin Show documentation
Show all versions of pulumi-azure-native-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.hybridnetwork.kotlin
import com.pulumi.azurenative.hybridnetwork.kotlin.outputs.ContainerizedNetworkFunctionDefinitionVersionResponse
import com.pulumi.azurenative.hybridnetwork.kotlin.outputs.SystemDataResponse
import com.pulumi.azurenative.hybridnetwork.kotlin.outputs.SystemDataResponse.Companion.toKotlin
import com.pulumi.azurenative.hybridnetwork.kotlin.outputs.VirtualNetworkFunctionNetworkFunctionDefinitionVersionResponse
import com.pulumi.core.Either
import com.pulumi.core.Output
import com.pulumi.kotlin.KotlinCustomResource
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.ResourceMapper
import com.pulumi.kotlin.options.CustomResourceOptions
import com.pulumi.kotlin.options.CustomResourceOptionsBuilder
import com.pulumi.resources.Resource
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.Map
/**
* Builder for [NetworkFunctionDefinitionVersion].
*/
@PulumiTagMarker
public class NetworkFunctionDefinitionVersionResourceBuilder internal constructor() {
public var name: String? = null
public var args: NetworkFunctionDefinitionVersionArgs = NetworkFunctionDefinitionVersionArgs()
public var opts: CustomResourceOptions = CustomResourceOptions()
/**
* @param name The _unique_ name of the resulting resource.
*/
public fun name(`value`: String) {
this.name = value
}
/**
* @param block The arguments to use to populate this resource's properties.
*/
public suspend fun args(block: suspend NetworkFunctionDefinitionVersionArgsBuilder.() -> Unit) {
val builder = NetworkFunctionDefinitionVersionArgsBuilder()
block(builder)
this.args = builder.build()
}
/**
* @param block A bag of options that control this resource's behavior.
*/
public suspend fun opts(block: suspend CustomResourceOptionsBuilder.() -> Unit) {
this.opts = com.pulumi.kotlin.options.CustomResourceOptions.opts(block)
}
internal fun build(): NetworkFunctionDefinitionVersion {
val builtJavaResource =
com.pulumi.azurenative.hybridnetwork.NetworkFunctionDefinitionVersion(
this.name,
this.args.toJava(),
this.opts.toJava(),
)
return NetworkFunctionDefinitionVersion(builtJavaResource)
}
}
/**
* Network function definition version.
* Azure REST API version: 2023-09-01.
* ## Example Usage
* ### Create or update a network function definition version resource
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var networkFunctionDefinitionVersion = new AzureNative.HybridNetwork.NetworkFunctionDefinitionVersion("networkFunctionDefinitionVersion", new()
* {
* Location = "eastus",
* NetworkFunctionDefinitionGroupName = "TestNetworkFunctionDefinitionGroupName",
* NetworkFunctionDefinitionVersionName = "1.0.0",
* Properties = new AzureNative.HybridNetwork.Inputs.ContainerizedNetworkFunctionDefinitionVersionArgs
* {
* DeployParameters = "{\"type\":\"object\",\"properties\":{\"releaseName\":{\"type\":\"string\"},\"namespace\":{\"type\":\"string\"}}}",
* NetworkFunctionTemplate = new AzureNative.HybridNetwork.Inputs.AzureArcKubernetesNetworkFunctionTemplateArgs
* {
* NetworkFunctionApplications = new[]
* {
* new AzureNative.HybridNetwork.Inputs.AzureArcKubernetesHelmApplicationArgs
* {
* ArtifactProfile = new AzureNative.HybridNetwork.Inputs.AzureArcKubernetesArtifactProfileArgs
* {
* ArtifactStore = new AzureNative.HybridNetwork.Inputs.ReferencedResourceArgs
* {
* Id = "/subscriptions/subid/resourcegroups/rg/providers/microsoft.hybridnetwork/publishers/TestPublisher/artifactStores/testArtifactStore",
* },
* HelmArtifactProfile = new AzureNative.HybridNetwork.Inputs.HelmArtifactProfileArgs
* {
* HelmPackageName = "fed-rbac",
* HelmPackageVersionRange = "~2.1.3",
* ImagePullSecretsValuesPaths = new[]
* {
* "global.imagePullSecrets",
* },
* RegistryValuesPaths = new[]
* {
* "global.registry.docker.repoPath",
* },
* },
* },
* ArtifactType = "HelmPackage",
* DependsOnProfile = new AzureNative.HybridNetwork.Inputs.DependsOnProfileArgs
* {
* InstallDependsOn = new() { },
* UninstallDependsOn = new() { },
* UpdateDependsOn = new() { },
* },
* DeployParametersMappingRuleProfile = new AzureNative.HybridNetwork.Inputs.AzureArcKubernetesDeployMappingRuleProfileArgs
* {
* ApplicationEnablement = AzureNative.HybridNetwork.ApplicationEnablement.Enabled,
* HelmMappingRuleProfile = new AzureNative.HybridNetwork.Inputs.HelmMappingRuleProfileArgs
* {
* HelmPackageVersion = "2.1.3",
* Options = new AzureNative.HybridNetwork.Inputs.HelmMappingRuleProfileOptionsArgs
* {
* InstallOptions = new AzureNative.HybridNetwork.Inputs.HelmInstallOptionsArgs
* {
* Atomic = "true",
* Timeout = "30",
* Wait = "true",
* },
* UpgradeOptions = new AzureNative.HybridNetwork.Inputs.HelmUpgradeOptionsArgs
* {
* Atomic = "true",
* Timeout = "30",
* Wait = "true",
* },
* },
* ReleaseName = "{deployParameters.releaseName}",
* ReleaseNamespace = "{deployParameters.namesapce}",
* Values = "",
* },
* },
* Name = "fedrbac",
* },
* },
* NfviType = "AzureArcKubernetes",
* },
* NetworkFunctionType = "ContainerizedNetworkFunction",
* },
* PublisherName = "TestPublisher",
* ResourceGroupName = "rg",
* });
* });
* ```
* ```go
* 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.NewNetworkFunctionDefinitionVersion(ctx, "networkFunctionDefinitionVersion", &hybridnetwork.NetworkFunctionDefinitionVersionArgs{
* Location: pulumi.String("eastus"),
* NetworkFunctionDefinitionGroupName: pulumi.String("TestNetworkFunctionDefinitionGroupName"),
* NetworkFunctionDefinitionVersionName: pulumi.String("1.0.0"),
* Properties: &hybridnetwork.ContainerizedNetworkFunctionDefinitionVersionArgs{
* DeployParameters: pulumi.String("{\"type\":\"object\",\"properties\":{\"releaseName\":{\"type\":\"string\"},\"namespace\":{\"type\":\"string\"}}}"),
* NetworkFunctionTemplate: &hybridnetwork.AzureArcKubernetesNetworkFunctionTemplateArgs{
* NetworkFunctionApplications: hybridnetwork.AzureArcKubernetesHelmApplicationArray{
* &hybridnetwork.AzureArcKubernetesHelmApplicationArgs{
* ArtifactProfile: &hybridnetwork.AzureArcKubernetesArtifactProfileArgs{
* ArtifactStore: &hybridnetwork.ReferencedResourceArgs{
* Id: pulumi.String("/subscriptions/subid/resourcegroups/rg/providers/microsoft.hybridnetwork/publishers/TestPublisher/artifactStores/testArtifactStore"),
* },
* HelmArtifactProfile: &hybridnetwork.HelmArtifactProfileArgs{
* HelmPackageName: pulumi.String("fed-rbac"),
* HelmPackageVersionRange: pulumi.String("~2.1.3"),
* ImagePullSecretsValuesPaths: pulumi.StringArray{
* pulumi.String("global.imagePullSecrets"),
* },
* RegistryValuesPaths: pulumi.StringArray{
* pulumi.String("global.registry.docker.repoPath"),
* },
* },
* },
* ArtifactType: pulumi.String("HelmPackage"),
* DependsOnProfile: &hybridnetwork.DependsOnProfileArgs{
* InstallDependsOn: pulumi.StringArray{},
* UninstallDependsOn: pulumi.StringArray{},
* UpdateDependsOn: pulumi.StringArray{},
* },
* DeployParametersMappingRuleProfile: &hybridnetwork.AzureArcKubernetesDeployMappingRuleProfileArgs{
* ApplicationEnablement: pulumi.String(hybridnetwork.ApplicationEnablementEnabled),
* HelmMappingRuleProfile: &hybridnetwork.HelmMappingRuleProfileArgs{
* HelmPackageVersion: pulumi.String("2.1.3"),
* Options: &hybridnetwork.HelmMappingRuleProfileOptionsArgs{
* InstallOptions: &hybridnetwork.HelmInstallOptionsArgs{
* Atomic: pulumi.String("true"),
* Timeout: pulumi.String("30"),
* Wait: pulumi.String("true"),
* },
* UpgradeOptions: &hybridnetwork.HelmUpgradeOptionsArgs{
* Atomic: pulumi.String("true"),
* Timeout: pulumi.String("30"),
* Wait: pulumi.String("true"),
* },
* },
* ReleaseName: pulumi.String("{deployParameters.releaseName}"),
* ReleaseNamespace: pulumi.String("{deployParameters.namesapce}"),
* Values: pulumi.String(""),
* },
* },
* Name: pulumi.String("fedrbac"),
* },
* },
* NfviType: pulumi.String("AzureArcKubernetes"),
* },
* NetworkFunctionType: pulumi.String("ContainerizedNetworkFunction"),
* },
* PublisherName: pulumi.String("TestPublisher"),
* ResourceGroupName: pulumi.String("rg"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.hybridnetwork.NetworkFunctionDefinitionVersion;
* import com.pulumi.azurenative.hybridnetwork.NetworkFunctionDefinitionVersionArgs;
* 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 networkFunctionDefinitionVersion = new NetworkFunctionDefinitionVersion("networkFunctionDefinitionVersion", NetworkFunctionDefinitionVersionArgs.builder()
* .location("eastus")
* .networkFunctionDefinitionGroupName("TestNetworkFunctionDefinitionGroupName")
* .networkFunctionDefinitionVersionName("1.0.0")
* .properties(ContainerizedNetworkFunctionDefinitionVersionArgs.builder()
* .deployParameters("{\"type\":\"object\",\"properties\":{\"releaseName\":{\"type\":\"string\"},\"namespace\":{\"type\":\"string\"}}}")
* .networkFunctionTemplate(AzureArcKubernetesNetworkFunctionTemplateArgs.builder()
* .networkFunctionApplications(AzureArcKubernetesHelmApplicationArgs.builder()
* .artifactProfile(AzureArcKubernetesArtifactProfileArgs.builder()
* .artifactStore(ReferencedResourceArgs.builder()
* .id("/subscriptions/subid/resourcegroups/rg/providers/microsoft.hybridnetwork/publishers/TestPublisher/artifactStores/testArtifactStore")
* .build())
* .helmArtifactProfile(HelmArtifactProfileArgs.builder()
* .helmPackageName("fed-rbac")
* .helmPackageVersionRange("~2.1.3")
* .imagePullSecretsValuesPaths("global.imagePullSecrets")
* .registryValuesPaths("global.registry.docker.repoPath")
* .build())
* .build())
* .artifactType("HelmPackage")
* .dependsOnProfile(DependsOnProfileArgs.builder()
* .installDependsOn()
* .uninstallDependsOn()
* .updateDependsOn()
* .build())
* .deployParametersMappingRuleProfile(AzureArcKubernetesDeployMappingRuleProfileArgs.builder()
* .applicationEnablement("Enabled")
* .helmMappingRuleProfile(HelmMappingRuleProfileArgs.builder()
* .helmPackageVersion("2.1.3")
* .options(HelmMappingRuleProfileOptionsArgs.builder()
* .installOptions(HelmInstallOptionsArgs.builder()
* .atomic("true")
* .timeout("30")
* .wait("true")
* .build())
* .upgradeOptions(HelmUpgradeOptionsArgs.builder()
* .atomic("true")
* .timeout("30")
* .wait("true")
* .build())
* .build())
* .releaseName("{deployParameters.releaseName}")
* .releaseNamespace("{deployParameters.namesapce}")
* .values("")
* .build())
* .build())
* .name("fedrbac")
* .build())
* .nfviType("AzureArcKubernetes")
* .build())
* .networkFunctionType("ContainerizedNetworkFunction")
* .build())
* .publisherName("TestPublisher")
* .resourceGroupName("rg")
* .build());
* }
* }
* ```
* ### Create or update a network function definition version resource for AzureCore VNF
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var networkFunctionDefinitionVersion = new AzureNative.HybridNetwork.NetworkFunctionDefinitionVersion("networkFunctionDefinitionVersion", new()
* {
* Location = "eastus",
* NetworkFunctionDefinitionGroupName = "TestNetworkFunctionDefinitionGroupName",
* NetworkFunctionDefinitionVersionName = "1.0.0",
* Properties = new AzureNative.HybridNetwork.Inputs.VirtualNetworkFunctionNetworkFunctionDefinitionVersionArgs
* {
* DeployParameters = "{\"virtualMachineName\":{\"type\":\"string\"},\"cpuCores\":{\"type\":\"int\"},\"memorySizeGB\":{\"type\":\"int\"},\"cloudServicesNetworkAttachment\":{\"type\":\"object\",\"properties\":{\"networkAttachmentName\":{\"type\":\"string\"},\"attachedNetworkId\":{\"type\":\"string\"},\"ipAllocationMethod\":{\"type\":\"string\"},\"ipv4Address\":{\"type\":\"string\"},\"ipv6Address\":{\"type\":\"string\"},\"defaultGateway\":{\"type\":\"string\"}},\"required\":[\"attachedNetworkId\",\"ipAllocationMethod\"]},\"networkAttachments\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"networkAttachmentName\":{\"type\":\"string\"},\"attachedNetworkId\":{\"type\":\"string\"},\"ipAllocationMethod\":{\"type\":\"string\"},\"ipv4Address\":{\"type\":\"string\"},\"ipv6Address\":{\"type\":\"string\"},\"defaultGateway\":{\"type\":\"string\"}},\"required\":[\"attachedNetworkId\",\"ipAllocationMethod\"]}},\"storageProfile\":{\"type\":\"object\",\"properties\":{\"osDisk\":{\"type\":\"object\",\"properties\":{\"createOption\":{\"type\":\"string\"},\"deleteOption\":{\"type\":\"string\"},\"diskSizeGB\":{\"type\":\"integer\"}},\"required\":[\"diskSizeGB\"]}},\"required\":[\"osDisk\"]},\"sshPublicKeys\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"keyData\":{\"type\":\"string\"}},\"required\":[\"keyData\"]}},\"userData\":{\"type\":\"string\"},\"adminUsername\":{\"type\":\"string\"},\"bootMethod\":{\"type\":\"string\",\"default\":\"UEFI\",\"enum\":[\"UEFI\",\"BIOS\"]},\"isolateEmulatorThread\":{\"type\":\"string\"},\"virtioInterface\":{\"type\":\"string\"},\"placementHints\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"hintType\":{\"type\":\"string\",\"enum\":[\"Affinity\",\"AntiAffinity\"]},\"resourceId\":{\"type\":\"string\"},\"schedulingExecution\":{\"type\":\"string\",\"enum\":[\"Soft\",\"Hard\"]},\"scope\":{\"type\":\"string\"}},\"required\":[\"hintType\",\"schedulingExecution\",\"resourceId\",\"scope\"]}}}",
* Description = "test NFDV for AzureCore",
* NetworkFunctionTemplate = new AzureNative.HybridNetwork.Inputs.AzureCoreNetworkFunctionTemplateArgs
* {
* NetworkFunctionApplications =
* {
* new AzureNative.HybridNetwork.Inputs.AzureCoreNetworkFunctionVhdApplicationArgs
* {
* ArtifactProfile = new AzureNative.HybridNetwork.Inputs.AzureCoreVhdImageArtifactProfileArgs
* {
* ArtifactStore = new AzureNative.HybridNetwork.Inputs.ReferencedResourceArgs
* {
* Id = "/subscriptions/subid/resourceGroups/rg/providers/microsoft.hybridnetwork/publishers/TestPublisher/artifactStores/TestArtifactStore",
* },
* VhdArtifactProfile = new AzureNative.HybridNetwork.Inputs.VhdImageArtifactProfileArgs
* {
* VhdName = "test-image",
* VhdVersion = "1-0-0",
* },
* },
* ArtifactType = "VhdImageFile",
* DependsOnProfile = new AzureNative.HybridNetwork.Inputs.DependsOnProfileArgs
* {
* InstallDependsOn = new() { },
* UninstallDependsOn = new() { },
* UpdateDependsOn = new() { },
* },
* DeployParametersMappingRuleProfile = new AzureNative.HybridNetwork.Inputs.AzureCoreVhdImageDeployMappingRuleProfileArgs
* {
* ApplicationEnablement = AzureNative.HybridNetwork.ApplicationEnablement.Unknown,
* VhdImageMappingRuleProfile = new AzureNative.HybridNetwork.Inputs.VhdImageMappingRuleProfileArgs
* {
* UserConfiguration = "",
* },
* },
* Name = "testImageRole",
* },
* new AzureNative.HybridNetwork.Inputs.AzureCoreNetworkFunctionArmTemplateApplicationArgs
* {
* ArtifactProfile = new AzureNative.HybridNetwork.Inputs.AzureCoreArmTemplateArtifactProfileArgs
* {
* ArtifactStore = new AzureNative.HybridNetwork.Inputs.ReferencedResourceArgs
* {
* Id = "/subscriptions/subid/resourceGroups/rg/providers/microsoft.hybridnetwork/publishers/TestPublisher/artifactStores/TestArtifactStore",
* },
* TemplateArtifactProfile = new AzureNative.HybridNetwork.Inputs.ArmTemplateArtifactProfileArgs
* {
* TemplateName = "test-template",
* TemplateVersion = "1.0.0",
* },
* },
* ArtifactType = "ArmTemplate",
* DependsOnProfile = new AzureNative.HybridNetwork.Inputs.DependsOnProfileArgs
* {
* InstallDependsOn = new[]
* {
* "testImageRole",
* },
* UninstallDependsOn = new[]
* {
* "testImageRole",
* },
* UpdateDependsOn = new[]
* {
* "testImageRole",
* },
* },
* DeployParametersMappingRuleProfile = new AzureNative.HybridNetwork.Inputs.AzureCoreArmTemplateDeployMappingRuleProfileArgs
* {
* ApplicationEnablement = AzureNative.HybridNetwork.ApplicationEnablement.Unknown,
* TemplateMappingRuleProfile = new AzureNative.HybridNetwork.Inputs.ArmTemplateMappingRuleProfileArgs
* {
* TemplateParameters = "{\"virtualMachineName\":\"{deployParameters.virtualMachineName}\",\"cpuCores\":\"{deployParameters.cpuCores}\",\"memorySizeGB\":\"{deployParameters.memorySizeGB}\",\"cloudServicesNetworkAttachment\":\"{deployParameters.cloudServicesNetworkAttachment}\",\"networkAttachments\":\"{deployParameters.networkAttachments}\",\"sshPublicKeys\":\"{deployParameters.sshPublicKeys}\",\"storageProfile\":\"{deployParameters.storageProfile}\",\"isolateEmulatorThread\":\"{deployParameters.isolateEmulatorThread}\",\"virtioInterface\":\"{deployParameters.virtioInterface}\",\"userData\":\"{deployParameters.userData}\",\"adminUsername\":\"{deployParameters.adminUsername}\",\"bootMethod\":\"{deployParameters.bootMethod}\",\"placementHints\":\"{deployParameters.placementHints}\"}",
* },
* },
* Name = "testTemplateRole",
* },
* },
* NfviType = "AzureCore",
* },
* NetworkFunctionType = "VirtualNetworkFunction",
* },
* PublisherName = "TestPublisher",
* ResourceGroupName = "rg",
* });
* });
* ```
* ```go
* 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.NewNetworkFunctionDefinitionVersion(ctx, "networkFunctionDefinitionVersion", &hybridnetwork.NetworkFunctionDefinitionVersionArgs{
* Location: pulumi.String("eastus"),
* NetworkFunctionDefinitionGroupName: pulumi.String("TestNetworkFunctionDefinitionGroupName"),
* NetworkFunctionDefinitionVersionName: pulumi.String("1.0.0"),
* Properties: &hybridnetwork.VirtualNetworkFunctionNetworkFunctionDefinitionVersionArgs{
* DeployParameters: pulumi.String("{\"virtualMachineName\":{\"type\":\"string\"},\"cpuCores\":{\"type\":\"int\"},\"memorySizeGB\":{\"type\":\"int\"},\"cloudServicesNetworkAttachment\":{\"type\":\"object\",\"properties\":{\"networkAttachmentName\":{\"type\":\"string\"},\"attachedNetworkId\":{\"type\":\"string\"},\"ipAllocationMethod\":{\"type\":\"string\"},\"ipv4Address\":{\"type\":\"string\"},\"ipv6Address\":{\"type\":\"string\"},\"defaultGateway\":{\"type\":\"string\"}},\"required\":[\"attachedNetworkId\",\"ipAllocationMethod\"]},\"networkAttachments\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"networkAttachmentName\":{\"type\":\"string\"},\"attachedNetworkId\":{\"type\":\"string\"},\"ipAllocationMethod\":{\"type\":\"string\"},\"ipv4Address\":{\"type\":\"string\"},\"ipv6Address\":{\"type\":\"string\"},\"defaultGateway\":{\"type\":\"string\"}},\"required\":[\"attachedNetworkId\",\"ipAllocationMethod\"]}},\"storageProfile\":{\"type\":\"object\",\"properties\":{\"osDisk\":{\"type\":\"object\",\"properties\":{\"createOption\":{\"type\":\"string\"},\"deleteOption\":{\"type\":\"string\"},\"diskSizeGB\":{\"type\":\"integer\"}},\"required\":[\"diskSizeGB\"]}},\"required\":[\"osDisk\"]},\"sshPublicKeys\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"keyData\":{\"type\":\"string\"}},\"required\":[\"keyData\"]}},\"userData\":{\"type\":\"string\"},\"adminUsername\":{\"type\":\"string\"},\"bootMethod\":{\"type\":\"string\",\"default\":\"UEFI\",\"enum\":[\"UEFI\",\"BIOS\"]},\"isolateEmulatorThread\":{\"type\":\"string\"},\"virtioInterface\":{\"type\":\"string\"},\"placementHints\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"hintType\":{\"type\":\"string\",\"enum\":[\"Affinity\",\"AntiAffinity\"]},\"resourceId\":{\"type\":\"string\"},\"schedulingExecution\":{\"type\":\"string\",\"enum\":[\"Soft\",\"Hard\"]},\"scope\":{\"type\":\"string\"}},\"required\":[\"hintType\",\"schedulingExecution\",\"resourceId\",\"scope\"]}}}"),
* Description: pulumi.String("test NFDV for AzureCore"),
* NetworkFunctionTemplate: hybridnetwork.AzureCoreNetworkFunctionTemplate{
* NetworkFunctionApplications: []interface{}{
* hybridnetwork.AzureCoreNetworkFunctionVhdApplication{
* ArtifactProfile: hybridnetwork.AzureCoreVhdImageArtifactProfile{
* ArtifactStore: hybridnetwork.ReferencedResource{
* Id: "/subscriptions/subid/resourceGroups/rg/providers/microsoft.hybridnetwork/publishers/TestPublisher/artifactStores/TestArtifactStore",
* },
* VhdArtifactProfile: hybridnetwork.VhdImageArtifactProfile{
* VhdName: "test-image",
* VhdVersion: "1-0-0",
* },
* },
* ArtifactType: "VhdImageFile",
* DependsOnProfile: hybridnetwork.DependsOnProfile{
* InstallDependsOn: []interface{}{},
* UninstallDependsOn: []interface{}{},
* UpdateDependsOn: []interface{}{},
* },
* DeployParametersMappingRuleProfile: hybridnetwork.AzureCoreVhdImageDeployMappingRuleProfile{
* ApplicationEnablement: hybridnetwork.ApplicationEnablementUnknown,
* VhdImageMappingRuleProfile: hybridnetwork.VhdImageMappingRuleProfile{
* UserConfiguration: "",
* },
* },
* Name: "testImageRole",
* },
* hybridnetwork.AzureCoreNetworkFunctionArmTemplateApplication{
* ArtifactProfile: hybridnetwork.AzureCoreArmTemplateArtifactProfile{
* ArtifactStore: hybridnetwork.ReferencedResource{
* Id: "/subscriptions/subid/resourceGroups/rg/providers/microsoft.hybridnetwork/publishers/TestPublisher/artifactStores/TestArtifactStore",
* },
* TemplateArtifactProfile: hybridnetwork.ArmTemplateArtifactProfile{
* TemplateName: "test-template",
* TemplateVersion: "1.0.0",
* },
* },
* ArtifactType: "ArmTemplate",
* DependsOnProfile: hybridnetwork.DependsOnProfile{
* InstallDependsOn: []string{
* "testImageRole",
* },
* UninstallDependsOn: []string{
* "testImageRole",
* },
* UpdateDependsOn: []string{
* "testImageRole",
* },
* },
* DeployParametersMappingRuleProfile: hybridnetwork.AzureCoreArmTemplateDeployMappingRuleProfile{
* ApplicationEnablement: hybridnetwork.ApplicationEnablementUnknown,
* TemplateMappingRuleProfile: hybridnetwork.ArmTemplateMappingRuleProfile{
* TemplateParameters: "{\"virtualMachineName\":\"{deployParameters.virtualMachineName}\",\"cpuCores\":\"{deployParameters.cpuCores}\",\"memorySizeGB\":\"{deployParameters.memorySizeGB}\",\"cloudServicesNetworkAttachment\":\"{deployParameters.cloudServicesNetworkAttachment}\",\"networkAttachments\":\"{deployParameters.networkAttachments}\",\"sshPublicKeys\":\"{deployParameters.sshPublicKeys}\",\"storageProfile\":\"{deployParameters.storageProfile}\",\"isolateEmulatorThread\":\"{deployParameters.isolateEmulatorThread}\",\"virtioInterface\":\"{deployParameters.virtioInterface}\",\"userData\":\"{deployParameters.userData}\",\"adminUsername\":\"{deployParameters.adminUsername}\",\"bootMethod\":\"{deployParameters.bootMethod}\",\"placementHints\":\"{deployParameters.placementHints}\"}",
* },
* },
* Name: "testTemplateRole",
* },
* },
* NfviType: "AzureCore",
* },
* NetworkFunctionType: pulumi.String("VirtualNetworkFunction"),
* },
* PublisherName: pulumi.String("TestPublisher"),
* ResourceGroupName: pulumi.String("rg"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.hybridnetwork.NetworkFunctionDefinitionVersion;
* import com.pulumi.azurenative.hybridnetwork.NetworkFunctionDefinitionVersionArgs;
* 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 networkFunctionDefinitionVersion = new NetworkFunctionDefinitionVersion("networkFunctionDefinitionVersion", NetworkFunctionDefinitionVersionArgs.builder()
* .location("eastus")
* .networkFunctionDefinitionGroupName("TestNetworkFunctionDefinitionGroupName")
* .networkFunctionDefinitionVersionName("1.0.0")
* .properties(VirtualNetworkFunctionNetworkFunctionDefinitionVersionArgs.builder()
* .deployParameters("{\"virtualMachineName\":{\"type\":\"string\"},\"cpuCores\":{\"type\":\"int\"},\"memorySizeGB\":{\"type\":\"int\"},\"cloudServicesNetworkAttachment\":{\"type\":\"object\",\"properties\":{\"networkAttachmentName\":{\"type\":\"string\"},\"attachedNetworkId\":{\"type\":\"string\"},\"ipAllocationMethod\":{\"type\":\"string\"},\"ipv4Address\":{\"type\":\"string\"},\"ipv6Address\":{\"type\":\"string\"},\"defaultGateway\":{\"type\":\"string\"}},\"required\":[\"attachedNetworkId\",\"ipAllocationMethod\"]},\"networkAttachments\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"networkAttachmentName\":{\"type\":\"string\"},\"attachedNetworkId\":{\"type\":\"string\"},\"ipAllocationMethod\":{\"type\":\"string\"},\"ipv4Address\":{\"type\":\"string\"},\"ipv6Address\":{\"type\":\"string\"},\"defaultGateway\":{\"type\":\"string\"}},\"required\":[\"attachedNetworkId\",\"ipAllocationMethod\"]}},\"storageProfile\":{\"type\":\"object\",\"properties\":{\"osDisk\":{\"type\":\"object\",\"properties\":{\"createOption\":{\"type\":\"string\"},\"deleteOption\":{\"type\":\"string\"},\"diskSizeGB\":{\"type\":\"integer\"}},\"required\":[\"diskSizeGB\"]}},\"required\":[\"osDisk\"]},\"sshPublicKeys\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"keyData\":{\"type\":\"string\"}},\"required\":[\"keyData\"]}},\"userData\":{\"type\":\"string\"},\"adminUsername\":{\"type\":\"string\"},\"bootMethod\":{\"type\":\"string\",\"default\":\"UEFI\",\"enum\":[\"UEFI\",\"BIOS\"]},\"isolateEmulatorThread\":{\"type\":\"string\"},\"virtioInterface\":{\"type\":\"string\"},\"placementHints\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"hintType\":{\"type\":\"string\",\"enum\":[\"Affinity\",\"AntiAffinity\"]},\"resourceId\":{\"type\":\"string\"},\"schedulingExecution\":{\"type\":\"string\",\"enum\":[\"Soft\",\"Hard\"]},\"scope\":{\"type\":\"string\"}},\"required\":[\"hintType\",\"schedulingExecution\",\"resourceId\",\"scope\"]}}}")
* .description("test NFDV for AzureCore")
* .networkFunctionTemplate(AzureCoreNetworkFunctionTemplateArgs.builder()
* .networkFunctionApplications(
* AzureCoreNetworkFunctionArmTemplateApplicationArgs.builder()
* .artifactProfile(AzureCoreArmTemplateArtifactProfileArgs.builder()
* .artifactStore(ReferencedResourceArgs.builder()
* .id("/subscriptions/subid/resourceGroups/rg/providers/microsoft.hybridnetwork/publishers/TestPublisher/artifactStores/TestArtifactStore")
* .build())
* .vhdArtifactProfile(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
* .build())
* .artifactType("VhdImageFile")
* .dependsOnProfile(DependsOnProfileArgs.builder()
* .installDependsOn()
* .uninstallDependsOn()
* .updateDependsOn()
* .build())
* .deployParametersMappingRuleProfile(AzureCoreArmTemplateDeployMappingRuleProfileArgs.builder()
* .applicationEnablement("Unknown")
* .vhdImageMappingRuleProfile(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
* .build())
* .name("testImageRole")
* .build(),
* AzureCoreNetworkFunctionArmTemplateApplicationArgs.builder()
* .artifactProfile(AzureCoreArmTemplateArtifactProfileArgs.builder()
* .artifactStore(ReferencedResourceArgs.builder()
* .id("/subscriptions/subid/resourceGroups/rg/providers/microsoft.hybridnetwork/publishers/TestPublisher/artifactStores/TestArtifactStore")
* .build())
* .templateArtifactProfile(ArmTemplateArtifactProfileArgs.builder()
* .templateName("test-template")
* .templateVersion("1.0.0")
* .build())
* .build())
* .artifactType("ArmTemplate")
* .dependsOnProfile(DependsOnProfileArgs.builder()
* .installDependsOn("testImageRole")
* .uninstallDependsOn("testImageRole")
* .updateDependsOn("testImageRole")
* .build())
* .deployParametersMappingRuleProfile(AzureCoreArmTemplateDeployMappingRuleProfileArgs.builder()
* .applicationEnablement("Unknown")
* .templateMappingRuleProfile(ArmTemplateMappingRuleProfileArgs.builder()
* .templateParameters("{\"virtualMachineName\":\"{deployParameters.virtualMachineName}\",\"cpuCores\":\"{deployParameters.cpuCores}\",\"memorySizeGB\":\"{deployParameters.memorySizeGB}\",\"cloudServicesNetworkAttachment\":\"{deployParameters.cloudServicesNetworkAttachment}\",\"networkAttachments\":\"{deployParameters.networkAttachments}\",\"sshPublicKeys\":\"{deployParameters.sshPublicKeys}\",\"storageProfile\":\"{deployParameters.storageProfile}\",\"isolateEmulatorThread\":\"{deployParameters.isolateEmulatorThread}\",\"virtioInterface\":\"{deployParameters.virtioInterface}\",\"userData\":\"{deployParameters.userData}\",\"adminUsername\":\"{deployParameters.adminUsername}\",\"bootMethod\":\"{deployParameters.bootMethod}\",\"placementHints\":\"{deployParameters.placementHints}\"}")
* .build())
* .build())
* .name("testTemplateRole")
* .build())
* .nfviType("AzureCore")
* .build())
* .networkFunctionType("VirtualNetworkFunction")
* .build())
* .publisherName("TestPublisher")
* .resourceGroupName("rg")
* .build());
* }
* }
* ```
* ### Create or update a network function definition version resource for AzureOperatorNexus VNF
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var networkFunctionDefinitionVersion = new AzureNative.HybridNetwork.NetworkFunctionDefinitionVersion("networkFunctionDefinitionVersion", new()
* {
* Location = "eastus",
* NetworkFunctionDefinitionGroupName = "TestNetworkFunctionDefinitionGroupName",
* NetworkFunctionDefinitionVersionName = "1.0.0",
* Properties = new AzureNative.HybridNetwork.Inputs.VirtualNetworkFunctionNetworkFunctionDefinitionVersionArgs
* {
* DeployParameters = "{\"virtualMachineName\":{\"type\":\"string\"},\"extendedLocationName\":{\"type\":\"string\"},\"cpuCores\":{\"type\":\"int\"},\"memorySizeGB\":{\"type\":\"int\"},\"cloudServicesNetworkAttachment\":{\"type\":\"object\",\"properties\":{\"networkAttachmentName\":{\"type\":\"string\"},\"attachedNetworkId\":{\"type\":\"string\"},\"ipAllocationMethod\":{\"type\":\"string\"},\"ipv4Address\":{\"type\":\"string\"},\"ipv6Address\":{\"type\":\"string\"},\"defaultGateway\":{\"type\":\"string\"}},\"required\":[\"attachedNetworkId\",\"ipAllocationMethod\"]},\"networkAttachments\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"networkAttachmentName\":{\"type\":\"string\"},\"attachedNetworkId\":{\"type\":\"string\"},\"ipAllocationMethod\":{\"type\":\"string\"},\"ipv4Address\":{\"type\":\"string\"},\"ipv6Address\":{\"type\":\"string\"},\"defaultGateway\":{\"type\":\"string\"}},\"required\":[\"attachedNetworkId\",\"ipAllocationMethod\"]}},\"storageProfile\":{\"type\":\"object\",\"properties\":{\"osDisk\":{\"type\":\"object\",\"properties\":{\"createOption\":{\"type\":\"string\"},\"deleteOption\":{\"type\":\"string\"},\"diskSizeGB\":{\"type\":\"integer\"}},\"required\":[\"diskSizeGB\"]}},\"required\":[\"osDisk\"]},\"sshPublicKeys\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"keyData\":{\"type\":\"string\"}},\"required\":[\"keyData\"]}},\"userData\":{\"type\":\"string\"},\"adminUsername\":{\"type\":\"string\"},\"bootMethod\":{\"type\":\"string\",\"default\":\"UEFI\",\"enum\":[\"UEFI\",\"BIOS\"]},\"isolateEmulatorThread\":{\"type\":\"string\"},\"virtioInterface\":{\"type\":\"string\"},\"placementHints\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"hintType\":{\"type\":\"string\",\"enum\":[\"Affinity\",\"AntiAffinity\"]},\"resourceId\":{\"type\":\"string\"},\"schedulingExecution\":{\"type\":\"string\",\"enum\":[\"Soft\",\"Hard\"]},\"scope\":{\"type\":\"string\"}},\"required\":[\"hintType\",\"schedulingExecution\",\"resourceId\",\"scope\"]}}}",
* Description = "test NFDV for AzureOperatorNexus",
* NetworkFunctionTemplate = new AzureNative.HybridNetwork.Inputs.AzureOperatorNexusNetworkFunctionTemplateArgs
* {
* NetworkFunctionApplications =
* {
* new AzureNative.HybridNetwork.Inputs.AzureOperatorNexusNetworkFunctionImageApplicationArgs
* {
* ArtifactProfile = new AzureNative.HybridNetwork.Inputs.AzureOperatorNexusImageArtifactProfileArgs
* {
* ArtifactStore = new AzureNative.HybridNetwork.Inputs.ReferencedResourceArgs
* {
* Id = "/subscriptions/subid/resourceGroups/rg/providers/microsoft.hybridnetwork/publishers/TestPublisher/artifactStores/TestArtifactStore",
* },
* ImageArtifactProfile = new AzureNative.HybridNetwork.Inputs.ImageArtifactProfileArgs
* {
* ImageName = "test-image",
* ImageVersion = "1.0.0",
* },
* },
* ArtifactType = "ImageFile",
* DependsOnProfile = new AzureNative.HybridNetwork.Inputs.DependsOnProfileArgs
* {
* InstallDependsOn = new() { },
* UninstallDependsOn = new() { },
* UpdateDependsOn = new() { },
* },
* DeployParametersMappingRuleProfile = new AzureNative.HybridNetwork.Inputs.AzureOperatorNexusImageDeployMappingRuleProfileArgs
* {
* ApplicationEnablement = AzureNative.HybridNetwork.ApplicationEnablement.Unknown,
* ImageMappingRuleProfile = new AzureNative.HybridNetwork.Inputs.ImageMappingRuleProfileArgs
* {
* UserConfiguration = "",
* },
* },
* Name = "testImageRole",
* },
* new AzureNative.HybridNetwork.Inputs.AzureOperatorNexusNetworkFunctionArmTemplateApplicationArgs
* {
* ArtifactProfile = new AzureNative.HybridNetwork.Inputs.AzureOperatorNexusArmTemplateArtifactProfileArgs
* {
* ArtifactStore = new AzureNative.HybridNetwork.Inputs.ReferencedResourceArgs
* {
* Id = "/subscriptions/subid/resourceGroups/rg/providers/microsoft.hybridnetwork/publishers/TestPublisher/artifactStores/TestArtifactStore",
* },
* TemplateArtifactProfile = new AzureNative.HybridNetwork.Inputs.ArmTemplateArtifactProfileArgs
* {
* TemplateName = "test-template",
* TemplateVersion = "1.0.0",
* },
* },
* ArtifactType = "ArmTemplate",
* DependsOnProfile = new AzureNative.HybridNetwork.Inputs.DependsOnProfileArgs
* {
* InstallDependsOn = new[]
* {
* "testImageRole",
* },
* UninstallDependsOn = new[]
* {
* "testImageRole",
* },
* UpdateDependsOn = new[]
* {
* "testImageRole",
* },
* },
* DeployParametersMappingRuleProfile = new AzureNative.HybridNetwork.Inputs.AzureOperatorNexusArmTemplateDeployMappingRuleProfileArgs
* {
* ApplicationEnablement = AzureNative.HybridNetwork.ApplicationEnablement.Unknown,
* TemplateMappingRuleProfile = new AzureNative.HybridNetwork.Inputs.ArmTemplateMappingRuleProfileArgs
* {
* TemplateParameters = "{\"virtualMachineName\":\"{deployParameters.virtualMachineName}\",\"extendedLocationName\":\"{deployParameters.extendedLocationName}\",\"cpuCores\":\"{deployParameters.cpuCores}\",\"memorySizeGB\":\"{deployParameters.memorySizeGB}\",\"cloudServicesNetworkAttachment\":\"{deployParameters.cloudServicesNetworkAttachment}\",\"networkAttachments\":\"{deployParameters.networkAttachments}\",\"sshPublicKeys\":\"{deployParameters.sshPublicKeys}\",\"storageProfile\":\"{deployParameters.storageProfile}\",\"isolateEmulatorThread\":\"{deployParameters.isolateEmulatorThread}\",\"virtioInterface\":\"{deployParameters.virtioInterface}\",\"userData\":\"{deployParameters.userData}\",\"adminUsername\":\"{deployParameters.adminUsername}\",\"bootMethod\":\"{deployParameters.bootMethod}\",\"placementHints\":\"{deployParameters.placementHints}\"}",
* },
* },
* Name = "testTemplateRole",
* },
* },
* NfviType = "AzureOperatorNexus",
* },
* NetworkFunctionType = "VirtualNetworkFunction",
* },
* PublisherName = "TestPublisher",
* ResourceGroupName = "rg",
* });
* });
* ```
* ```go
* 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.NewNetworkFunctionDefinitionVersion(ctx, "networkFunctionDefinitionVersion", &hybridnetwork.NetworkFunctionDefinitionVersionArgs{
* Location: pulumi.String("eastus"),
* NetworkFunctionDefinitionGroupName: pulumi.String("TestNetworkFunctionDefinitionGroupName"),
* NetworkFunctionDefinitionVersionName: pulumi.String("1.0.0"),
* Properties: &hybridnetwork.VirtualNetworkFunctionNetworkFunctionDefinitionVersionArgs{
* DeployParameters: pulumi.String("{\"virtualMachineName\":{\"type\":\"string\"},\"extendedLocationName\":{\"type\":\"string\"},\"cpuCores\":{\"type\":\"int\"},\"memorySizeGB\":{\"type\":\"int\"},\"cloudServicesNetworkAttachment\":{\"type\":\"object\",\"properties\":{\"networkAttachmentName\":{\"type\":\"string\"},\"attachedNetworkId\":{\"type\":\"string\"},\"ipAllocationMethod\":{\"type\":\"string\"},\"ipv4Address\":{\"type\":\"string\"},\"ipv6Address\":{\"type\":\"string\"},\"defaultGateway\":{\"type\":\"string\"}},\"required\":[\"attachedNetworkId\",\"ipAllocationMethod\"]},\"networkAttachments\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"networkAttachmentName\":{\"type\":\"string\"},\"attachedNetworkId\":{\"type\":\"string\"},\"ipAllocationMethod\":{\"type\":\"string\"},\"ipv4Address\":{\"type\":\"string\"},\"ipv6Address\":{\"type\":\"string\"},\"defaultGateway\":{\"type\":\"string\"}},\"required\":[\"attachedNetworkId\",\"ipAllocationMethod\"]}},\"storageProfile\":{\"type\":\"object\",\"properties\":{\"osDisk\":{\"type\":\"object\",\"properties\":{\"createOption\":{\"type\":\"string\"},\"deleteOption\":{\"type\":\"string\"},\"diskSizeGB\":{\"type\":\"integer\"}},\"required\":[\"diskSizeGB\"]}},\"required\":[\"osDisk\"]},\"sshPublicKeys\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"keyData\":{\"type\":\"string\"}},\"required\":[\"keyData\"]}},\"userData\":{\"type\":\"string\"},\"adminUsername\":{\"type\":\"string\"},\"bootMethod\":{\"type\":\"string\",\"default\":\"UEFI\",\"enum\":[\"UEFI\",\"BIOS\"]},\"isolateEmulatorThread\":{\"type\":\"string\"},\"virtioInterface\":{\"type\":\"string\"},\"placementHints\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"hintType\":{\"type\":\"string\",\"enum\":[\"Affinity\",\"AntiAffinity\"]},\"resourceId\":{\"type\":\"string\"},\"schedulingExecution\":{\"type\":\"string\",\"enum\":[\"Soft\",\"Hard\"]},\"scope\":{\"type\":\"string\"}},\"required\":[\"hintType\",\"schedulingExecution\",\"resourceId\",\"scope\"]}}}"),
* Description: pulumi.String("test NFDV for AzureOperatorNexus"),
* NetworkFunctionTemplate: hybridnetwork.AzureOperatorNexusNetworkFunctionTemplate{
* NetworkFunctionApplications: []interface{}{
* hybridnetwork.AzureOperatorNexusNetworkFunctionImageApplication{
* ArtifactProfile: hybridnetwork.AzureOperatorNexusImageArtifactProfile{
* ArtifactStore: hybridnetwork.ReferencedResource{
* Id: "/subscriptions/subid/resourceGroups/rg/providers/microsoft.hybridnetwork/publishers/TestPublisher/artifactStores/TestArtifactStore",
* },
* ImageArtifactProfile: hybridnetwork.ImageArtifactProfile{
* ImageName: "test-image",
* ImageVersion: "1.0.0",
* },
* },
* ArtifactType: "ImageFile",
* DependsOnProfile: hybridnetwork.DependsOnProfile{
* InstallDependsOn: []interface{}{},
* UninstallDependsOn: []interface{}{},
* UpdateDependsOn: []interface{}{},
* },
* DeployParametersMappingRuleProfile: hybridnetwork.AzureOperatorNexusImageDeployMappingRuleProfile{
* ApplicationEnablement: hybridnetwork.ApplicationEnablementUnknown,
* ImageMappingRuleProfile: hybridnetwork.ImageMappingRuleProfile{
* UserConfiguration: "",
* },
* },
* Name: "testImageRole",
* },
* hybridnetwork.AzureOperatorNexusNetworkFunctionArmTemplateApplication{
* ArtifactProfile: hybridnetwork.AzureOperatorNexusArmTemplateArtifactProfile{
* ArtifactStore: hybridnetwork.ReferencedResource{
* Id: "/subscriptions/subid/resourceGroups/rg/providers/microsoft.hybridnetwork/publishers/TestPublisher/artifactStores/TestArtifactStore",
* },
* TemplateArtifactProfile: hybridnetwork.ArmTemplateArtifactProfile{
* TemplateName: "test-template",
* TemplateVersion: "1.0.0",
* },
* },
* ArtifactType: "ArmTemplate",
* DependsOnProfile: hybridnetwork.DependsOnProfile{
* InstallDependsOn: []string{
* "testImageRole",
* },
* UninstallDependsOn: []string{
* "testImageRole",
* },
* UpdateDependsOn: []string{
* "testImageRole",
* },
* },
* DeployParametersMappingRuleProfile: hybridnetwork.AzureOperatorNexusArmTemplateDeployMappingRuleProfile{
* ApplicationEnablement: hybridnetwork.ApplicationEnablementUnknown,
* TemplateMappingRuleProfile: hybridnetwork.ArmTemplateMappingRuleProfile{
* TemplateParameters: "{\"virtualMachineName\":\"{deployParameters.virtualMachineName}\",\"extendedLocationName\":\"{deployParameters.extendedLocationName}\",\"cpuCores\":\"{deployParameters.cpuCores}\",\"memorySizeGB\":\"{deployParameters.memorySizeGB}\",\"cloudServicesNetworkAttachment\":\"{deployParameters.cloudServicesNetworkAttachment}\",\"networkAttachments\":\"{deployParameters.networkAttachments}\",\"sshPublicKeys\":\"{deployParameters.sshPublicKeys}\",\"storageProfile\":\"{deployParameters.storageProfile}\",\"isolateEmulatorThread\":\"{deployParameters.isolateEmulatorThread}\",\"virtioInterface\":\"{deployParameters.virtioInterface}\",\"userData\":\"{deployParameters.userData}\",\"adminUsername\":\"{deployParameters.adminUsername}\",\"bootMethod\":\"{deployParameters.bootMethod}\",\"placementHints\":\"{deployParameters.placementHints}\"}",
* },
* },
* Name: "testTemplateRole",
* },
* },
* NfviType: "AzureOperatorNexus",
* },
* NetworkFunctionType: pulumi.String("VirtualNetworkFunction"),
* },
* PublisherName: pulumi.String("TestPublisher"),
* ResourceGroupName: pulumi.String("rg"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.hybridnetwork.NetworkFunctionDefinitionVersion;
* import com.pulumi.azurenative.hybridnetwork.NetworkFunctionDefinitionVersionArgs;
* 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 networkFunctionDefinitionVersion = new NetworkFunctionDefinitionVersion("networkFunctionDefinitionVersion", NetworkFunctionDefinitionVersionArgs.builder()
* .location("eastus")
* .networkFunctionDefinitionGroupName("TestNetworkFunctionDefinitionGroupName")
* .networkFunctionDefinitionVersionName("1.0.0")
* .properties(VirtualNetworkFunctionNetworkFunctionDefinitionVersionArgs.builder()
* .deployParameters("{\"virtualMachineName\":{\"type\":\"string\"},\"extendedLocationName\":{\"type\":\"string\"},\"cpuCores\":{\"type\":\"int\"},\"memorySizeGB\":{\"type\":\"int\"},\"cloudServicesNetworkAttachment\":{\"type\":\"object\",\"properties\":{\"networkAttachmentName\":{\"type\":\"string\"},\"attachedNetworkId\":{\"type\":\"string\"},\"ipAllocationMethod\":{\"type\":\"string\"},\"ipv4Address\":{\"type\":\"string\"},\"ipv6Address\":{\"type\":\"string\"},\"defaultGateway\":{\"type\":\"string\"}},\"required\":[\"attachedNetworkId\",\"ipAllocationMethod\"]},\"networkAttachments\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"networkAttachmentName\":{\"type\":\"string\"},\"attachedNetworkId\":{\"type\":\"string\"},\"ipAllocationMethod\":{\"type\":\"string\"},\"ipv4Address\":{\"type\":\"string\"},\"ipv6Address\":{\"type\":\"string\"},\"defaultGateway\":{\"type\":\"string\"}},\"required\":[\"attachedNetworkId\",\"ipAllocationMethod\"]}},\"storageProfile\":{\"type\":\"object\",\"properties\":{\"osDisk\":{\"type\":\"object\",\"properties\":{\"createOption\":{\"type\":\"string\"},\"deleteOption\":{\"type\":\"string\"},\"diskSizeGB\":{\"type\":\"integer\"}},\"required\":[\"diskSizeGB\"]}},\"required\":[\"osDisk\"]},\"sshPublicKeys\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"keyData\":{\"type\":\"string\"}},\"required\":[\"keyData\"]}},\"userData\":{\"type\":\"string\"},\"adminUsername\":{\"type\":\"string\"},\"bootMethod\":{\"type\":\"string\",\"default\":\"UEFI\",\"enum\":[\"UEFI\",\"BIOS\"]},\"isolateEmulatorThread\":{\"type\":\"string\"},\"virtioInterface\":{\"type\":\"string\"},\"placementHints\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"hintType\":{\"type\":\"string\",\"enum\":[\"Affinity\",\"AntiAffinity\"]},\"resourceId\":{\"type\":\"string\"},\"schedulingExecution\":{\"type\":\"string\",\"enum\":[\"Soft\",\"Hard\"]},\"scope\":{\"type\":\"string\"}},\"required\":[\"hintType\",\"schedulingExecution\",\"resourceId\",\"scope\"]}}}")
* .description("test NFDV for AzureOperatorNexus")
* .networkFunctionTemplate(AzureOperatorNexusNetworkFunctionTemplateArgs.builder()
* .networkFunctionApplications(
* AzureOperatorNexusNetworkFunctionArmTemplateApplicationArgs.builder()
* .artifactProfile(AzureOperatorNexusArmTemplateArtifactProfileArgs.builder()
* .artifactStore(ReferencedResourceArgs.builder()
* .id("/subscriptions/subid/resourceGroups/rg/providers/microsoft.hybridnetwork/publishers/TestPublisher/artifactStores/TestArtifactStore")
* .build())
* .imageArtifactProfile(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
* .build())
* .artifactType("ImageFile")
* .dependsOnProfile(DependsOnProfileArgs.builder()
* .installDependsOn()
* .uninstallDependsOn()
* .updateDependsOn()
* .build())
* .deployParametersMappingRuleProfile(AzureOperatorNexusArmTemplateDeployMappingRuleProfileArgs.builder()
* .applicationEnablement("Unknown")
* .imageMappingRuleProfile(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
* .build())
* .name("testImageRole")
* .build(),
* AzureOperatorNexusNetworkFunctionArmTemplateApplicationArgs.builder()
* .artifactProfile(AzureOperatorNexusArmTemplateArtifactProfileArgs.builder()
* .artifactStore(ReferencedResourceArgs.builder()
* .id("/subscriptions/subid/resourceGroups/rg/providers/microsoft.hybridnetwork/publishers/TestPublisher/artifactStores/TestArtifactStore")
* .build())
* .templateArtifactProfile(ArmTemplateArtifactProfileArgs.builder()
* .templateName("test-template")
* .templateVersion("1.0.0")
* .build())
* .build())
* .artifactType("ArmTemplate")
* .dependsOnProfile(DependsOnProfileArgs.builder()
* .installDependsOn("testImageRole")
* .uninstallDependsOn("testImageRole")
* .updateDependsOn("testImageRole")
* .build())
* .deployParametersMappingRuleProfile(AzureOperatorNexusArmTemplateDeployMappingRuleProfileArgs.builder()
* .applicationEnablement("Unknown")
* .templateMappingRuleProfile(ArmTemplateMappingRuleProfileArgs.builder()
* .templateParameters("{\"virtualMachineName\":\"{deployParameters.virtualMachineName}\",\"extendedLocationName\":\"{deployParameters.extendedLocationName}\",\"cpuCores\":\"{deployParameters.cpuCores}\",\"memorySizeGB\":\"{deployParameters.memorySizeGB}\",\"cloudServicesNetworkAttachment\":\"{deployParameters.cloudServicesNetworkAttachment}\",\"networkAttachments\":\"{deployParameters.networkAttachments}\",\"sshPublicKeys\":\"{deployParameters.sshPublicKeys}\",\"storageProfile\":\"{deployParameters.storageProfile}\",\"isolateEmulatorThread\":\"{deployParameters.isolateEmulatorThread}\",\"virtioInterface\":\"{deployParameters.virtioInterface}\",\"userData\":\"{deployParameters.userData}\",\"adminUsername\":\"{deployParameters.adminUsername}\",\"bootMethod\":\"{deployParameters.bootMethod}\",\"placementHints\":\"{deployParameters.placementHints}\"}")
* .build())
* .build())
* .name("testTemplateRole")
* .build())
* .nfviType("AzureOperatorNexus")
* .build())
* .networkFunctionType("VirtualNetworkFunction")
* .build())
* .publisherName("TestPublisher")
* .resourceGroupName("rg")
* .build());
* }
* }
* ```
* ## Import
* An existing resource can be imported using its type token, name, and identifier, e.g.
* ```sh
* $ pulumi import azure-native:hybridnetwork:NetworkFunctionDefinitionVersion TestVersion /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridNetwork/publishers/{publisherName}/networkFunctionDefinitionGroups/{networkFunctionDefinitionGroupName}/networkFunctionDefinitionVersions/{networkFunctionDefinitionVersionName}
* ```
*/
public class NetworkFunctionDefinitionVersion internal constructor(
override val javaResource: com.pulumi.azurenative.hybridnetwork.NetworkFunctionDefinitionVersion,
) : KotlinCustomResource(javaResource, NetworkFunctionDefinitionVersionMapper) {
/**
* The geo-location where the resource lives
*/
public val location: Output
get() = javaResource.location().applyValue({ args0 -> args0 })
/**
* The name of the resource
*/
public val name: Output
get() = javaResource.name().applyValue({ args0 -> args0 })
/**
* Network function definition version properties.
*/
public val properties:
Output>
get() = javaResource.properties().applyValue({ args0 ->
args0.transform(
{ args0 ->
args0.let({ args0 ->
com.pulumi.azurenative.hybridnetwork.kotlin.outputs.ContainerizedNetworkFunctionDefinitionVersionResponse.Companion.toKotlin(args0)
})
},
{ args0 ->
args0.let({ args0 ->
com.pulumi.azurenative.hybridnetwork.kotlin.outputs.VirtualNetworkFunctionNetworkFunctionDefinitionVersionResponse.Companion.toKotlin(args0)
})
},
)
})
/**
* Azure Resource Manager metadata containing createdBy and modifiedBy information.
*/
public val systemData: Output
get() = javaResource.systemData().applyValue({ args0 -> args0.let({ args0 -> toKotlin(args0) }) })
/**
* Resource tags.
*/
public val tags: Output
© 2015 - 2025 Weber Informatics LLC | Privacy Policy