ARM template resource definition
The publishers/networkFunctionDefinitionGroups/networkFunctionDefinitionVersions resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
To create a Microsoft.HybridNetwork/publishers/networkFunctionDefinitionGroups/networkFunctionDefinitionVersions resource, add the following JSON to your template.
{
"type": "Microsoft.HybridNetwork/publishers/networkFunctionDefinitionGroups/networkFunctionDefinitionVersions",
"apiVersion": "2023-09-01",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"properties": {
"deployParameters": "string",
"description": "string",
"networkFunctionType": "string"
// For remaining properties, see NetworkFunctionDefinitionVersionPropertiesFormat objects
}
}
Set the networkFunctionType property to specify the type of object.
For ContainerizedNetworkFunction, use:
"networkFunctionType": "ContainerizedNetworkFunction",
"networkFunctionTemplate": {
"nfviType": "string"
// For remaining properties, see ContainerizedNetworkFunctionTemplate objects
}
For VirtualNetworkFunction, use:
"networkFunctionType": "VirtualNetworkFunction",
"networkFunctionTemplate": {
"nfviType": "string"
// For remaining properties, see VirtualNetworkFunctionTemplate objects
}
ContainerizedNetworkFunctionTemplate objects
Set the nfviType property to specify the type of object.
For AzureArcKubernetes, use:
"nfviType": "AzureArcKubernetes",
"networkFunctionApplications": [
{
"dependsOnProfile": {
"installDependsOn": [ "string" ],
"uninstallDependsOn": [ "string" ],
"updateDependsOn": [ "string" ]
},
"name": "string",
"artifactType": "string"
// For remaining properties, see AzureArcKubernetesNetworkFunctionApplication objects
}
]
AzureArcKubernetesNetworkFunctionApplication objects
Set the artifactType property to specify the type of object.
For HelmPackage, use:
"artifactType": "HelmPackage",
"artifactProfile": {
"artifactStore": {
"id": "string"
},
"helmArtifactProfile": {
"helmPackageName": "string",
"helmPackageVersionRange": "string",
"imagePullSecretsValuesPaths": [ "string" ],
"registryValuesPaths": [ "string" ]
}
},
"deployParametersMappingRuleProfile": {
"applicationEnablement": "string",
"helmMappingRuleProfile": {
"helmPackageVersion": "string",
"options": {
"installOptions": {
"atomic": "string",
"timeout": "string",
"wait": "string"
},
"upgradeOptions": {
"atomic": "string",
"timeout": "string",
"wait": "string"
}
},
"releaseName": "string",
"releaseNamespace": "string",
"values": "string"
}
}
VirtualNetworkFunctionTemplate objects
Set the nfviType property to specify the type of object.
For AzureCore, use:
"nfviType": "AzureCore",
"networkFunctionApplications": [
{
"dependsOnProfile": {
"installDependsOn": [ "string" ],
"uninstallDependsOn": [ "string" ],
"updateDependsOn": [ "string" ]
},
"name": "string",
"artifactType": "string"
// For remaining properties, see AzureCoreNetworkFunctionApplication objects
}
]
For AzureOperatorNexus, use:
"nfviType": "AzureOperatorNexus",
"networkFunctionApplications": [
{
"dependsOnProfile": {
"installDependsOn": [ "string" ],
"uninstallDependsOn": [ "string" ],
"updateDependsOn": [ "string" ]
},
"name": "string",
"artifactType": "string"
// For remaining properties, see AzureOperatorNexusNetworkFunctionApplication objects
}
]
AzureCoreNetworkFunctionApplication objects
Set the artifactType property to specify the type of object.
For ArmTemplate, use:
"artifactType": "ArmTemplate",
"artifactProfile": {
"artifactStore": {
"id": "string"
},
"templateArtifactProfile": {
"templateName": "string",
"templateVersion": "string"
}
},
"deployParametersMappingRuleProfile": {
"applicationEnablement": "string",
"templateMappingRuleProfile": {
"templateParameters": "string"
}
}
For VhdImageFile, use:
"artifactType": "VhdImageFile",
"artifactProfile": {
"artifactStore": {
"id": "string"
},
"vhdArtifactProfile": {
"vhdName": "string",
"vhdVersion": "string"
}
},
"deployParametersMappingRuleProfile": {
"applicationEnablement": "string",
"vhdImageMappingRuleProfile": {
"userConfiguration": "string"
}
}
AzureOperatorNexusNetworkFunctionApplication objects
Set the artifactType property to specify the type of object.
For ArmTemplate, use:
"artifactType": "ArmTemplate",
"artifactProfile": {
"artifactStore": {
"id": "string"
},
"templateArtifactProfile": {
"templateName": "string",
"templateVersion": "string"
}
},
"deployParametersMappingRuleProfile": {
"applicationEnablement": "string",
"templateMappingRuleProfile": {
"templateParameters": "string"
}
}
For ImageFile, use:
"artifactType": "ImageFile",
"artifactProfile": {
"artifactStore": {
"id": "string"
},
"imageArtifactProfile": {
"imageName": "string",
"imageVersion": "string"
}
},
"deployParametersMappingRuleProfile": {
"applicationEnablement": "string",
"imageMappingRuleProfile": {
"userConfiguration": "string"
}
}
Property values
publishers/networkFunctionDefinitionGroups/networkFu...
Name |
Description |
Value |
type |
The resource type |
'Microsoft.HybridNetwork/publishers/networkFunctionDefinitionGroups/networkFunctionDefinitionVersions' |
apiVersion |
The resource api version |
'2023-09-01' |
name |
The resource name
See how to set names and types for child resources in JSON ARM templates. |
string (required) |
location |
The geo-location where the resource lives |
string (required) |
tags |
Resource tags. |
Dictionary of tag names and values. See Tags in templates |
properties |
Network function definition version properties. |
NetworkFunctionDefinitionVersionPropertiesFormat |
Name |
Description |
Value |
deployParameters |
The deployment parameters of the network function definition version. |
string |
description |
The network function definition version description. |
string |
networkFunctionType |
Set the object type |
ContainerizedNetworkFunction VirtualNetworkFunction (required) |
ContainerizedNetworkFunctionDefinitionVersion
Name |
Description |
Value |
networkFunctionType |
The network function type. |
'ContainerizedNetworkFunction' (required) |
networkFunctionTemplate |
Containerized network function template. |
ContainerizedNetworkFunctionTemplate |
ContainerizedNetworkFunctionTemplate
AzureArcKubernetesNetworkFunctionTemplate
AzureArcKubernetesNetworkFunctionApplication
Name |
Description |
Value |
dependsOnProfile |
Depends on profile definition. |
DependsOnProfile |
name |
The name of the network function application. |
string |
artifactType |
Set the object type |
HelmPackage (required) |
DependsOnProfile
Name |
Description |
Value |
installDependsOn |
Application installation operation dependency. |
string[] |
uninstallDependsOn |
Application deletion operation dependency. |
string[] |
updateDependsOn |
Application update operation dependency. |
string[] |
AzureArcKubernetesHelmApplication
AzureArcKubernetesArtifactProfile
ReferencedResource
Name |
Description |
Value |
id |
Resource ID. |
string |
HelmArtifactProfile
Name |
Description |
Value |
helmPackageName |
Helm package name. |
string |
helmPackageVersionRange |
Helm package version range. |
string |
imagePullSecretsValuesPaths |
The image pull secrets values path list. |
string[] |
registryValuesPaths |
The registry values path list. |
string[] |
AzureArcKubernetesDeployMappingRuleProfile
Name |
Description |
Value |
applicationEnablement |
The application enablement. |
'Disabled' 'Enabled' 'Unknown' |
helmMappingRuleProfile |
The helm mapping rule profile. |
HelmMappingRuleProfile |
HelmMappingRuleProfile
Name |
Description |
Value |
helmPackageVersion |
Helm package version. |
string |
options |
The helm deployment options |
HelmMappingRuleProfileOptions |
releaseName |
Helm release name. |
string |
releaseNamespace |
Helm release namespace. |
string |
values |
Helm release values. |
string |
HelmMappingRuleProfileOptions
HelmInstallOptions
Name |
Description |
Value |
atomic |
The helm deployment atomic options |
string |
timeout |
The helm deployment timeout options |
string |
wait |
The helm deployment wait options |
string |
HelmUpgradeOptions
Name |
Description |
Value |
atomic |
The helm deployment atomic options |
string |
timeout |
The helm deployment timeout options |
string |
wait |
The helm deployment wait options |
string |
VirtualNetworkFunctionDefinitionVersion
Name |
Description |
Value |
networkFunctionType |
The network function type. |
'VirtualNetworkFunction' (required) |
networkFunctionTemplate |
Virtual network function template. |
VirtualNetworkFunctionTemplate |
VirtualNetworkFunctionTemplate
AzureCoreNetworkFunctionTemplate
Name |
Description |
Value |
nfviType |
The network function type. |
'AzureCore' (required) |
networkFunctionApplications |
Network function applications. |
AzureCoreNetworkFunctionApplication[] |
AzureCoreNetworkFunctionApplication
Name |
Description |
Value |
dependsOnProfile |
Depends on profile definition. |
DependsOnProfile |
name |
The name of the network function application. |
string |
artifactType |
Set the object type |
ArmTemplate VhdImageFile (required) |
AzureCoreNetworkFunctionArmTemplateApplication
AzureCoreArmTemplateArtifactProfile
ArmTemplateArtifactProfile
Name |
Description |
Value |
templateName |
Template name. |
string |
templateVersion |
Template version. |
string |
AzureCoreArmTemplateDeployMappingRuleProfile
Name |
Description |
Value |
applicationEnablement |
The application enablement. |
'Disabled' 'Enabled' 'Unknown' |
templateMappingRuleProfile |
The template mapping rule profile. |
ArmTemplateMappingRuleProfile |
ArmTemplateMappingRuleProfile
Name |
Description |
Value |
templateParameters |
List of template parameters. |
string |
AzureCoreNetworkFunctionVhdApplication
AzureCoreVhdImageArtifactProfile
VhdImageArtifactProfile
Name |
Description |
Value |
vhdName |
Vhd name. |
string |
vhdVersion |
Vhd version. |
string |
AzureCoreVhdImageDeployMappingRuleProfile
Name |
Description |
Value |
applicationEnablement |
The application enablement. |
'Disabled' 'Enabled' 'Unknown' |
vhdImageMappingRuleProfile |
The vhd mapping rule profile. |
VhdImageMappingRuleProfile |
VhdImageMappingRuleProfile
Name |
Description |
Value |
userConfiguration |
List of values. |
string |
AzureOperatorNexusNetworkFunctionTemplate
AzureOperatorNexusNetworkFunctionApplication
Name |
Description |
Value |
dependsOnProfile |
Depends on profile definition. |
DependsOnProfile |
name |
The name of the network function application. |
string |
artifactType |
Set the object type |
ArmTemplate ImageFile (required) |
AzureOperatorNexusNetworkFunctionArmTemplateApplicat...
AzureOperatorNexusArmTemplateArtifactProfile
AzureOperatorNexusArmTemplateDeployMappingRuleProfil...
Name |
Description |
Value |
applicationEnablement |
The application enablement. |
'Disabled' 'Enabled' 'Unknown' |
templateMappingRuleProfile |
The template mapping rule profile. |
ArmTemplateMappingRuleProfile |
AzureOperatorNexusNetworkFunctionImageApplication
AzureOperatorNexusImageArtifactProfile
ImageArtifactProfile
Name |
Description |
Value |
imageName |
Image name. |
string |
imageVersion |
Image version. |
string |
AzureOperatorNexusImageDeployMappingRuleProfile
Name |
Description |
Value |
applicationEnablement |
The application enablement. |
'Disabled' 'Enabled' 'Unknown' |
imageMappingRuleProfile |
The vhd mapping rule profile. |
ImageMappingRuleProfile |
ImageMappingRuleProfile
Name |
Description |
Value |
userConfiguration |
List of values. |
string |