diff --git a/custom-words.txt b/custom-words.txt index 831b34084222..e135c62569bf 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -1359,6 +1359,7 @@ SCOM scopemap SCSV sdks +SDWAN searchindex searchmanagementclient searchservice @@ -1689,6 +1690,7 @@ vcsa Vertica Vfyc vhds +VHDX videosearch virtualclusters virtualip diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/common.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/common.json new file mode 100644 index 000000000000..be4e038ae09f --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/common.json @@ -0,0 +1,278 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridNetworkManagementClient", + "description": "The definitions in this swagger specification will be used to manage the hybrid network resources.", + "version": "2020-01-01-preview" + }, + "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": {}, + "definitions": { + "ErrorDetails": { + "description": "The error response that indicates why an operation has failed.", + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "ErrorResponse": { + "description": "The error response details containing error code and error message", + "type": "object", + "additionalProperties": true, + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + } + } + }, + "Resource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Common resource representation.", + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "description": "Reference to another sub resource.", + "x-ms-azure-resource": true + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Unknown", + "Succeeded", + "Accepted", + "Deleting", + "Failed", + "Canceled", + "Deleted" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "VendorProvisioningState": { + "type": "string", + "description": "The current vendor provisioning state.", + "enum": [ + "Unknown", + "NotProvisioned", + "Provisioning", + "Provisioned", + "Deprovisioned", + "UserDataValidationFailed" + ], + "x-ms-enum": { + "name": "VendorProvisioningState", + "modelAsString": true + } + }, + "TagsObject": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + }, + "NetworkInterface": { + "description": "Network interface properties.", + "properties": { + "networkInterfaceName": { + "type": "string", + "description": "The name of the network interface." + }, + "macAddress": { + "type": "string", + "description": "The MAC address of the network interface." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of IP configurations of the network interface." + }, + "vmSwitchType": { + "type": "string", + "description": "The type of VM switch", + "enum": [ + "Unknown", + "Management", + "Wan", + "Lan", + "Internal" + ], + "x-ms-enum": { + "name": "VMSwitchType", + "modelAsString": true + } + } + } + }, + "NetworkInterfaceIPConfiguration": { + "description": "Network interface IP configuration properties.", + "properties": { + "ipAllocationMethod": { + "type": "string", + "description": "IP address allocation method.", + "enum": [ + "Unknown", + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "IPAllocationMethod", + "modelAsString": true + } + }, + "ipAddress": { + "type": "string", + "description": "The value of the IP address." + }, + "subnet": { + "type": "string", + "description": "The value of the subnet." + }, + "gateway": { + "type": "string", + "description": "The value of the gateway." + }, + "ipVersion": { + "type": "string", + "description": "IP address version.", + "enum": [ + "Unknown", + "IPv4" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + }, + "dnsServers": { + "type": "array", + "description": "The list of DNS servers IP addresses.", + "items": { + "type": "string" + } + } + } + }, + "UserDataTemplate": { + "type": "object", + "description": "The user data template." + }, + "UserDataParameters": { + "type": "object", + "description": "The user data parameters." + }, + "ManagedApplicationParameters": { + "type": "object", + "description": "The parameters for the managed application." + }, + "SkuType": { + "type": "string", + "description": "Sku type", + "enum": [ + "Unknown", + "EvolvedPacketCore", + "SDWAN" + ], + "x-ms-enum": { + "name": "SkuType", + "modelAsString": true + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription ID which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/device.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/device.json new file mode 100644 index 000000000000..2e2b87d45439 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/device.json @@ -0,0 +1,499 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridNetworkManagementClient", + "description": "The resources in this swagger specification will be used to manage the hybrid network device", + "version": "2020-01-01-preview" + }, + "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.HybridNetwork/devices/{deviceName}": { + "delete": { + "tags": [ + "Devices" + ], + "operationId": "Devices_Delete", + "description": "Deletes the specified hybrid network device.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "deviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid network device." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful." + }, + "202": { + "description": "Accepted. Sets the provisioningState to 'Deleting' until the operation is completed. Returns an operation Uri that can be queried to find the current state of the operation." + }, + "204": { + "description": "Request successful. Resource with specified name does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Delete hybrid network device resource": { + "$ref": "./examples/DeviceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Devices" + ], + "operationId": "Devices_Get", + "description": "Gets information about the specified hybrid network device.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "deviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of hybrid network device." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting hybrid network device resource.", + "schema": { + "$ref": "#/definitions/Device" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Get hybrid network device": { + "$ref": "./examples/DeviceGet.json" + } + } + }, + "put": { + "tags": [ + "Devices" + ], + "operationId": "Devices_CreateOrUpdate", + "description": "Creates or updates a hybrid network device.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "deviceName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource name for the device resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Device" + }, + "description": "Parameters supplied to the create or update hybrid network device operation." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Create or update successful.", + "schema": { + "$ref": "#/definitions/Device" + } + }, + "201": { + "description": "Create or update successful. The header contains ‘Azure-AsyncOperation’ header pointing to an operations resource. The operation URI can be queried to find the current state of the operation.", + "schema": { + "$ref": "#/definitions/Device" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Create or update hybrid network device": { + "$ref": "./examples/DeviceCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "Devices" + ], + "operationId": "Devices_UpdateTags", + "description": "Updates a hybrid network device tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "deviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid network device." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./common.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update hybrid network device tags." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting hybrid network device resource.", + "schema": { + "$ref": "#/definitions/Device" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Update hybrid network device tags": { + "$ref": "./examples/DeviceUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridNetwork/devices": { + "get": { + "tags": [ + "Devices" + ], + "operationId": "Devices_ListBySubscription", + "description": "Lists all the hybrid network devices in a subscription.", + "parameters": [ + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of hybrid network device resources.", + "schema": { + "$ref": "#/definitions/DeviceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "List all hybrid network devices in a subscription.": { + "$ref": "./examples/DeviceListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridNetwork/devices": { + "get": { + "tags": [ + "Devices" + ], + "operationId": "Devices_ListByResourceGroup", + "description": "Lists all the hybrid network devices in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of hybrid network device resources.", + "schema": { + "$ref": "#/definitions/DeviceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "List all hybrid network devices in resource group": { + "$ref": "./examples/DeviceListAllByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridNetwork/devices/{deviceName}/listRegistrationKey": { + "post": { + "tags": [ + "Devices" + ], + "operationId": "Devices_ListRegistrationKey", + "description": "List the registration key for the hybrid network device.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "deviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid network device." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The registration key information for the hybrid network device.", + "schema": { + "$ref": "#/definitions/DeviceRegistrationKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Get hybrid network device registration key": { + "$ref": "./examples/DeviceListRegistrationKey.json" + } + } + } + } + }, + "definitions": { + "Device": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DevicePropertiesFormat", + "description": "Hybrid network device properties." + } + }, + "allOf": [ + { + "$ref": "./common.json#/definitions/Resource" + } + ], + "description": "Hybrid network device resource." + }, + "DevicePropertiesFormat": { + "description": "Hybrid network device properties.", + "required": [ + "deviceType" + ], + "discriminator": "deviceType", + "properties": { + "status": { + "type": "string", + "readOnly": true, + "description": "The current device status.", + "enum": [ + "Unknown", + "NotRegistered", + "Registered" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./common.json#/definitions/ProvisioningState", + "description": "The provisioning state of the hybrid network device resource." + }, + "deviceType": { + "type": "string", + "description": "The type of the hybrid network device.", + "enum": [ + "Unknown", + "AzureStackEdge" + ], + "x-ms-enum": { + "name": "DeviceType", + "modelAsString": true + } + }, + "azureStackEdge": { + "x-ms-discriminator-value": "AzureStackEdge", + "$ref": "./common.json#/definitions/SubResource", + "description": "The reference to the azure stack edge device." + }, + "virtualNetworkFunctions": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./common.json#/definitions/SubResource" + }, + "description": "The list of virtual network functions deployed on the hybrid network device." + } + } + }, + "DeviceRegistrationKey": { + "description": "The hybrid network device registration key", + "properties": { + "registrationKey": { + "readOnly": true, + "type": "string", + "description": "The registration key for hybrid network device." + } + } + }, + "DeviceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Device" + }, + "description": "A list of hybrid network devices." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "Response for hybrid network devices API service call." + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/CreateVendorSkuPreview.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/CreateVendorSkuPreview.json new file mode 100644 index 000000000000..de7af1768144 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/CreateVendorSkuPreview.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "vendorName": "TestVendor", + "skuName": "TestSku", + "previewSubscription": "previewSub", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor/vendorskus/TestSku/previewsubscriptions/previewSub", + "name": "previewSub", + "type": "Microsoft.HybridNetwork/vendors/vendorskus/previewsubscriptions" + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor/vendorskus/TestSku/previewsubscriptions/previewSub", + "name": "previewSub", + "type": "Microsoft.HybridNetwork/vendors/vendorskus/previewsubscriptions" + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeleteVendorSkuPreview.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeleteVendorSkuPreview.json new file mode 100644 index 000000000000..618a390d74e2 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeleteVendorSkuPreview.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "vendorName": "TestVendor", + "skuName": "TestSku", + "previewSubscription": "previewSub" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceCreate.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceCreate.json new file mode 100644 index 000000000000..3b4cabc40640 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceCreate.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "deviceName": "TestDevice", + "parameters": { + "location": "eastus", + "properties": { + "deviceType": "AzureStackEdge", + "azureStackEdge": { + "id": "/subscriptions/subid1/resourcegroups/rg2/providers/Microsoft.DataboxEdge/DataboxEdgeDevices/TestDataboxEdgeDeviceName" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HybridNetwork/devices/TestDevice", + "name": "TestDevice", + "type": "Microsoft.HybridNetwork/devices", + "location": "eastus", + "properties": { + "status": "NotRegistered", + "provisioningState": "Succeeded", + "deviceType": "AzureStackEdge", + "azureStackEdge": { + "id": "/subscriptions/subid1/resourcegroups/rg2/providers/Microsoft.DataboxEdge/DataboxEdgeDevices/TestDataboxEdgeDeviceName" + }, + "virtualNetworkFunctions": null + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HybridNetwork/devices/TestDevice", + "name": "TestDevice", + "type": "Microsoft.HybridNetwork/devices", + "location": "eastus", + "properties": { + "status": "NotRegistered", + "provisioningState": "Accepted", + "deviceType": "AzureStackEdge", + "azureStackEdge": { + "id": "/subscriptions/subid1/resourcegroups/rg2/providers/Microsoft.DataboxEdge/DataboxEdgeDevices/TestDataboxEdgeDeviceName" + }, + "virtualNetworkFunctions": null + } + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceDelete.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceDelete.json new file mode 100644 index 000000000000..dae46cbb80b4 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "deviceName": "TestDevice" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceGet.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceGet.json new file mode 100644 index 000000000000..47df323a3673 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "deviceName": "TestDevice" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HybridNetwork/devices/TestDevice", + "name": "TestDevice", + "type": "Microsoft.HybridNetwork/devices", + "location": "eastus", + "properties": { + "status": "NotRegistered", + "provisioningState": "Succeeded", + "deviceType": "AzureStackEdge", + "azureStackEdge": { + "id": "/subscriptions/subid1/resourcegroups/rg2/providers/Microsoft.DataboxEdge/DataboxEdgeDevices/TestDataboxEdgeDeviceName" + }, + "virtualNetworkFunctions": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.HybridNetwork/virtualNetworkFunctions/TestVirtualNetworkFunction" + } + ] + } + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceListAll.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceListAll.json new file mode 100644 index 000000000000..673abf63ec08 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceListAll.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HybridNetwork/devices/TestDevice", + "name": "TestDevice", + "type": "Microsoft.HybridNetwork/devices", + "location": "eastus", + "properties": { + "status": "NotRegistered", + "provisioningState": "Succeeded", + "deviceType": "AzureStackEdge", + "azureStackEdge": { + "id": "/subscriptions/subid1/resourcegroups/rg2/providers/Microsoft.DataboxEdge/DataboxEdgeDevices/TestDataboxEdgeDeviceName" + }, + "virtualNetworkFunctions": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.HybridNetwork/virtualNetworkFunctions/TestVirtualNetworkFunction" + } + ] + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceListAllByResourceGroup.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceListAllByResourceGroup.json new file mode 100644 index 000000000000..758b069ac135 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceListAllByResourceGroup.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HybridNetwork/devices/TestDevice", + "name": "TestDevice", + "type": "Microsoft.HybridNetwork/devices", + "location": "eastus", + "properties": { + "status": "NotRegistered", + "provisioningState": "Succeeded", + "deviceType": "AzureStackEdge", + "azureStackEdge": { + "id": "/subscriptions/subid1/resourcegroups/rg2/providers/Microsoft.DataboxEdge/DataboxEdgeDevices/TestDataboxEdgeDeviceName" + }, + "virtualNetworkFunctions": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.HybridNetwork/virtualNetworkFunctions/TestVirtualNetworkFunction" + } + ] + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceListRegistrationKey.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceListRegistrationKey.json new file mode 100644 index 000000000000..bc8ab344a835 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceListRegistrationKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "deviceName": "TestDevice" + }, + "responses": { + "200": { + "body": { + "registrationKey": "TestRegistartionKey" + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceUpdateTags.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceUpdateTags.json new file mode 100644 index 000000000000..ae7e1e586e9b --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/DeviceUpdateTags.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "deviceName": "TestDevice", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HybridNetwork/devices/TestDevice", + "name": "TestDevice", + "type": "Microsoft.HybridNetwork/devices", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "status": "NotRegistered", + "provisioningState": "Succeeded", + "deviceType": "AzureStackEdge", + "azureStackEdge": { + "id": "/subscriptions/subid1/resourcegroups/rg2/providers/Microsoft.DataboxEdge/DataboxEdgeDevices/TestDataboxEdgeDeviceName" + }, + "virtualNetworkFunctions": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.HybridNetwork/virtualNetworkFunctions/TestVirtualNetworkFunction" + } + ] + } + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/GetOperations.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/GetOperations.json new file mode 100644 index 000000000000..96a50bbecce7 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/GetOperations.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2020-01-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.HybridNetwork/vnfs/read", + "display": { + "provider": "Microsoft Hybrid Network", + "resource": "Vnf", + "operation": "Get Vnf", + "description": "Gets Vnf" + } + } + ] + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/GetVendorSkuPreview.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/GetVendorSkuPreview.json new file mode 100644 index 000000000000..27799fcaf1aa --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/GetVendorSkuPreview.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "vendorName": "TestVendor", + "skuName": "TestSku", + "previewSubscription": "previewSub" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor/vendorskus/TestSku/previewsubscriptions/previewSub", + "name": "previewSub", + "type": "Microsoft.HybridNetwork/vendors/vendorskus/previewsubscriptions" + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/GetVendorSkuPreviews.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/GetVendorSkuPreviews.json new file mode 100644 index 000000000000..1509775280a1 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/GetVendorSkuPreviews.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "vendorName": "TestVendor", + "skuName": "TestSku" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor/vendorskus/TestSku/previewsubscriptions/previewSub1", + "name": "previewSub1", + "type": "Microsoft.HybridNetwork/vendors/vendorskus/previewsubscriptions" + }, + { + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor/vendorskus/TestSku/previewsubscriptions/previewSub2", + "name": "previewSub2", + "type": "Microsoft.HybridNetwork/vendors/vendorskus/previewsubscriptions" + } + ] + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorCreate.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorCreate.json new file mode 100644 index 000000000000..4e4e33340954 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorCreate.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "vendorName": "TestVendor", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "name": "TestVendor", + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor", + "type": "Microsoft.HybridNetwork/vendors", + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "name": "TestVendor", + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor", + "type": "Microsoft.HybridNetwork/vendors", + "properties": { + "provisioningState": "Accepted" + } + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorDelete.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorDelete.json new file mode 100644 index 000000000000..9d6104c74403 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "vendorName": "TestVendor" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorGet.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorGet.json new file mode 100644 index 000000000000..ac2a0a656c7e --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "vendorName": "TestVendor" + }, + "responses": { + "200": { + "body": { + "name": "TestVendor", + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor", + "type": "Microsoft.HybridNetwork/vendors", + "properties": { + "provisioningState": "Succeeded", + "skus": [ + { + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor/skus/TestVendorSku" + } + ] + } + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorListAll.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorListAll.json new file mode 100644 index 000000000000..7d1446d83b9e --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorListAll.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "TestVendor", + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor", + "type": "Microsoft.HybridNetwork/vendors", + "properties": { + "provisioningState": "Succeeded", + "skus": [ + { + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor/vendorskus/TestVendorSku1" + } + ] + } + }, + { + "name": "TestVendor2", + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor2", + "type": "Microsoft.HybridNetwork/vendors", + "properties": { + "provisioningState": "Succeeded", + "skus": [ + { + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor/vendorskus/TestVendorSku2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorSkuCreate.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorSkuCreate.json new file mode 100644 index 000000000000..1402c9d87fe5 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorSkuCreate.json @@ -0,0 +1,197 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "vendorName": "TestVendor", + "skuName": "TestSku", + "parameters": { + "properties": { + "deploymentMode": "PrivateEdgeZone", + "preview": true, + "managedApplicationTemplate": {}, + "virtualNetworkFunctionTemplate": { + "virutalNetworkFunctionRoleConfigurations": [ + { + "roleName": "test", + "roleType": "VirtualMachine", + "virtualMachineSize": "Standard_D3_v2", + "imageReference": { + "osType": "Linux", + "vhdName": "vhdName", + "vhdType": "VHD", + "sasUri": "https://.blob.core.windows.net//?sp=rl&st=st>Z&se=Z&sv=&sr=b&sig=" + }, + "osProfile": { + "adminUsername": "dummyuser", + "adminPassword": "dummypassword", + "sshPublicKey": null + }, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "Wan", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "", + "vmSwitchType": "Management", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "TestSku", + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor/vendorskus/TestSku", + "type": "Microsoft.HybridNetwork/vendors/vendorskus", + "properties": { + "deploymentMode": "PrivateEdgeZone", + "preview": true, + "provisioningState": "Succeeded", + "managedApplicationTemplate": {}, + "virtualNetworkFunctionTemplate": { + "virutalNetworkFunctionRoleConfigurations": [ + { + "roleName": "test", + "roleType": "VirtualMachine", + "virtualMachineSize": "Standard_D3_v2", + "imageReference": { + "osType": "Linux", + "vhdName": "vhdName", + "vhdType": "VHD", + "sasUri": "https://.blob.core.windows.net//?sp=rl&st=st>Z&se=Z&sv=&sr=b&sig=" + }, + "osProfile": { + "adminUsername": "dummyuser", + "sshPublicKey": null + }, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "Wan", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "", + "vmSwitchType": "Management", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + } + }, + "201": { + "body": { + "name": "TestSku", + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor/vendorskus/TestSku", + "type": "Microsoft.HybridNetwork/vendors/vendorskus", + "properties": { + "deploymentMode": "PrivateEdgeZone", + "preview": true, + "provisioningState": "Accepted", + "managedApplicationTemplate": {}, + "virtualNetworkFunctionTemplate": { + "virutalNetworkFunctionRoleConfigurations": [ + { + "roleName": "test", + "roleType": "VirtualMachine", + "virtualMachineSize": "Standard_D3_v2", + "imageReference": { + "osType": "Linux", + "vhdName": "vhdName", + "vhdType": "VHD", + "sasUri": "https://.blob.core.windows.net//?sp=rl&st=st>Z&se=Z&sv=&sr=b&sig=" + }, + "osProfile": { + "adminUsername": "dummyuser", + "sshPublicKey": null + }, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "", + "vmSwitchType": "", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorSkuDelete.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorSkuDelete.json new file mode 100644 index 000000000000..c1d9ffdc904a --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorSkuDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "vendorName": "TestVendor", + "skuName": "TestSku" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorSkuGet.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorSkuGet.json new file mode 100644 index 000000000000..605cc22e53dd --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorSkuGet.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "vendorName": "TestVendor", + "skuName": "TestSku" + }, + "responses": { + "200": { + "body": { + "name": "TestSku", + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor/vendorskus/TestSku", + "type": "Microsoft.HybridNetwork/vendors/vendorskus", + "properties": { + "deploymentMode": "PrivateEdgeZone", + "preview": true, + "provisioningState": "Succeeded", + "managedApplicationTemplate": {}, + "virtualNetworkFunctionTemplate": { + "virutalNetworkFunctionRoleConfigurations": [ + { + "roleName": "test", + "roleType": "VirtualMachine", + "virtualMachineSize": "Standard_D3_v2", + "imageReference": { + "osType": "Linux", + "vhdName": "vhdName", + "vhdType": "VHD", + "sasUri": "https://.blob.core.windows.net//?sp=rl&st=st>Z&se=Z&sv=&sr=b&sig=" + }, + "osProfile": { + "adminUsername": "dummyuser", + "sshPublicKey": null + }, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "", + "vmSwitchType": "", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorSkuListAll.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorSkuListAll.json new file mode 100644 index 000000000000..9d6161f86364 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorSkuListAll.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "vendorName": "TestVendor" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "TestSku1", + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor/vendorskus/TestSku1", + "type": "Microsoft.HybridNetwork/vendors/vendorskus", + "properties": { + "deploymentMode": "PrivateEdgeZone", + "preview": true, + "provisioningState": "Succeeded", + "managedApplicationTemplate": {}, + "virtualNetworkFunctionTemplate": { + "virutalNetworkFunctionRoleConfigurations": [ + { + "roleName": "test", + "roleType": "VirtualMachine", + "virtualMachineSize": "Standard_D3_v2", + "imageReference": { + "osType": "Linux", + "vhdName": "vhdName", + "vhdType": "VHD", + "sasUri": "https://.blob.core.windows.net//?sp=rl&st=st>Z&se=Z&sv=&sr=b&sig=" + }, + "osProfile": { + "adminUsername": "dummyuser", + "sshPublicKey": null + }, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "", + "vmSwitchType": "", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + }, + { + "name": "TestSku2", + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/vendors/TestVendor/vendorskus/TestSku2", + "type": "Microsoft.HybridNetwork/vendors/vendorskus", + "properties": { + "deploymentMode": "PrivateEdgeZone", + "preview": true, + "provisioningState": "Succeeded", + "managedApplicationTemplate": {}, + "virtualNetworkFunctionTemplate": { + "virutalNetworkFunctionRoleConfigurations": [ + { + "roleName": "test", + "roleType": "VirtualMachine", + "virtualMachineSize": "Standard_D3_v2", + "imageReference": { + "osType": "Linux", + "vhdName": "vhdName", + "vhdType": "VHD", + "sasUri": "https://.blob.core.windows.net//?sp=rl&st=st>Z&se=Z&sv=&sr=b&sig=" + }, + "osProfile": { + "adminUsername": "dummyuser", + "sshPublicKey": null + }, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "", + "vmSwitchType": "", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorVnfCreate.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorVnfCreate.json new file mode 100644 index 000000000000..bb8d1ddd0c12 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorVnfCreate.json @@ -0,0 +1,176 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "locationName": "eastus", + "vendorName": "testVendor", + "serviceKey": "testServiceKey", + "parameters": { + "location": "eastus", + "properties": { + "skuType": "SDWAN", + "vendorProvisioningState": "Provisioning", + "virtualNetworkFunctionVendorConfigurations": [ + { + "roleName": "testRole", + "customData": "base-64 encoded string of custom data", + "osProfile": { + "adminUsername": "dummyuser", + "adminPassword": "dummypassword", + "sshPublicKey": null + }, + "userDataParameters": {}, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "Management", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "DC-97-F8-79-16-7D", + "vmSwitchType": "Wan", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/locations/eastus/vendors/testVendor/virtualNetworkFunctions/testServiceKey", + "name": "testServiceKey", + "type": "Microsoft.HybridNetwork/locations/vendors/virtualNetworkFunctions", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "vendorProvisioningState": "Provisioning", + "skuName": "testSku", + "skuType": "SDWAN", + "virtualNetworkFunctionVendorConfigurations": [ + { + "roleName": "testRole", + "customData": "base-64 encoded string of custom data", + "osProfile": { + "adminUsername": "dummyuser", + "sshPublicKey": null + }, + "userDataParameters": {}, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "Management", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "DC-97-F8-79-16-7D", + "vmSwitchType": "Wan", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/locations/eastus/vendors/testVendor/virtualNetworkFunctions/testServiceKey", + "name": "testServiceKey", + "type": "Microsoft.HybridNetwork/locations/vendors/virtualNetworkFunctions", + "location": "eastus", + "properties": { + "provisioningState": "Accepted", + "vendorProvisioningState": "Provisioning", + "skuName": "testSku", + "skuType": "SDWAN", + "virtualNetworkFunctionVendorConfigurations": [ + { + "roleName": "testRole", + "customData": "base-64 encoded string of custom data", + "osProfile": { + "adminUsername": "dummyuser", + "sshPublicKey": null + }, + "userDataParameters": {}, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "Management", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "DC-97-F8-79-16-7D", + "vmSwitchType": "Wan", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorVnfGet.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorVnfGet.json new file mode 100644 index 000000000000..942593ddc290 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorVnfGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "locationName": "eastus", + "vendorName": "testVendor", + "serviceKey": "testServiceKey" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/locations/eastus/vendors/testVendor/virtualNetworkFunctions/testServiceKey", + "name": "testServiceKey", + "type": "Microsoft.HybridNetwork/locations/vendors/virtualNetworkFunctions", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "vendorProvisioningState": "Provisioning", + "skuName": "testSku", + "skuType": "SDWAN", + "virtualNetworkFunctionVendorConfigurations": [ + { + "roleName": "testRole", + "customData": "base-64 encoded string of custom data", + "osProfile": { + "adminUsername": "dummyuser", + "sshPublicKey": null + }, + "userDataParameters": {}, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "Management", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "DC-97-F8-79-16-7D", + "vmSwitchType": "Wan", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorVnfList.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorVnfList.json new file mode 100644 index 000000000000..e28b4364bfd6 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VendorVnfList.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "locationName": "eastus", + "vendorName": "testVendor" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.HybridNetwork/locations/eastus/vendors/testVendor/virtualNetworkFunctions/testServiceKey", + "name": "TestServiceKey", + "type": "Microsoft.HybridNetwork/locations/vendors/virtualNetworkFunctions", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "vendorProvisioningState": "Provisioning", + "skuName": "testSku", + "skuType": "SDWAN", + "virtualNetworkFunctionVendorConfigurations": [ + { + "roleName": "testRole", + "customData": "base-64 encoded string of custom data", + "osProfile": { + "adminUsername": "dummyuser", + "sshPublicKey": null + }, + "userDataParameters": {}, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "Management", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "DC-97-F8-79-16-7D", + "vmSwitchType": "Wan", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionCreate.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionCreate.json new file mode 100644 index 000000000000..ff285e2c7263 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionCreate.json @@ -0,0 +1,182 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg", + "virtualNetworkFunctionName": "testVnf", + "parameters": { + "location": "eastus", + "properties": { + "device": { + "id": "/subscriptions/subid/resourcegroups/rg/providers/Microsoft.HybridNetwork/devices/testDevice" + }, + "skuName": "testSku", + "skuType": "SDWAN", + "vendorName": "testVendor", + "managedApplicationParameters": {}, + "virtualNetworkFunctionUserConfigurations": [ + { + "roleName": "testRole", + "userDataParameters": {}, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "Management", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "DC-97-F8-79-16-7D", + "vmSwitchType": "Wan", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg/providers/Microsoft.HybridNetwork/virtualNetworkFunctions/testVnf", + "name": "testVnf", + "type": "Microsoft.HybridNetwork/virtualNetworkFunctions", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "device": { + "id": "/subscriptions/subid/resourcegroups/rg/providers/Microsoft.HybridNetwork/devices/testDevice" + }, + "skuName": "testSku", + "skuType": "SDWAN", + "vendorName": "testVendor", + "serviceKey": "testServiceKey", + "vendorProvisioningState": "NotProvisioned", + "managedApplication": { + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applications/testServiceKey" + }, + "managedApplicationParameters": {}, + "virtualNetworkFunctionUserConfigurations": [ + { + "roleName": "testRole", + "userDataParameters": {}, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "Management", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "DC-97-F8-79-16-7D", + "vmSwitchType": "Wan", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg/providers/Microsoft.HybridNetwork/virtualNetworkFunctions/testVnf", + "name": "testVnf", + "type": "Microsoft.HybridNetwork/virtualNetworkFunctions", + "location": "eastus", + "properties": { + "provisioningState": "Accepted", + "device": { + "id": "/subscriptions/subid/resourcegroups/rg/providers/Microsoft.HybridNetwork/devices/testDevice" + }, + "skuName": "testSku", + "skuType": "SDWAN", + "vendorName": "testVendor", + "serviceKey": "testServiceKey", + "vendorProvisioningState": "NotProvisioned", + "managedApplication": { + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applications/testServiceKey" + }, + "managedApplicationParameters": {}, + "virtualNetworkFunctionUserConfigurations": [ + { + "roleName": "testRole", + "userDataParameters": {}, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "Management", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "DC-97-F8-79-16-7D", + "vmSwitchType": "Wan", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionDelete.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionDelete.json new file mode 100644 index 000000000000..a34ac019cda4 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg", + "virtualNetworkFunctionName": "testVnf" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionGet.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionGet.json new file mode 100644 index 000000000000..65dd38218b47 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionGet.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg", + "virtualNetworkFunctionName": "testVnf" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg/providers/Microsoft.HybridNetwork/virtualNetworkFunctions/testVnf", + "name": "testVnf", + "type": "Microsoft.HybridNetwork/virtualNetworkFunctions", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "device": { + "id": "/subscriptions/subid/resourcegroups/rg/providers/Microsoft.HybridNetwork/devices/testDevice" + }, + "skuName": "testSku", + "skuType": "SDWAN", + "vendorName": "testVendor", + "serviceKey": "testServiceKey", + "vendorProvisioningState": "NotProvisioned", + "managedApplication": { + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applications/testServiceKey" + }, + "managedApplicationParameters": {}, + "virtualNetworkFunctionUserConfigurations": [ + { + "roleName": "testRole", + "userDataParameters": {}, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "Management", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "DC-97-F8-79-16-7D", + "vmSwitchType": "Wan", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionGetSkuDetails.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionGetSkuDetails.json new file mode 100644 index 000000000000..db2ed70e5049 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionGetSkuDetails.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "vendorName": "testVendor", + "vendorSkuName": "testSku" + }, + "responses": { + "200": { + "body": { + "skuType": "SDWAN", + "value": [ + { + "roleName": "testRole", + "userDataTemplate": {}, + "userDataParameters": {}, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "Management", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "", + "vmSwitchType": "Wan", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionListByResourceGroup.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionListByResourceGroup.json new file mode 100644 index 000000000000..ec8b416242e0 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionListByResourceGroup.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg/providers/Microsoft.HybridNetwork/virtualNetworkFunctions/testVnf", + "name": "testVnf", + "type": "Microsoft.HybridNetwork/virtualNetworkFunctions", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "device": { + "id": "/subscriptions/subid/resourcegroups/rg/providers/Microsoft.HybridNetwork/devices/testDevice" + }, + "skuName": "testSku", + "skuType": "SDWAN", + "vendorName": "testVendor", + "serviceKey": "testServiceKey", + "vendorProvisioningState": "NotProvisioned", + "managedApplication": { + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applications/testServiceKey" + }, + "managedApplicationParameters": {}, + "virtualNetworkFunctionUserConfigurations": [ + { + "roleName": "testRole", + "userDataParameters": {}, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "Management", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "DC-97-F8-79-16-7D", + "vmSwitchType": "Wan", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionListBySubscription.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionListBySubscription.json new file mode 100644 index 000000000000..7d644952cf00 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionListBySubscription.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg/providers/Microsoft.HybridNetwork/virtualNetworkFunctions/testVnf", + "name": "testVnf", + "type": "Microsoft.HybridNetwork/virtualNetworkFunctions", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "device": { + "id": "/subscriptions/subid/resourcegroups/rg/providers/Microsoft.HybridNetwork/devices/testDevice" + }, + "skuName": "testSku", + "skuType": "SDWAN", + "vendorName": "testVendor", + "serviceKey": "testServiceKey", + "vendorProvisioningState": "NotProvisioned", + "managedApplication": { + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applications/testServiceKey" + }, + "managedApplicationParameters": {}, + "virtualNetworkFunctionUserConfigurations": [ + { + "roleName": "testRole", + "userDataParameters": {}, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "Management", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "DC-97-F8-79-16-7D", + "vmSwitchType": "Wan", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionSkuList.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionSkuList.json new file mode 100644 index 000000000000..ba9be520bd4e --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionSkuList.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "vendorName": "testVendor" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "skuName": "testSku", + "skuType": "SDWAN" + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionUpdateTags.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionUpdateTags.json new file mode 100644 index 000000000000..ce573d51b592 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionUpdateTags.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg", + "virtualNetworkFunctionName": "testVnf", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg/providers/Microsoft.HybridNetwork/virtualNetworkFunctions/testVnf", + "name": "testVnf", + "type": "Microsoft.HybridNetwork/virtualNetworkFunctions", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "device": { + "id": "/subscriptions/subid/resourcegroups/rg/providers/Microsoft.HybridNetwork/devices/testDevice" + }, + "skuName": "testSku", + "skuType": "SDWAN", + "vendorName": "testVendor", + "serviceKey": "testServiceKey", + "vendorProvisioningState": "NotProvisioned", + "managedApplication": { + "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Solutions/applications/testServiceKey" + }, + "managedApplicationParameters": {}, + "virtualNetworkFunctionUserConfigurations": [ + { + "roleName": "testRole", + "userDataParameters": {}, + "networkInterfaces": [ + { + "networkInterfaceName": "nic1", + "macAddress": "", + "vmSwitchType": "Management", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + }, + { + "networkInterfaceName": "nic2", + "macAddress": "DC-97-F8-79-16-7D", + "vmSwitchType": "Wan", + "ipConfigurations": [ + { + "ipAllocationMethod": "Dynamic", + "ipAddress": "", + "subnet": "", + "gateway": "", + "ipVersion": "IPv4", + "dnsServers": null + } + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionVendorAndSkuList.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionVendorAndSkuList.json new file mode 100644 index 000000000000..bd23c83c6d3c --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/examples/VirtualNetworkFunctionVendorAndSkuList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "vendorName": "testVendor", + "skuList": [ + { + "skuName": "testSku", + "skuType": "SDWAN" + } + ] + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/operations.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/operations.json new file mode 100644 index 000000000000..eb38d176e17d --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/operations.json @@ -0,0 +1,128 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridNetworkManagementClient", + "description": "The resources in this swagger specification will be used to manage the operations.", + "version": "2020-01-01-preview" + }, + "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": { + "/providers/Microsoft.HybridNetwork/operations": { + "get": { + "tags": [ + "operations" + ], + "operationId": "Operations_List", + "description": "Gets a list of the operations.", + "parameters": [ + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK Returns a list of operations.", + "schema": { + "$ref": "#/definitions/OperationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Get Registration Operations": { + "$ref": "./examples/GetOperations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "Operation": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {provider}/{resource}/{operation}" + }, + "display": { + "readOnly": true, + "description": "The object that represents the operation.", + "properties": { + "provider": { + "type": "string", + "description": "Service provider: Microsoft.HybridNetwork" + }, + "resource": { + "type": "string", + "description": "Resource on which the operation is performed: Registration definition, registration assignment etc." + }, + "operation": { + "type": "string", + "description": "Operation type: Read, write, delete, etc." + }, + "description": { + "type": "string", + "description": "Description of the operation." + } + } + } + }, + "type": "object", + "description": "Object that describes a single Microsoft.HybridNetwork operation." + }, + "OperationList": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of Microsoft.HybridNetwork operations." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "type": "object", + "description": "List of the operations." + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/vendor.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/vendor.json new file mode 100644 index 000000000000..cee87dde532a --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/vendor.json @@ -0,0 +1,1283 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridNetworkManagementClient", + "description": "The resources in this swagger specification will be used by vendors to on-board offerings and manage virtual network functions.", + "version": "2020-01-01-preview" + }, + "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}/providers/Microsoft.HybridNetwork/vendors/{vendorName}": { + "delete": { + "tags": [ + "Vendors" + ], + "operationId": "Vendors_Delete", + "description": "Deletes the specified vendor.", + "parameters": [ + { + "name": "vendorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vendor." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. Request is successful." + }, + "202": { + "description": "Accepted. Sets provisioningState to 'Deleting' until the operation is completed. Returns an operation URI that can be queried to find the current state of the operation." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Delete vendor resource": { + "$ref": "./examples/VendorDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Vendors" + ], + "operationId": "Vendors_Get", + "description": "Gets information about the specified vendor.", + "parameters": [ + { + "name": "vendorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of vendor." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting vendor resource.", + "schema": { + "$ref": "#/definitions/Vendor" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Get Vendor resource": { + "$ref": "./examples/VendorGet.json" + } + } + }, + "put": { + "tags": [ + "Vendors" + ], + "operationId": "Vendors_CreateOrUpdate", + "description": "Creates or updates a vendor.", + "parameters": [ + { + "name": "vendorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vendor." + }, + { + "name": "parameters", + "in": "body", + "schema": { + "$ref": "#/definitions/Vendor" + }, + "description": "Parameters supplied to the create vendor." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. Request is successful.", + "schema": { + "$ref": "#/definitions/Vendor" + } + }, + "201": { + "description": "Created. The header contains ‘Azure-AsyncOperation’ header pointing to an operations resource. The operation URI can be queried to find the current state of the operation.", + "schema": { + "$ref": "#/definitions/Vendor" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Create or update Vendor resource": { + "$ref": "./examples/VendorCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridNetwork/vendors": { + "get": { + "tags": [ + "Vendors" + ], + "operationId": "Vendors_ListBySubscription", + "description": "Lists all the vendors in a subscription.", + "parameters": [ + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of vendor resources.", + "schema": { + "$ref": "#/definitions/VendorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Lists all vendor resources in subscription": { + "$ref": "./examples/VendorListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridNetwork/vendors/{vendorName}/vendorSkus/{skuName}": { + "delete": { + "tags": [ + "VendorSkus" + ], + "operationId": "VendorSkus_Delete", + "description": "Deletes the specified sku.", + "parameters": [ + { + "name": "vendorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vendor." + }, + { + "name": "skuName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the sku." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. Request is successful." + }, + "202": { + "description": "Accepted. Sets provisioningState to 'Deleting' until the operation is completed.. Returns an operation URI that can be queried to find the current state of the operation." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Delete the sku of vendor resource": { + "$ref": "./examples/VendorSkuDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VendorSkus" + ], + "operationId": "VendorSkus_Get", + "description": "Gets information about the specified sku.", + "parameters": [ + { + "name": "vendorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of vendor." + }, + { + "name": "skuName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the sku." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting vendor resource.", + "schema": { + "$ref": "#/definitions/VendorSku" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Get the sku of Vendor resource": { + "$ref": "./examples/VendorSkuGet.json" + } + } + }, + "put": { + "tags": [ + "VendorSkus" + ], + "operationId": "VendorSkus_CreateOrUpdate", + "description": "Creates or updates a sku", + "parameters": [ + { + "name": "vendorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vendor." + }, + { + "name": "skuName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the sku." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VendorSku" + }, + "description": "Parameters supplied to the create or update sku." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update or creation successful. The operation returns the resulting vendor sku sub resource.", + "schema": { + "$ref": "#/definitions/VendorSku" + } + }, + "201": { + "description": "Created. The operation returns the resulting vendor sku sub resource.", + "schema": { + "$ref": "#/definitions/VendorSku" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Create or update the sku of Vendor resource": { + "$ref": "./examples/VendorSkuCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridNetwork/vendors/{vendorName}/vendorSkus": { + "get": { + "tags": [ + "VendorSkus" + ], + "operationId": "VendorSkus_List", + "description": "Lists all the skus of a vendor.", + "parameters": [ + { + "name": "vendorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vendor." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of vendor sku resources.", + "schema": { + "$ref": "#/definitions/VendorSkuListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Lists all the vendor skus of vendor resource": { + "$ref": "./examples/VendorSkuListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridNetwork/locations/{locationName}/vendors/{vendorName}/virtualNetworkFunctions/{serviceKey}": { + "get": { + "tags": [ + "VendorVirtualNetworkFunctions" + ], + "operationId": "VendorVirtualNetworkFunctions_Get", + "description": "Gets information about the specified virtual network function.", + "parameters": [ + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The azure region where the virtual network function sub resource was created by customer." + }, + { + "name": "vendorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vendor." + }, + { + "name": "serviceKey", + "in": "path", + "required": true, + "type": "string", + "description": "The unique GUID for the virtual network function." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting vendor virtual network function sub resource.", + "schema": { + "$ref": "#/definitions/VendorVirtualNetworkFunction" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Get vendor virtual network function sub resource by service key of virtual network function.": { + "$ref": "./examples/VendorVnfGet.json" + } + } + }, + "put": { + "tags": [ + "VendorVirtualNetworkFunctions" + ], + "operationId": "VendorVirtualNetworkFunctions_CreateOrUpdate", + "description": "Create or update a virtual network function.", + "parameters": [ + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The azure region where the virtual network function resource was created by customer." + }, + { + "name": "vendorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vendor." + }, + { + "name": "serviceKey", + "in": "path", + "required": true, + "type": "string", + "description": "The unique GUID for the virtual network function." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VendorVirtualNetworkFunction" + }, + "description": "Parameters supplied to the update vendor virtual network function." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Create or update is successful. The operation returns the resulting vendor virtual network function sub resource.", + "schema": { + "$ref": "#/definitions/VendorVirtualNetworkFunction" + } + }, + "201": { + "description": "Created. The operation returns the resulting vendor virtual network function sub resource.", + "schema": { + "$ref": "#/definitions/VendorVirtualNetworkFunction" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Update vendor virtual network function sub resource": { + "$ref": "./examples/VendorVnfCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridNetwork/locations/{locationName}/vendors/{vendorName}/virtualNetworkFunctions": { + "get": { + "tags": [ + "VendorVirtualNetworkFunctions" + ], + "operationId": "VendorVirtualNetworkFunctions_List", + "description": "List all the vendor virtual network function sub resources in an azure region. Filter by skuType, skuName, vendorProvisioningState", + "parameters": [ + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The azure region where the virtual network function resource was created by customer." + }, + { + "name": "vendorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vendor." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. The properties you can use for eq (equals) are: skuType, skuName and vendorProvisioningState." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting hybrid network vendor virtual network function sub resource.", + "schema": { + "$ref": "#/definitions/VendorVirtualNetworkFunctionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Get all vnf of Vendor resource": { + "$ref": "./examples/VendorVnfList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridNetwork/vendors/{vendorName}/vendorSkus/{skuName}/previewSubscriptions": { + "get": { + "tags": [ + "VendorSkuPreview" + ], + "operationId": "VendorSkuPreview_List", + "description": "Gets preview information of a vendor sku", + "parameters": [ + { + "name": "vendorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vendor." + }, + { + "name": "skuName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the sku." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the preview information of the vendor sku sub resource.", + "schema": { + "$ref": "#/definitions/PreviewSubscriptionsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Get all preview subscriptions of vendor sku sub resource": { + "$ref": "./examples/GetVendorSkuPreviews.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridNetwork/vendors/{vendorName}/vendorSkus/{skuName}/previewSubscriptions/{previewSubscription}": { + "put": { + "tags": [ + "VendorSkuPreview" + ], + "operationId": "VendorSkuPreview_CreateOrUpdate", + "description": "Creates or updates preview information of a vendor sku", + "parameters": [ + { + "name": "vendorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vendor." + }, + { + "name": "skuName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vendor sku." + }, + { + "name": "previewSubscription", + "in": "path", + "required": true, + "type": "string", + "description": "Preview subscription id." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PreviewSubscription" + }, + "description": "Parameters supplied to the update vendor virtual network function." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request accepted. The operation is updating or creating the preview information of the vendor sku sub resource.", + "schema": { + "$ref": "#/definitions/PreviewSubscription" + } + }, + "200": { + "description": "Request successful. The operation updated the preview information of the vendor sku sub resource.", + "schema": { + "$ref": "#/definitions/PreviewSubscription" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Creates or updates preview subscription of vendor sku sub resource": { + "$ref": "./examples/CreateVendorSkuPreview.json" + } + } + }, + "get": { + "tags": [ + "VendorSkuPreview" + ], + "operationId": "VendorSkuPreview_Get", + "description": "Gets preview information of a vendor sku", + "parameters": [ + { + "name": "vendorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vendor." + }, + { + "name": "skuName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vendor sku." + }, + { + "name": "previewSubscription", + "in": "path", + "required": true, + "type": "string", + "description": "Preview subscription id." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation updated the preview information of the vendor sku sub resource.", + "schema": { + "$ref": "#/definitions/PreviewSubscription" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Gets preview subscription of vendor sku sub resource": { + "$ref": "./examples/GetVendorSkuPreview.json" + } + } + }, + "delete": { + "tags": [ + "VendorSkuPreview" + ], + "operationId": "VendorSkuPreview_Delete", + "description": "Deletes preview information of a vendor sku", + "parameters": [ + { + "name": "vendorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vendor." + }, + { + "name": "skuName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vendor sku." + }, + { + "name": "previewSubscription", + "in": "path", + "required": true, + "type": "string", + "description": "Preview subscription id." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation deleted the vendor sku preview resource." + }, + "202": { + "description": "Request is accepted. The operation is deleting the vendor sku preview resource." + }, + "204": { + "description": "Request successful. The vendor sku preview resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Deletes preview subscription of vendor sku sub resource": { + "$ref": "./examples/DeleteVendorSkuPreview.json" + } + } + } + } + }, + "definitions": { + "Vendor": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VendorPropertiesFormat", + "description": "Vendor properties." + } + }, + "allOf": [ + { + "$ref": "./common.json#/definitions/Resource" + } + ], + "description": "Vendor resource." + }, + "VendorPropertiesFormat": { + "description": "Vendor properties.", + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./common.json#/definitions/ProvisioningState", + "description": "The provisioning state of the vendor resource." + }, + "skus": { + "type": "array", + "items": { + "$ref": "./common.json#/definitions/SubResource" + }, + "readOnly": true, + "description": "A list of ids of the vendor skus offered by the vendor." + } + } + }, + "VendorSku": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VendorSkuPropertiesFormat", + "description": "Vendor sku details." + } + }, + "allOf": [ + { + "$ref": "./common.json#/definitions/Resource" + } + ], + "description": "Sku sub resource." + }, + "VendorSkuPropertiesFormat": { + "description": "Sku properties", + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./common.json#/definitions/ProvisioningState", + "description": "The provisioning state of the vendor sku sub resource." + }, + "skuType": { + "$ref": "./common.json#/definitions/SkuType", + "description": "Sku type." + }, + "deploymentMode": { + "type": "string", + "description": "Sku deployment mode.", + "enum": [ + "Unknown", + "Azure", + "PrivateEdgeZone" + ], + "x-ms-enum": { + "name": "SkuDeploymentMode", + "modelAsString": true + } + }, + "preview": { + "type": "boolean", + "description": "Indicates if the vendor sku is in preview mode." + }, + "managedApplicationParameters": { + "$ref": "./common.json#/definitions/ManagedApplicationParameters", + "description": "The parameters for the managed application to be supplied by vendor." + }, + "managedApplicationTemplate": { + "type": "object", + "description": "The template for the managed application deployment." + }, + "virtualNetworkFunctionTemplate": { + "$ref": "#/definitions/VirtualNetworkFunctionTemplate", + "description": "The template definition of the virtual network function." + } + } + }, + "VendorSkuListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VendorSku" + }, + "description": "A list of vendor skus offered by the vendor." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to get the next set of results." + } + }, + "description": "Response for list vendor sku API service call." + }, + "VendorListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Vendor" + }, + "description": "A list of vendors." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for Vendors API service call." + }, + "VendorVirtualNetworkFunctionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VendorVirtualNetworkFunction" + }, + "description": "A list of vendor virtual network function." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for vendors API service call." + }, + "VendorVirtualNetworkFunction": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VendorVirtualNetworkFunctionPropertiesFormat", + "description": "Virtual network function details." + } + }, + "allOf": [ + { + "$ref": "./common.json#/definitions/Resource" + } + ], + "description": "Vendor virtual network function sub resource." + }, + "VendorVirtualNetworkFunctionPropertiesFormat": { + "description": "Vendor virtual network function properties", + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./common.json#/definitions/ProvisioningState", + "description": "The provisioning state of the vendor virtual network function sub resource." + }, + "vendorProvisioningState": { + "$ref": "./common.json#/definitions/VendorProvisioningState", + "description": "Vendor controlled provisioning state of the vendor virtual network function." + }, + "skuName": { + "readOnly": true, + "type": "string", + "description": "Name of the sku" + }, + "skuType": { + "$ref": "./common.json#/definitions/SkuType", + "description": "Sku type.", + "readOnly": true + }, + "virtualNetworkFunctionVendorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkFunctionVendorConfiguration" + }, + "description": "An array of virtual network function vendor configurations." + } + } + }, + "VirtualNetworkFunctionTemplate": { + "properties": { + "virutalNetworkFunctionRoleConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkFunctionRoleConfiguration" + }, + "description": "An array of virtual network function role definitions." + } + }, + "description": "The virtual network function template." + }, + "VirtualNetworkFunctionRoleConfiguration": { + "description": "Virtual network function role configuration.", + "properties": { + "roleName": { + "type": "string", + "description": "The name of the virtual network function role." + }, + "roleType": { + "type": "string", + "description": "Role type.", + "enum": [ + "Unknown", + "VirtualMachine" + ], + "x-ms-enum": { + "name": "VirtualNetworkFunctionRoleConfigurationType", + "modelAsString": true + } + }, + "virtualMachineSize": { + "type": "string", + "description": "The size of the virtual machine.", + "enum": [ + "Unknown", + "Standard_D1_v2", + "Standard_D2_v2", + "Standard_D3_v2", + "Standard_D4_v2", + "Standard_D5_v2", + "Standard_D11_v2", + "Standard_D12_v2", + "Standard_D13_v2", + "Standard_DS1_v2", + "Standard_DS2_v2", + "Standard_DS3_v2", + "Standard_DS4_v2", + "Standard_DS5_v2", + "Standard_DS11_v2", + "Standard_DS12_v2", + "Standard_DS13_v2" + ], + "x-ms-enum": { + "name": "VirtualMachineSizeTypes", + "modelAsString": true + } + }, + "imageReference": { + "description": "The definition of image reference.", + "$ref": "#/definitions/ImageReference" + }, + "osProfile": { + "description": "Specifies the operating system settings for the role instance. This value can be updated during the deployment of virtual network function.", + "$ref": "#/definitions/OsProfile" + }, + "userDataTemplate": { + "$ref": "./common.json#/definitions/UserDataTemplate", + "description": "The user data template for customers. This is json scheme template describing the format and data type of user data parameters." + }, + "userDataParameters": { + "$ref": "./common.json#/definitions/UserDataParameters", + "description": "The user parameters for customers. The format of user data parameters has to be matched with the provided user data template." + }, + "networkInterfaces": { + "type": "array", + "items": { + "$ref": "./common.json#/definitions/NetworkInterface" + }, + "description": "The network interface configurations." + } + } + }, + "VirtualNetworkFunctionVendorConfiguration": { + "properties": { + "roleName": { + "type": "string", + "description": "The name of the virtual network function role." + }, + "customData": { + "type": "string", + "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the virtual machine. The maximum length of the binary array is 65535 bytes.

**Note: Do not pass any secrets or passwords in customData property**

This property cannot be updated after the VM is created.

customData is passed to the VM to be saved as a file, for more information see [Custom Data on Azure VMs](https://azure.microsoft.com/en-us/blog/custom-data-and-cloud-init-on-windows-azure/)

For using cloud-init for your Linux VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" + }, + "osProfile": { + "description": "Specifies the operating system settings for the role instance.", + "$ref": "#/definitions/OsProfile" + }, + "userDataParameters": { + "$ref": "./common.json#/definitions/UserDataParameters", + "readOnly": true, + "description": "The user parameters from the customer." + }, + "networkInterfaces": { + "type": "array", + "items": { + "$ref": "./common.json#/definitions/NetworkInterface" + }, + "description": "The network interface configurations." + } + }, + "description": "Virtual network function vendor configuration." + }, + "ImageReference": { + "properties": { + "osType": { + "type": "string", + "description": "The OS type.", + "enum": [ + "Unknown", + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": true + } + }, + "vhdName": { + "type": "string", + "description": "The VHD name." + }, + "vhdType": { + "type": "string", + "description": "The VHD type.", + "enum": [ + "Unknown", + "VHD", + "VHDX" + ], + "x-ms-enum": { + "name": "VHDType", + "modelAsString": true + } + }, + "sasUri": { + "type": "string", + "description": "The VHD SAS URI." + } + }, + "description": "The image reference properties." + }, + "OsProfile": { + "properties": { + "adminUsername": { + "type": "string", + "description": "Specifies the name of the administrator account.

**Windows-only restriction:** Cannot end in \".\"

**Disallowed values:** \"administrator\", \"admin\", \"user\", \"user1\", \"test\", \"user2\", \"test1\", \"user3\", \"admin1\", \"1\", \"123\", \"a\", \"actuser\", \"adm\", \"admin2\", \"aspnet\", \"backup\", \"console\", \"david\", \"guest\", \"john\", \"owner\", \"root\", \"server\", \"sql\", \"support\", \"support_388945a0\", \"sys\", \"test2\", \"test3\", \"user4\", \"user5\".

**Minimum-length (Linux):** 1 character

**Max-length (Linux):** 64 characters

**Max-length (Windows):** 20 characters

  • For root access to the Linux VM, see [Using root privileges on Linux virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
  • For a list of built-in system users on Linux that should not be used in this field, see [Selecting User Names for Linux on Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)." + }, + "adminPassword": { + "type": "string", + "x-ms-secret": true, + "x-ms-mutability": [ + "create", + "update" + ], + "description": "Specifies the password of the administrator account.

    **Minimum-length (Windows):** 8 characters

    **Minimum-length (Linux):** 6 characters

    **Max-length (Windows):** 123 characters

    **Max-length (Linux):** 72 characters

    **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
    Has lower characters
    Has upper characters
    Has a digit
    Has a special character (Regex match [\\W_])

    For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password)." + }, + "sshPublicKey": { + "type": "string", + "description": "Contains information about SSH certificate public key and the path on the Linux VM where the public key is placed." + } + }, + "description": "Specifies the operating system settings for the role instance." + }, + "PreviewSubscription": { + "x-ms-azure-resource": true, + "description": "Customer subscription which can use a sku.", + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "Preview subscription id" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "ARM id of the resource" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Type of the resource" + } + } + }, + "PreviewSubscriptionsList": { + "description": "List of customer subscriptions which can use a sku.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PreviewSubscription" + }, + "description": "A list of preview subscriptions." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + } + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/virtualNetworkFunction.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/virtualNetworkFunction.json new file mode 100644 index 000000000000..41d501d7b662 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/virtualNetworkFunction.json @@ -0,0 +1,463 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridNetworkManagementClient", + "description": "The resources in this swagger specification will be used to manage the virtual network function deployment in a hybrid network resource provider.", + "version": "2020-01-01-preview" + }, + "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.HybridNetwork/virtualNetworkFunctions/{virtualNetworkFunctionName}": { + "delete": { + "tags": [ + "VirtualNetworkFunctions" + ], + "operationId": "VirtualNetworkFunctions_Delete", + "description": "Deletes the specified hybrid network virtual network function resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkFunctionName", + "description": "The name of the hybrid network virtual network function.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed successfully." + }, + "202": { + "description": "Accepted. The header contains ‘Azure-AsyncOperation’ header pointing to an operations resource. The operation URI can be queried to find the current state of the operation." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Delete hybrid network virtual network function resource": { + "$ref": "./examples/VirtualNetworkFunctionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualNetworkFunctions" + ], + "operationId": "VirtualNetworkFunctions_Get", + "description": "Gets information about the specified hybrid network virtual network function resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkFunctionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of hybrid network virtual network function resource." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation successful. The operation returns the resulting hybrid network virtual network function resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkFunction" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Get hybrid network virtual network function resource": { + "$ref": "./examples/VirtualNetworkFunctionGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworkFunctions" + ], + "operationId": "VirtualNetworkFunctions_CreateOrUpdate", + "description": "Creates or updates a hybrid network virtual network function resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkFunctionName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource name for the hybrid network virtual network function resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkFunction" + }, + "description": "Parameters supplied in the body to create or update hybrid network virtual network function operation." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation is completed successfully.", + "schema": { + "$ref": "#/definitions/VirtualNetworkFunction" + } + }, + "201": { + "description": "Created or Updated. The header contains ‘Azure-AsyncOperation’ header pointing to an operation resource. The operation URI can be queried to find the current state of the operation.", + "schema": { + "$ref": "#/definitions/VirtualNetworkFunction" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Create hybrid network virtual network function resource": { + "$ref": "./examples/VirtualNetworkFunctionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualNetworkFunctions" + ], + "operationId": "VirtualNetworkFunctions_UpdateTags", + "description": "Updates the tags for hybrid network virtual network function resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkFunctionName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource name for the virtual network function resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./common.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update hybrid network virtual network function tags." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update is completed successfully. The operation returns the resulting hybrid network virtual network function resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkFunction" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Update tags for hybrid network virtual network function resource": { + "$ref": "./examples/VirtualNetworkFunctionUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridNetwork/virtualNetworkFunctions": { + "get": { + "description": "List all the hybrid network virtual network functions in a subscription.", + "operationId": "VirtualNetworkFunctions_ListBySubscription", + "parameters": [ + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of hybrid network virtual network function resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkFunctionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "tags": [ + "VirtualNetworkFunctions" + ], + "x-ms-examples": { + "List all hybrid network virtual network function resources in subscription.": { + "$ref": "./examples/VirtualNetworkFunctionListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridNetwork/virtualNetworkFunctions": { + "get": { + "tags": [ + "VirtualNetworkFunctions" + ], + "operationId": "VirtualNetworkFunctions_ListByResourceGroup", + "description": "List all the hybrid network virtual network function resources in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of hybrid network virtual network function resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkFunctionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "List hybrid network virtual network function in resource group": { + "$ref": "./examples/VirtualNetworkFunctionListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualNetworkFunction": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkFunctionPropertiesFormat", + "description": "Hybrid network virtual network function properties." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./common.json#/definitions/Resource" + } + ], + "description": "Hybrid network virtual network function resource response." + }, + "VirtualNetworkFunctionPropertiesFormat": { + "description": "Hybrid network virtual network function properties.", + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./common.json#/definitions/ProvisioningState", + "description": "The provisioning state of the hybrid network virtual network function resource." + }, + "device": { + "$ref": "./common.json#/definitions/SubResource", + "description": "The reference to the hybrid network device." + }, + "skuName": { + "type": "string", + "description": "The sku name for the hybrid network virtual network function." + }, + "skuType": { + "readOnly": true, + "$ref": "./common.json#/definitions/SkuType", + "description": "The sku type for the hybrid network virtual network function." + }, + "vendorName": { + "type": "string", + "description": "The vendor name for the hybrid network virtual network function." + }, + "serviceKey": { + "type": "string", + "readOnly": true, + "description": "The service key for the virtual network function resource." + }, + "vendorProvisioningState": { + "readOnly": true, + "$ref": "./common.json#/definitions/VendorProvisioningState", + "description": "The vendor provisioning state for the virtual network function resource." + }, + "managedApplication": { + "readOnly": true, + "$ref": "./common.json#/definitions/SubResource", + "description": "The resource URI of the managed application." + }, + "managedApplicationParameters": { + "$ref": "./common.json#/definitions/ManagedApplicationParameters", + "description": "The parameters for the managed application." + }, + "virtualNetworkFunctionUserConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkFunctionUserConfiguration" + }, + "description": "The virtual network function configurations from the user." + } + } + }, + "VirtualNetworkFunctionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkFunction" + }, + "description": "A list of hybrid network virtual network function resources in a subscription or resource group." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "Response for hybrid network virtual network function API service call." + }, + "VirtualNetworkFunctionUserConfiguration": { + "properties": { + "roleName": { + "type": "string", + "description": "The name of the virtual network function role." + }, + "userDataParameters": { + "$ref": "./common.json#/definitions/UserDataParameters", + "description": "The user data parameters from the customer." + }, + "networkInterfaces": { + "type": "array", + "items": { + "$ref": "./common.json#/definitions/NetworkInterface" + }, + "description": "The network interface configuration." + } + }, + "description": "The virtual network function user configuration." + } + } +} diff --git a/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/virtualNetworkFunctionVendors.json b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/virtualNetworkFunctionVendors.json new file mode 100644 index 000000000000..83e78c9b7b4c --- /dev/null +++ b/specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2020-01-01-preview/virtualNetworkFunctionVendors.json @@ -0,0 +1,296 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridNetworkManagementClient", + "description": "The resources in this swagger specification will be used to manage the virtual network function vendor in a hybrid network resource provider.", + "version": "2020-01-01-preview" + }, + "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}/providers/Microsoft.HybridNetwork/virtualNetworkFunctionVendors": { + "get": { + "tags": [ + "virtualNetworkFunctionVendors" + ], + "operationId": "virtualNetworkFunctionVendors_List", + "description": "List all the available vendor and sku information in hybrid network.", + "parameters": [ + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of hybrid network vendors with available sku information.", + "schema": { + "$ref": "#/definitions/VirtualNetworkFunctionVendorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "List hybrid network vendors and skus.": { + "$ref": "./examples/VirtualNetworkFunctionVendorAndSkuList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridNetwork/virtualNetworkFunctionVendors/{vendorName}/vendorSkus": { + "get": { + "tags": [ + "virtualNetworkFunctionVendors" + ], + "operationId": "VirtualNetworkFunctionVendorSkus_ListByVendor", + "description": "List all virtual network function vendor sku details in a vendor", + "parameters": [ + { + "name": "vendorName", + "description": "The name of the hybrid network virtual network function vendor.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of virtual network function vendor skus", + "schema": { + "$ref": "#/definitions/VirtualNetworkFunctionSkuListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "List hybrid network vendors and skus.": { + "$ref": "./examples/VirtualNetworkFunctionSkuList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridNetwork/virtualNetworkFunctionVendors/{vendorName}/vendorSkus/{vendorSkuName}": { + "get": { + "tags": [ + "virtualNetworkFunctionVendors" + ], + "operationId": "virtualNetworkFunctionVendorSkus_List", + "description": "Gets information about hybrid network virtual network function vendor sku details", + "parameters": [ + { + "name": "vendorName", + "description": "The name of the hybrid network virtual network function vendor.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "vendorSkuName", + "description": "The name of the hybrid network virtual network function sku.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "./common.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./common.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting hybrid network virtual network function vendor sku details.", + "schema": { + "$ref": "#/definitions/VirtualNetworkFunctionSkuDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./common.json#/definitions/ErrorDetails" + } + } + }, + "x-ms-examples": { + "Get virtual network function sku details": { + "$ref": "./examples/VirtualNetworkFunctionGetSkuDetails.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "SkuOverview": { + "properties": { + "skuName": { + "type": "string", + "description": "The vendor sku name." + }, + "skuType": { + "$ref": "./common.json#/definitions/SkuType", + "description": "The vendor sku type." + } + }, + "description": "The virtual network function sku overview." + }, + "VirtualNetworkFunctionSkuDetails": { + "properties": { + "skuType": { + "$ref": "./common.json#/definitions/SkuType", + "description": "The virtual network function sku type." + }, + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkFunctionSkuRoleDetails" + }, + "description": "The virtual network function sku role details." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "The virtual network function sku details." + }, + "VendorDetails": { + "properties": { + "vendorName": { + "type": "string", + "description": "The virtual network function vendor name." + }, + "skuList": { + "type": "array", + "items": { + "$ref": "#/definitions/SkuOverview" + }, + "description": "The virtual network function sku list." + } + }, + "description": "The virtual network function vendor details." + }, + "VirtualNetworkFunctionVendor": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VendorDetails", + "description": "Vendors of the hybrid network service provider." + } + }, + "description": "The virtual network function vendor." + }, + "VirtualNetworkFunctionVendorListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkFunctionVendor" + }, + "description": "A list of available hybrid network virtual network function vendors and skus." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "The virtual network function vendor list result." + }, + "VirtualNetworkFunctionSkuRoleDetails": { + "properties": { + "roleName": { + "type": "string", + "description": "The name of the virtual network function role." + }, + "userDataTemplate": { + "$ref": "./common.json#/definitions/UserDataTemplate", + "description": "The user data template for customers." + }, + "userDataParameters": { + "$ref": "./common.json#/definitions/UserDataParameters", + "description": "The user parameters for customers." + }, + "networkInterfaces": { + "type": "array", + "items": { + "$ref": "./common.json#/definitions/NetworkInterface" + }, + "description": "The network interface configuration." + } + }, + "description": "The virtual network function user configuration." + }, + "VirtualNetworkFunctionSkuListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SkuOverview" + }, + "description": "The virtual network function vendor sku overview properties." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "A list of available hybrid network virtual network function skus." + } + } +} diff --git a/specification/hybridnetwork/resource-manager/readme.csharp.md b/specification/hybridnetwork/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..c76013801543 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/readme.csharp.md @@ -0,0 +1,15 @@ +## C + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Microsoft.HybridNetwork + output-folder: $(csharp-sdks-folder)/hybridnetwork/management/Microsoft.HybridNetwork/GeneratedProtocol +``` diff --git a/specification/hybridnetwork/resource-manager/readme.go.md b/specification/hybridnetwork/resource-manager/readme.go.md new file mode 100644 index 000000000000..d1f3880de6c2 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/readme.go.md @@ -0,0 +1,19 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +```yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + clear-output-folder: true +``` + +### Tag: package-2020-01-01-preview and go + +These settings apply only when `--tag=package-2020-01-01-preview --go` is specified on the command line. +Please also specify `--go-sdks-folder=`. + +```yaml $(tag) == 'package-2020-01-01-preview' && $(go) +namespace: Microsoft.HybridNetwork +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/management/2020-01-01-preview/$(namespace) +``` \ No newline at end of file diff --git a/specification/hybridnetwork/resource-manager/readme.md b/specification/hybridnetwork/resource-manager/readme.md new file mode 100644 index 000000000000..a05587f655d5 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/readme.md @@ -0,0 +1,82 @@ +# hybridnetwork + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for hybridnetwork. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. +--- + + +## Configuration + +### Basic Information + +These are the global settings for the hybridnetwork. + +```yaml +openapi-type: arm +tag: package-2020-01-01-preview +``` + +### Tag: package-2020-01-01-preview + +These settings apply only when `--tag=package-2020-01-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2020-01-01-preview' +input-file: + - Microsoft.HybridNetwork/preview/2020-01-01-preview/common.json + - Microsoft.HybridNetwork/preview/2020-01-01-preview/virtualNetworkFunction.json + - Microsoft.HybridNetwork/preview/2020-01-01-preview/device.json + - Microsoft.HybridNetwork/preview/2020-01-01-preview/operations.json + - Microsoft.HybridNetwork/preview/2020-01-01-preview/vendor.json + - Microsoft.HybridNetwork/preview/2020-01-01-preview/virtualNetworkFunctionVendors.json +``` + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +```yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-sdk-for-ruby + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_mgmt_hybridnetwork'] +``` + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) diff --git a/specification/hybridnetwork/resource-manager/readme.python.md b/specification/hybridnetwork/resource-manager/readme.python.md new file mode 100644 index 000000000000..312e0b025d5e --- /dev/null +++ b/specification/hybridnetwork/resource-manager/readme.python.md @@ -0,0 +1,21 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +```yaml $(python) +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: Microsoft.HybridNetwork + package-name: hybridnetwork + package-version: 2020-01-01-preview + clear-output-folder: true +``` + +```yaml $(python) +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt/hybridnetwork +``` diff --git a/specification/hybridnetwork/resource-manager/readme.ruby.md b/specification/hybridnetwork/resource-manager/readme.ruby.md new file mode 100644 index 000000000000..2b1cb0282236 --- /dev/null +++ b/specification/hybridnetwork/resource-manager/readme.ruby.md @@ -0,0 +1,19 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +```yaml +package-name: azure_mgmt_hybridnetwork +package-version: 2020-01-01-preview +azure-arm: true +``` + +### Tag: package-2020-01-01-preview and ruby + +These settings apply only when `--tag=package-2020-01-01-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2020-01-01-preview' && $(ruby) +namespace: Microsoft.HybridNetwork +output-folder: $(ruby-sdks-folder)/hybridnetwork +``` diff --git a/specification/hybridnetwork/resource-manager/readme.typescript.md b/specification/hybridnetwork/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..b0e6725bf8fb --- /dev/null +++ b/specification/hybridnetwork/resource-manager/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "hybridnetwork" + output-folder: "$(typescript-sdks-folder)/packages/hybridnetwork" + payload-flattening-threshold: 1 + generate-metadata: true +```