From 0615250ef1be873c368ebffd452eda5d5922ea71 Mon Sep 17 00:00:00 2001 From: Naveen Chekuri Date: Thu, 19 Dec 2019 12:04:08 -0800 Subject: [PATCH 1/3] Add new Microsoft.Network NetworkVirtualAppliance resource --- .../NetworkVirtualApplianceDelete.json | 13 + .../examples/NetworkVirtualApplianceGet.json | 58 ++ ...rkVirtualApplianceListByResourceGroup.json | 61 +++ ...orkVirtualApplianceListBySubscription.json | 60 +++ .../examples/NetworkVirtualAppliancePut.json | 131 +++++ .../NetworkVirtualApplianceUpdateTags.json | 65 +++ .../2019-11-01/networkVirtualAppliance.json | 509 ++++++++++++++++++ .../network/resource-manager/readme.md | 4 + 8 files changed, 901 insertions(+) create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceDelete.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceGet.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceListByResourceGroup.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceListBySubscription.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualAppliancePut.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceUpdateTags.json create mode 100644 specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/networkVirtualAppliance.json diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceDelete.json new file mode 100644 index 000000000000..010eae91c2c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceGet.json new file mode 100644 index 000000000000..78a60298e2ca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceGet.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "properties": { + "Sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig", + "cloudInitConfigurationBlob": "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig", + "identity": { + "type": "userAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "virtualApplianceASN": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ], + "routeServiceAsn": 65515, + "routeServiceIps": [ + "192.168.11.4", + "192.168.11.5" + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceListByResourceGroup.json new file mode 100644 index 000000000000..1d17890ab881 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceListByResourceGroup.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "properties": { + "Sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig", + "cloudInitConfigurationBlob": "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig", + "identity": { + "type": "userAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "virtualApplianceASN": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ], + "routeServiceAsn": 65515, + "routeServiceIps": [ + "192.168.11.4", + "192.168.11.5" + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceListBySubscription.json new file mode 100644 index 000000000000..d5de6e9f9cc4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceListBySubscription.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "properties": { + "Sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig", + "cloudInitConfigurationBlob": "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig", + "identity": { + "type": "userAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "virtualApplianceASN": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ], + "routeServiceAsn": 65515, + "routeServiceIps": [ + "192.168.11.4", + "192.168.11.5" + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualAppliancePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualAppliancePut.json new file mode 100644 index 000000000000..c07fb12bf776 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualAppliancePut.json @@ -0,0 +1,131 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "properties": { + "Sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "bootStrapConfigurationBlob": "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig", + "cloudInitConfigurationBlob": "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig", + "identity": { + "type": "userAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "virtualApplianceASN": 10000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "properties": { + "Sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig", + "cloudInitConfigurationBlob": "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig", + "identity": { + "type": "userAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "virtualApplianceASN": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ], + "routeServiceAsn": 65515, + "routeServiceIps": [ + "192.168.11.4", + "192.168.11.5" + ] + } + } + }, + "201": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "properties": { + "Sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig", + "cloudInitConfigurationBlob": "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig", + "identity": { + "type": "userAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "virtualApplianceASN": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ], + "routeServiceAsn": 65515, + "routeServiceIps": [ + "192.168.11.4", + "192.168.11.5" + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceUpdateTags.json new file mode 100644 index 000000000000..6d3732de0c95 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/NetworkVirtualApplianceUpdateTags.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "properties": { + "Sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig", + "cloudInitConfigurationBlob": "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig", + "identity": { + "type": "userAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "virtualApplianceASN": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ], + "routeServiceAsn": 65515, + "routeServiceIps": [ + "192.168.11.4", + "192.168.11.5" + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/networkVirtualAppliance.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/networkVirtualAppliance.json new file mode 100644 index 000000000000..bfc04c87c428 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/networkVirtualAppliance.json @@ -0,0 +1,509 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-11-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkVirtualAppliances/{networkVirtualAppliance}": { + "delete": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Delete", + "description": "Deletes the specified Network Virtual Appliance", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Get", + "description": "Gets the specified Network Virtual Appliance", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceGet.json" + } + } + }, + "patch": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Update", + "description": "Updates a Network Virtual Appliance", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of Network Virtual Appliance" + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update Network Virtual Appliance Tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of Network Virtual Appliance updated.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Update NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceUpdateTags.json" + } + } + }, + "put": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_CreateOrUpdate", + "description": "Creates or updates the specified Network Virtual Appliance", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + }, + "description": "Parameters supplied to the create or update Network Virtual Appliance" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Network Virtual Appliance resource", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "201": { + "description": "Request received successfully. The operation returns the resulting Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualAppliancePut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkVirtualAppliances": { + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_ListByResourceGroup", + "description": "Lists all Network Virtual Appliances in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliance for a given resource group": { + "$ref": "./examples/NetworkVirtualApplianceListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkVirtualAppliances": { + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_List", + "description": "Gets all Network Virtual Appliances in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliances for a given subscription": { + "$ref": "./examples/NetworkVirtualApplianceListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkVirtualAppliance": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkVirtualAppliancePropertiesFormat", + "description": "Properties of the Network Virtual Appliance" + }, + "virtualHub": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Virtual Hub where Network Virtual Appliance is being deployed" + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "Gets a unique read-only string that changes whenever the resource is updated" + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "NetworkVirtualAppliance Resource." + }, + "NetworkVirtualAppliancePropertiesFormat": { + "properties": { + "bootStrapConfigurationBlob": { + "type": "array", + "readOnly": false, + "description": "BootStrapConfigurationBlob storage URLs", + "items": { + "type": "string" + } + }, + "cloudInitConfigurationBlob": { + "type": "array", + "readOnly": false, + "description": "CloudInitConfigurationBlob storage URLs", + "items": { + "type": "string" + } + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The service principal that has read access to cloud-init and config blob" + }, + "virtualApplianceAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "VirtualAppliance ASN" + }, + "virtualApplianceNics": { + "type": "array", + "readOnly": true, + "description": "List of Virtual Appliance Network Interfaces", + "items": { + "$ref": "#/definitions/VirtualApplianceNicProperties" + } + }, + "routeServiceAsn": { + "type": "integer", + "readOnly": true, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "RouteService ASN" + }, + "routeServiceIps": { + "type": "array", + "readOnly": true, + "description": "RouteService Peering IP Addresses", + "items": { + "type": "string" + } + }, + "Sku": { + "readOnly": false, + "description": "Network Virtual Appliance SKU", + "$ref": "#/definitions/VirtualApplianceSkuProperties" + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Network Virtual Appliance definition" + }, + "VirtualApplianceSkuProperties": { + "properties": { + "vendor": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Vendor" + }, + "bundledScaleUnit": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Scale Unit" + }, + "marketPlaceVersion": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Version" + } + }, + "description": "Network Virtual Appliance Sku Properties" + }, + "VirtualApplianceNicProperties": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "NIC name" + }, + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "Public IP address" + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "Private IP address" + } + }, + "description": "Network Virtual Appliance NIC properties" + }, + "NetworkVirtualApplianceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkVirtualAppliance" + }, + "description": "List of Network Virtual Appliances" + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListNetworkVirtualAppliances API service call." + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/readme.md b/specification/network/resource-manager/readme.md index ce485a1738b8..b324cb95e6b6 100644 --- a/specification/network/resource-manager/readme.md +++ b/specification/network/resource-manager/readme.md @@ -61,6 +61,7 @@ input-file: - Microsoft.Network/stable/2019-11-01/networkInterface.json - Microsoft.Network/stable/2019-11-01/networkProfile.json - Microsoft.Network/stable/2019-11-01/networkSecurityGroup.json + - Microsoft.Network/stable/2019-11-01/networkVirtualAppliance.json - Microsoft.Network/stable/2019-11-01/networkWatcher.json - Microsoft.Network/stable/2019-06-01/networkWatcherConnectionMonitorV1.json - Microsoft.Network/stable/2019-11-01/operation.json @@ -1196,6 +1197,9 @@ directive: - suppress: RequiredPropertiesMissingInResourceModel from: networkSecurityGroup.json reason: name, id and type properties are inherited from the upper level + - suppress: RequiredPropertiesMissingInResourceModel + from: networkVirtualAppliance.json + reason: name, id and type properties are inherited from the upper level - suppress: RequiredPropertiesMissingInResourceModel from: networkWatcher.json reason: name, id and type properties are inherited from the upper level From e7fd92765de185e3f8b37525a312e390dfd7a590 Mon Sep 17 00:00:00 2001 From: Naveen Chekuri Date: Thu, 9 Jan 2020 17:40:46 -0800 Subject: [PATCH 2/3] Address review comments --- .../2019-11-01/networkVirtualAppliance.json | 38 +++++++++---------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/networkVirtualAppliance.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/networkVirtualAppliance.json index bfc04c87c428..d3070557387a 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/networkVirtualAppliance.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/networkVirtualAppliance.json @@ -76,7 +76,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "./network.json#/definitions/Error" + "$ref": "./network.json#/definitions/CloudError" } } }, @@ -135,7 +135,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "./network.json#/definitions/Error" + "$ref": "./network.json#/definitions/CloudError" } } }, @@ -149,7 +149,7 @@ "tags": [ "NetworkVirtualAppliances" ], - "operationId": "NetworkVirtualAppliances_Update", + "operationId": "NetworkVirtualAppliances_UpdateTags", "description": "Updates a Network Virtual Appliance", "parameters": [ { @@ -192,7 +192,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "./network.json#/definitions/Error" + "$ref": "./network.json#/definitions/CloudError" } } }, @@ -255,7 +255,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "./network.json#/definitions/Error" + "$ref": "./network.json#/definitions/CloudError" } } }, @@ -302,7 +302,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "./network.json#/definitions/Error" + "$ref": "./network.json#/definitions/CloudError" } } }, @@ -341,7 +341,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "./network.json#/definitions/Error" + "$ref": "./network.json#/definitions/CloudError" } } }, @@ -364,10 +364,14 @@ "$ref": "#/definitions/NetworkVirtualAppliancePropertiesFormat", "description": "Properties of the Network Virtual Appliance" }, - "virtualHub": { + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The service principal that has read access to cloud-init and config blob" + }, + "Sku": { "readOnly": false, - "$ref": "./network.json#/definitions/SubResource", - "description": "The Virtual Hub where Network Virtual Appliance is being deployed" + "description": "Network Virtual Appliance SKU", + "$ref": "#/definitions/VirtualApplianceSkuProperties" }, "etag": { "type": "string", @@ -392,6 +396,11 @@ "type": "string" } }, + "virtualHub": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Virtual Hub where Network Virtual Appliance is being deployed" + }, "cloudInitConfigurationBlob": { "type": "array", "readOnly": false, @@ -400,10 +409,6 @@ "type": "string" } }, - "identity": { - "$ref": "./network.json#/definitions/ManagedServiceIdentity", - "description": "The service principal that has read access to cloud-init and config blob" - }, "virtualApplianceAsn": { "type": "integer", "readOnly": false, @@ -436,11 +441,6 @@ "type": "string" } }, - "Sku": { - "readOnly": false, - "description": "Network Virtual Appliance SKU", - "$ref": "#/definitions/VirtualApplianceSkuProperties" - }, "provisioningState": { "description": "The provisioning state of the resource.", "readOnly": true, From 7afa58225da7e13a786d812e82256b950ce3d1c8 Mon Sep 17 00:00:00 2001 From: Naveen Chekuri Date: Thu, 9 Jan 2020 17:47:36 -0800 Subject: [PATCH 3/3] Fix virtualApplianceName in url --- .../stable/2019-11-01/networkVirtualAppliance.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/networkVirtualAppliance.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/networkVirtualAppliance.json index d3070557387a..85f1be0833bc 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/networkVirtualAppliance.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/networkVirtualAppliance.json @@ -50,7 +50,7 @@ "description": "The name of the resource group." }, { - "name": "networkVirtualApplianceName", + "name": "networkVirtualAppliance", "in": "path", "required": true, "type": "string", @@ -105,7 +105,7 @@ "description": "The name of the resource group." }, { - "name": "networkVirtualApplianceName", + "name": "networkVirtualAppliance", "in": "path", "required": true, "type": "string", @@ -163,7 +163,7 @@ "description": "The resource group name of Network Virtual Appliance" }, { - "name": "networkVirtualApplianceName", + "name": "networkVirtualAppliance", "in": "path", "required": true, "type": "string", @@ -217,7 +217,7 @@ "description": "The name of the resource group." }, { - "name": "networkVirtualApplianceName", + "name": "networkVirtualAppliance", "in": "path", "required": true, "type": "string",