Azure / azure-cli

Azure Command-Line Interface
MIT License
4.03k stars 3.01k forks source link

Support for ipv6CircuitConnectionConfig object from Azure CLI #10537

Closed amwate closed 4 years ago

amwate commented 5 years ago

Resource Provider Network

Description of Feature or Work Requested We have updated the Azure-Powershell with new Cmdlet, and have modified existing add cmdlet to support IPv6 address prefixes as well.

Changes :

  1. Add-AzExpressRouteCircuitConnectionConfig: AddressPrefix parameter accepts a IPv6 address prefix. In addition, PeerAddressType is added to support enum (IPv4/IPv6) as accepted enum values. No value defaults to IPv4.

  2. Set-AzExpressRouteCircuitConnectionConfig is a new cmdlet. This allows any existing CircuitConnectionConfig created by 1 to be updated.

The parameter set is the same as that of 1.

Minimum API Version Required Swagger (September release), NRP prod release 9/9

Swagger Link (Sample) https://github.com/amwate/azure-rest-api-specs/commit/6f327ab3c0310a371868362255e0b20e13d486db

SDK Link https://github.com/amwate/azure-sdk-for-net/commit/6c2676c906311a778c37675996e176ccd472616c

Powershell links https://github.com/amwate/azure-powershell/commit/0a27008b0a5479ba041cfd88af9c0a261a671040 Target Date 10/15

mmyyrroonn commented 5 years ago

@anwate which api-version?2019-08-01?

mmyyrroonn commented 5 years ago

@anwate 2019-06-01?

amwate commented 5 years ago

It would be 2019-08-01

mmyyrroonn commented 5 years ago

@amwate. Looks like the 2019-08-01 has not been published. If you need this feature in the future, please open another issue or reopen this one and @me. Thanks.

mmyyrroonn commented 5 years ago

@amwate. Do you have any idea about the ETA of 2019-08-01 version?

amwate commented 5 years ago

It should be in anytime as per the release schedule on One note https://microsoft.sharepoint.com/teams/WAG/AzureNetworking/_layouts/OneNote.aspx?id=%2Fteams%2FWAG%2FAzureNetworking%2FOneNotes%2FNRP%20migrated&wd=target%28Hydra%20%2B%20SDK.one%7C96F7B95B-A378-4CA5-903B-C88F894873EF%2FContribution%20milestones%7CA21DA6B0-FCD4-4C63-AEDD-D2352254ECC5%2F%29 onenote:https://microsoft.sharepoint.com/teams/WAG/AzureNetworking/OneNotes/NRP%20migrated/Hydra%20+%20SDK.one#Contribution%20milestones&section-id={96F7B95B-A378-4CA5-903B-C88F894873EF}&page-id={A21DA6B0-FCD4-4C63-AEDD-D2352254ECC5}&end,

mmyyrroonn commented 5 years ago

@amwate The SDK will be released on 10/23 which is behind 10/15.

yonzhan commented 4 years ago

add to S168

jsntcy commented 4 years ago

@amwate, for ExpressRouteCircuitConnection,

amwate commented 4 years ago

