Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding swagger updates to support the new NRP resource "DSCP Configuration" #9954

Merged
Merged
Show file tree
Hide file tree
Changes from 18 commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
169cb78
Adding the swagger for the new resource DSCP Configuration. Also upda…
davelasc Jun 23, 2020
0199093
Updated the definition to the updated version in the source code
davelasc Jun 23, 2020
539fe84
Merge branch 'network-june-release' into users/davelasc/dscp-configur…
davelasc Jun 24, 2020
5c56c9b
Fix some errors being thrown by the validator (regarding int/ushort t…
davelasc Jun 24, 2020
cdcb3ba
Fixed the erroneous reference within the dscpConfiguration.json to th…
davelasc Jun 26, 2020
49c601a
Removed the long running operation flag.
davelasc Jun 29, 2020
1e8c9a1
Added more objets within the lists.
davelasc Jun 29, 2020
38d1eeb
Removed the duplicated key
davelasc Jul 1, 2020
e545bba
The type 'ushort ' is not accepted. Turn it into an integer. Hopefull…
davelasc Jul 1, 2020
3f82a8f
Added the custome words dscp and qos in order to fix the error of the…
davelasc Jul 3, 2020
f209aef
One traffic profiler slipped through the cracks, removed it. Properly…
davelasc Jul 3, 2020
fc78db8
Well, I was being silly here. Had a typo hahahahaha
davelasc Jul 3, 2020
5157885
Added the warning suppression to the readme file. Run the prettier on…
davelasc Jul 3, 2020
1add3c3
Thought I only had to run the prettier on the specification. Did the …
davelasc Jul 3, 2020
02fc7e7
Re-run the command with the full command placed in the documentation.…
davelasc Jul 3, 2020
1474b41
Corrected the typo
davelasc Jul 3, 2020
7bb2ef4
Added the proper formatting for the suppression.
davelasc Jul 4, 2020
e0b1a18
Added the integer format
davelasc Jul 4, 2020
a67fcf1
Added the api calls for list and list all.
davelasc Jul 8, 2020
67ad90f
Forgot to switch the operation id from network interface to dscp conf…
davelasc Jul 8, 2020
5960d20
Added the missing next link for the list by resource
davelasc Jul 8, 2020
697e172
Merge branch 'network-june-release' into users/davelasc/dscp-configur…
mmyyrroonn Jul 13, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions custom-words.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1793,3 +1793,6 @@ azureADMetrics
sparkr
ambari
dotnetspark
dscp
Dscp
qos
Original file line number Diff line number Diff line change
@@ -0,0 +1,343 @@
{
"swagger": "2.0",
"info": {
"title": "NetworkManagementClient",
"description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.",
"version": "2020-06-01"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2020-06-01 [](start = 16, length = 10)

Has the 2020-06-01 been released to customers?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

By the end of this month it should be supported, as far as I'm aware. Did notice yesterday while doing a little bit of support that NRP is already supporting in production this version.

},
"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": {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

paths [](start = 3, length = 5)

Is this going to be a tracked or proxy resource?

If tracked you will also need to support these list calls:

  • GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dscpConfigurations
  • GET /subscriptions/{subscriptionId}/providers/Microsoft.Network/dscpConfigurations

If proxy, you will need at least this list call:

  • GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dscpConfigurations

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is going to be a tracked resource. Adding the pending calls and examples accordingly

"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dscpConfiguration/{dscpConfigurationName}": {
Copy link
Member

@majastrz majastrz Jul 8, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

dscpConfiguration [](start = 100, length = 17)

ARM resource type names should be plural. Can you rename to dscpConfigurations? #Resolved

Copy link
Contributor Author

@davelasc davelasc Jul 8, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Refactor accordingly #Resolved

"put": {
"tags": [
"DscpConfiguration"
],
"operationId": "DscpConfiguration_CreateOrUpdate",
"description": "Creates or updates a DSCP Configuration.",
"parameters": [
{
"name": "resourceGroupName",
"in": "path",
"required": true,
"type": "string",
"description": "The name of the resource group."
},
{
"name": "dscpConfigurationName",
"in": "path",
"required": true,
"type": "string",
"description": "The name of the resource."
},
{
"name": "parameters",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/DscpConfiguration"
},
"description": "Parameters supplied to the create or update dscp configuration operation."
},
{
"$ref": "./network.json#/parameters/ApiVersionParameter"
},
{
"$ref": "./network.json#/parameters/SubscriptionIdParameter"
}
],
"responses": {
"201": {
"description": "Create successful. The operation returns the resulting DscpConfiguration resource.",
"schema": {
"$ref": "#/definitions/DscpConfiguration"
}
},
"200": {
"description": "Update successful. The operation returns the resulting DscpConfiguration resource.",
"schema": {
"$ref": "#/definitions/DscpConfiguration"
}
},
"default": {
"description": "Error response describing why the operation failed.",
"schema": {
"$ref": "./network.json#/definitions/CloudError"
}
}
},
"x-ms-examples": {
"Create DSCP Configuration": {
"$ref": "./examples/DscpConfigurationCreate.json"
}
},
"x-ms-long-running-operation": true,
"x-ms-long-running-operation-options": {
"final-state-via": "location"
}
},
"delete": {
"tags": [
"DscpConfiguration"
],
"operationId": "DscpConfiguration_Delete",
"description": "Deletes a DSCP Configuration.",
"parameters": [
{
"name": "resourceGroupName",
"in": "path",
"required": true,
"type": "string",
"description": "The name of the resource group."
},
{
"name": "dscpConfigurationName",
"in": "path",
"required": true,
"type": "string",
"description": "The name of the resource."
},
{
"$ref": "./network.json#/parameters/ApiVersionParameter"
},
{
"$ref": "./network.json#/parameters/SubscriptionIdParameter"
}
],
"responses": {
"204": {
"description": "Request successful. Resource does not exist."
},
"202": {
"description": "Accepted and the operation will complete asynchronously."
},
"200": {
"description": "Delete successful."
},
"default": {
"description": "Error response describing why the operation failed.",
"schema": {
"$ref": "./network.json#/definitions/CloudError"
}
}
},
"x-ms-examples": {
"Delete DSCP Configuration": {
"$ref": "./examples/DscpConfigurationDelete.json"
}
},
"x-ms-long-running-operation": true,
"x-ms-long-running-operation-options": {
"final-state-via": "location"
}
},
"get": {
"tags": [
"DscpConfiguration"
],
"operationId": "DscpConfiguration_Get",
"description": "Gets a DSCP Configuration.",
"parameters": [
{
"name": "resourceGroupName",
"in": "path",
"required": true,
"type": "string",
"description": "The name of the resource group."
},
{
"name": "dscpConfigurationName",
"in": "path",
"required": true,
"type": "string",
"description": "The name of the resource."
},
{
"$ref": "./network.json#/parameters/ApiVersionParameter"
},
{
"$ref": "./network.json#/parameters/SubscriptionIdParameter"
}
],
"responses": {
"200": {
"description": "Request successful. The operation returns the resulting DSCP Configuration resource.",
"schema": {
"$ref": "#/definitions/DscpConfiguration"
}
},
"default": {
"description": "Error response describing why the operation failed.",
"schema": {
"$ref": "./network.json#/definitions/CloudError"
}
}
},
"x-ms-examples": {
"Get Dscp Configuration": {
"$ref": "./examples/DscpConfigurationGet.json"
}
}
}
}
},
"definitions": {
"DscpConfiguration": {
"properties": {
"properties": {
"x-ms-client-flatten": true,
"$ref": "#/definitions/DscpConfigurationPropertiesFormat",
"description": "Properties of the network interface."
},
"etag": {
"readOnly": true,
"type": "string",
"description": "A unique read-only string that changes whenever the resource is updated."
}
},
"allOf": [
{
"$ref": "./network.json#/definitions/Resource"
}
],
"description": "DSCP Configuration in a resource group."
},
"DscpConfigurationPropertiesFormat": {
"properties": {
"markings": {
"type": "array",
"items": {
"type": "integer",
"format": "int32"
},
"description": "List of markings to be used in the configuration."
},
"sourceIpRanges": {
"type": "array",
"items": {
"$ref": "#/definitions/QosIpRange"
},
"description": "Source IP ranges."
},
"destinationIpRanges": {
"type": "array",
"items": {
"$ref": "#/definitions/QosIpRange"
},
"description": "Destination IP ranges."
},
"sourcePortRanges": {
"type": "array",
"items": {
"$ref": "#/definitions/QosPortRange"
},
"description": "Sources port ranges."
},
"destinationPortRanges": {
"type": "array",
"items": {
"$ref": "#/definitions/QosPortRange"
},
"description": "Destination port ranges."
},
"protocol": {
"type": "string",
"enum": [
"DoNotUse",
"Icmp",
"Tcp",
"Udp",
"Gre",
"Esp",
"Ah",
"Vxlan",
"All"
],
"x-ms-enum": {
"name": "ProtocolType",
"modelAsString": true
},
"description": "RNM supported protocol types."
},
"qosCollectionId": {
"type": "string",
"readOnly": true,
"description": "Qos Collection ID generated by RNM."
},
"associatedNetworkInterfaces": {
"type": "array",
"items": {
"$ref": "./networkInterface.json#/definitions/NetworkInterface"
},
"readOnly": true,
"description": "Associated Network Interfaces to the DSCP Configuration."
},
"resourceGuid": {
"readOnly": true,
"type": "string",
"description": "The resource GUID property of the DSCP Configuration resource."
},
"provisioningState": {
"readOnly": true,
"$ref": "./network.json#/definitions/ProvisioningState",
"description": "The provisioning state of the DSCP Configuration resource."
}
},
"description": "DSCP Configuration properties."
},
"QosIpRange": {
"properties": {
"startIP": {
"type": "string",
"description": "Start IP Address."
},
"endIP": {
"type": "string",
"description": "End IP Address."
}
},
"description": "Qos Traffic Profiler IP Range properties."
},
"QosPortRange": {
"properties": {
"start": {
"type": "integer",
"format": "int32",
"description": "Qos Port Range start."
},
"end": {
"type": "integer",
"format": "int32",
"description": "Qos Port Range end."
}
},
"description": "Qos Traffic Profiler Port range properties."
}
}
}
Loading