Share via


az aosm nfd

Note

This reference is part of the aosm extension for the Azure CLI (version 2.54.0 or higher). The extension will automatically install the first time you run an az aosm nfd command. Learn more about extensions.

Command group 'aosm' is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus

Manage AOSM publisher Network Function Definitions.

A Network Function Definition (NFD) is a collection of Helm charts or ARM templates that define a network function. This command group allows you to build and publish NFDs to Azure.

Commands

Name Description Type Status
az aosm nfd build

Build an AOSM Network Function Definition.

Extension Preview
az aosm nfd generate-config

Generate configuration file for building an AOSM publisher Network Function Definition.

Extension Preview
az aosm nfd publish

Publish a pre-built AOSM Network Function definition.

Extension Preview

az aosm nfd build

Preview

Command group 'aosm' is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus

Build an AOSM Network Function Definition.

Builds an AOSM Network Function Definition (NFD) based on the configuration file provided. The NFD is built from the Helm charts or ARM templates specified in the configuration file. The output is a directory which can either be published directly (using the aosm nfd publish command) or manually customized before publishing.

az aosm nfd build --config-file
                  --definition-type {cnf, vnf, vnf-nexus}
                  [--skip {artifact-upload, bicep-publish, helm-template, image-upload}]

Examples

Build a Containerised Network Function.

az aosm nfd build --definition-type cnf --config-file my-cnf-input-config.jsonc

Build a Virtual Network Function for use on Azure Core.

az aosm nfd build --definition-type vnf --config-file my-vnf-input-config.jsonc

Build a Virtual Network Function for use on Azure Nexus.

az aosm nfd build --definition-type vnf-nexus --config-file my-vnf-nexus-input-config.jsonc

Required Parameters

--config-file -f

The path to the configuration file. This is a JSONC file that contains the required parameters for building the NFD.

--definition-type

Type of AOSM definition to be published. The config file differs depending on type.

accepted values: cnf, vnf, vnf-nexus

Optional Parameters

--skip

Optional skip steps. 'bicep-publish' will skip deploying the bicep template; 'artifact-upload' will skip uploading any artifacts; 'image-upload' will skip uploading the VHD image (for VNFs) or the container images (for CNFs); 'helm-template' will skip templating the helm charts (for CNFs).

accepted values: artifact-upload, bicep-publish, helm-template, image-upload
Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

accepted values: json, jsonc, none, table, tsv, yaml, yamlc
default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az aosm nfd generate-config

Preview

Command group 'aosm' is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus

Generate configuration file for building an AOSM publisher Network Function Definition.

Generates a configuration file that you can use to build an AOSM Network Function Definition (NFD). The configuration file is a JSONC file that contains the required parameters for building the NFD. You must complete the configuration file with your specific values before building the NFD.

az aosm nfd generate-config --definition-type {cnf, vnf, vnf-nexus}
                            [--output-file]

Examples

Generate a configuration file for a Containerised Network Function.

az aosm nfd generate-config --definition-type cnf

Generate a configuration file for a Virtual Network Function.

az aosm nfd generate-config --definition-type vnf

Generate a configuration file for a Virtual Network Function for use on Azure Nexus.

az aosm nfd generate-config --definition-type vnf-nexus

Generate a configuration file for a Virtual Network Function and write to a specific file.

az aosm nfd generate-config --definition-type vnf --output-file my-vnf-input-config.jsonc

Required Parameters

--definition-type

Type of AOSM definition to be published. The config file differs depending on type.

accepted values: cnf, vnf, vnf-nexus

Optional Parameters

--output-file

The name of the output file to write the generated config text to.

Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

accepted values: json, jsonc, none, table, tsv, yaml, yamlc
default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az aosm nfd publish

Preview

Command group 'aosm' is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus

Publish a pre-built AOSM Network Function definition.

Publishes a pre-built AOSM Network Function Definition (NFD) to Azure. The NFD must be built using the aosm nfd build command before it can be published. The NFD and other required resources (publisher resource, artifact manifest(s), storage account(s) etc.) is published to the specified resource group in the currently active Azure subscription.

az aosm nfd publish --build-output-folder
                    --definition-type {cnf, vnf, vnf-nexus}
                    [--no-subscription-permissions {false, true}]

Examples

Publish a Containerised Network Function.

az aosm nfd publish --definition-type cnf --build-output-folder my-cnf-output-folder

Publish a Virtual Network Function for use on Azure Core.

az aosm nfd publish --definition-type vnf --build-output-folder my-vnf-output-folder

Publish a Virtual Network Function for use on Azure Nexus.

az aosm nfd publish --definition-type vnf-nexus --build-output-folder my-vnf-nexus-output-folder

Publish a Containerised Network Function when you do not have the required import permissions.

az aosm nfd publish --definition-type cnf --build-output-folder my-cnf-output-folder --no-subscription-permissions

Required Parameters

--build-output-folder -b

Path to the folder to publish, created by the build command.

--definition-type

Type of AOSM definition to be published. The config file differs depending on type.

accepted values: cnf, vnf, vnf-nexus

Optional Parameters

--no-subscription-permissions -u

Used only for CNF publish - ignored in all other scenarios. Pass this flag if you do not have permission to import to the Publisher subscription (Contributor role + AcrPush role, or a custom role that allows the importImage action and AcrPush over the whole subscription). Using this flag causes image artifacts to be pulled to your local machine and then pushed to the Artifact Store. This is slower than a copy entirely within Azure, but is an alternative if you do not have the required permissions. Requires Docker to be installed locally.

accepted values: false, true
default value: False
Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

accepted values: json, jsonc, none, table, tsv, yaml, yamlc
default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.