@amwate, for ExpressRouteCircuitConnection,

  • Is it allowed to set ipv4 addressPrefix and ipv6 addressPrefix at the same time? I saw swagger examples set them at the same time as follows, "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", "name": "circuitConnectionUSAUS", "properties": { "addressPrefix": "10.0.0.0/24", "circuitConnectionStatus": "Connected", "ipv6CircuitConnectionConfig": { "addressPrefix": "aa:bb::1/125", "circuitConnectionStatus": "Connected" }
  • Are both ipv4 addressPrefix and ipv6 addressPrefix opitonal for the ExpressRouteCircuitConnection? (i.e. We can set neither of them when creating ExpressRouteCircuitConnection)

From swagger and backend perspective, it is valid to have both Ipv4 and Ipv6 set.

It is also valid from swagger perspective to not have any of them set. However we validate the same in the backend, and throw an error if both are not set.

jsntcy commented 4 years ago

@amwate, thanks for the quick response.

jsntcy commented 4 years ago

@amwate, when I set ipv6 address prefix for ExpressRouteCircuitConnection, it shows the error "IPv6 Circuit Connection is not supported for Express Route Global Reach /subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/azure-cli-test-rg/providers/Microsoft.Network/expressRouteCircuits/er3/peerings/AzurePrivatePeering/connections/conn12", do you know what's wrong?

Request body: msrest.http_logger : {"properties": {"expressRouteCircuitPeering": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/azure-cli-test-rg/providers/Microsoft.Network/expressRouteCircuits/er3/peerings/AzurePrivatePeering"}, "peerExpressRouteCircuitPeering": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/azure-cli-test-rg/providers/Microsoft.Network/exprmsrest.universal_http : Configuring redirects: allow=True, max=30 msrest.universal_http : Configuring request: timeout=100, verify=True, cert=None msrest.universal_http : Configuring proxies: '' msrest.universal_http : Evaluate proxies against ENV settings: True urllib3.connectionpool : Starting new HTTPS connection (1): management.azure.com:443 urllib3.connectionpool : https://management.azure.com:443 "PUT /subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/azure-cli-test-rg/providers/Microsoft.Network/expressRouteCircuits/er3/peerings/AzurePrivatePeering/connections/conn12?api-version=2020-04-01 HTTP/1.1" 400 382 msrest.http_logger : Response status: 400 msrest.http_logger : Response headers: msrest.http_logger : 'Cache-Control': 'no-cache' msrest.http_logger : 'Pragma': 'no-cache' msrest.http_logger : 'Content-Length': '382' msrest.http_logger : 'Content-Type': 'application/json; charset=utf-8' msrest.http_logger : 'Expires': '-1' msrest.http_logger : 'x-ms-request-id': '4cd3c7db-3e55-4ace-8f14-d59595b9c4b3' msrest.http_logger : 'x-ms-correlation-request-id': '62824086-9ed7-4685-b184-da56e6f8b5d8' msrest.http_logger : 'x-ms-arm-service-request-id': '3d19f6b2-488d-4b9a-8a24-acfcd427744e' msrest.http_logger : 'Strict-Transport-Security': 'max-age=31536000; includeSubDomains' msrest.http_logger : 'Server': 'Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0' msrest.http_logger : 'x-ms-ratelimit-remaining-subscription-writes': '1199' msrest.http_logger : 'x-ms-routing-request-id': 'SOUTHEASTASIA:20200616T091922Z:62824086-9ed7-4685-b184-da56e6f8b5d8' msrest.http_logger : 'X-Content-Type-Options': 'nosniff' msrest.http_logger : 'Date': 'Tue, 16 Jun 2020 09:19:22 GMT' msrest.http_logger : Response content: msrest.http_logger : { "error": { "code": "ExpressRouteIpv6CircuitConnectionNotSupported", "message": "IPv6 Circuit Connection is not supported for Express Route Global Reach /subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/azure-cli-test-rg/providers/Microsoft.Network/expressRouteCircuits/er3/peerings/AzurePrivatePeering/connections/conn12.", "details": [] } }

amwate commented 4 years ago

@amwate, when I set ipv6 address prefix for ExpressRouteCircuitConnection, it shows the error "IPv6 Circuit Connection is not supported for Express Route Global Reach /subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/azure-cli-test-rg/providers/Microsoft.Network/expressRouteCircuits/er3/peerings/AzurePrivatePeering/connections/conn12", do you know what's wrong?

Request body: msrest.http_logger : {"properties": {"expressRouteCircuitPeering": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/azure-cli-test-rg/providers/Microsoft.Network/expressRouteCircuits/er3/peerings/AzurePrivatePeering"}, "peerExpressRouteCircuitPeering": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/azure-cli-test-rg/providers/Microsoft.Network/exprmsrest.universal_http : Configuring redirects: allow=True, max=30 msrest.universal_http : Configuring request: timeout=100, verify=True, cert=None msrest.universal_http : Configuring proxies: '' msrest.universal_http : Evaluate proxies against ENV settings: True urllib3.connectionpool : Starting new HTTPS connection (1): management.azure.com:443 urllib3.connectionpool : https://management.azure.com:443 "PUT /subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/azure-cli-test-rg/providers/Microsoft.Network/expressRouteCircuits/er3/peerings/AzurePrivatePeering/connections/conn12?api-version=2020-04-01 HTTP/1.1" 400 382 msrest.http_logger : Response status: 400 msrest.http_logger : Response headers: msrest.http_logger : 'Cache-Control': 'no-cache' msrest.http_logger : 'Pragma': 'no-cache' msrest.http_logger : 'Content-Length': '382' msrest.http_logger : 'Content-Type': 'application/json; charset=utf-8' msrest.http_logger : 'Expires': '-1' msrest.http_logger : 'x-ms-request-id': '4cd3c7db-3e55-4ace-8f14-d59595b9c4b3' msrest.http_logger : 'x-ms-correlation-request-id': '62824086-9ed7-4685-b184-da56e6f8b5d8' msrest.http_logger : 'x-ms-arm-service-request-id': '3d19f6b2-488d-4b9a-8a24-acfcd427744e' msrest.http_logger : 'Strict-Transport-Security': 'max-age=31536000; includeSubDomains' msrest.http_logger : 'Server': 'Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0' msrest.http_logger : 'x-ms-ratelimit-remaining-subscription-writes': '1199' msrest.http_logger : 'x-ms-routing-request-id': 'SOUTHEASTASIA:20200616T091922Z:62824086-9ed7-4685-b184-da56e6f8b5d8' msrest.http_logger : 'X-Content-Type-Options': 'nosniff' msrest.http_logger : 'Date': 'Tue, 16 Jun 2020 09:19:22 GMT' msrest.http_logger : Response content: msrest.http_logger : { "error": { "code": "ExpressRouteIpv6CircuitConnectionNotSupported", "message": "IPv6 Circuit Connection is not supported for Express Route Global Reach /subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/azure-cli-test-rg/providers/Microsoft.Network/expressRouteCircuits/er3/peerings/AzurePrivatePeering/connections/conn12.", "details": [] } } This feature is no GA'd yet. We would be rolling this feature out only to selected customer subscriptions and in a phased manner. For all other customers, the above error is valid.

jsntcy commented 4 years ago

@amwate ,

amwate commented 4 years ago

@amwate ,

  • When will it GA?
  • How can I test this feature as I need develop CLI commands for it?

Tentatively by September. We can either whitelist your subscription, or it would better if you can take a Jit (type portal) on subscription 99c33776-9f4e-4e58-abe8-9263db1b9c6e. We can get on a call, and I can show you how to do that if that helps?

jsntcy commented 4 years ago

@amwate, Could you please help whitelist our sub "0b1f6471-1bf0-4dda-aec3-cb9272f09590" as we need use it to create automation test?