Azure / Azure/azure-cli

Latest API version not available in sovereign clouds

Open
#23,985 16 comments 2 reactions 1 assignee Claimed by @evelyn-ys View on GitHub
act-platform-engineering-squad Azure CLI Team common issue Core feature-request
Dominant language
Python
Stars
4.6k
Forks
3.5k
Avg merge
3d 10h
Merged PRs (30d)
64

Description

Previously reported by

- `Microsoft.Cdn`: #16094
- `Microsoft.Storage`: #18828, #17189
- `Microsoft.ManagedIdentity`: #22661
- `Microsoft.KeyVault`: #20226, #23888

## Symptom

We have a centralized location to define API versions for each resource provider:

https://github.com/Azure/azure-cli/blob/daa568579dbaec5af1ac92d261014cf9ce3ff9b1/src/azure-cli-core/azure/cli/core/profiles/_shared.py#L154-L158

Azure CLI supports 4 clouds, including 3 sovereign clouds:

- `AzureCloud`
- `AzureChinaCloud`
- `AzureUSGovernment`
- `AzureGermanCloud`

All of them use the same `latest` profile and the same API version for each resource provider.

However, it happens frequently that a new API version is only deployed to `AzureCloud`, but not other clouds. Using Azure CLI to call that API version leads to error like:

> NoRegisteredProviderFound - No registered resource provider found for location 'chinanorth' and API version '2019-06-15-preview' for type 'profiles/endpoints'. The supported api-versions are '2015-06-01, 2016-04-02, 2016-10-02, 2017-04-02, 2017-10-12, 2018-04-02, 2019-04-15'. The supported locations are 'chinanorth, chinanorth2, chinaeast, chinaeast2'.

## Temporary workaroud

Install previous versions of Azure CLI that use old API versions in sovereign clouds. The installation document has detailed instruction on how to install previous versions: https://learn.microsoft.com/en-us/cli/azure/install-azure-cli

## Solution

Service team _should_ deploy the new API version to all clouds synchronously.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.