Azure / Azure/azure-rest-api-specs

[BUG] The `Identity` block is referenced with wrong type for Managed Devops Pool

Open
#40,905 0 comments 0 reactions 0 assignees View on GitHub
bug customer-reported question
Dominant language
TypeSpec
Stars
3.1k
Forks
5.9k
Avg merge
3d 2h
Merged PRs (30d)
424

Description

### API Spec link

https://github.com/Azure/azure-rest-api-specs/blob/main/specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/stable/2025-01-21/devopsinfrastructure.json#L1295-L1298

### API Spec version

2025-01-21, 2025-09-20

### Describe the bug

The identity block [only supports](https://learn.microsoft.com/en-us/azure/devops/managed-devops-pools/configure-identity?view=azure-devops) UserAssignedIdentity. But it's defined as [ManagedServiceIdentity](https://github.com/Azure/azure-rest-api-specs/blob/main/specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/stable/2025-01-21/devopsinfrastructure.json#L1295-L1298), which accepts SystemAssigned, UserAssignedIdentity and SystemAssigned, UserAssignedIdentity. The consequence is that downstream SDKs will match a wrong type for this property and causing confusions during development.

Relevant with https://github.com/Azure/azure-rest-api-specs/issues/22634

### Expected behavior

Correct type should be used for the identity block.

For example: https://github.com/Azure/azure-rest-api-specs/blob/main/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2022-05-15/managedCassandra.json#L771
https://github.com/Azure/azure-rest-api-specs/blob/main/specification/network/resource-manager/Microsoft.Network/stable/2022-07-01/firewallPolicy.json#L955

### Actual behavior

Wrong type is used for Identity

### Reproduction Steps

As indicated in Microsoft learn and Swagger above

### Environment

_No response_

Contributor guide

Open the contributing guide

Research direction

Open specification/devopsinfrastructure/resource-manager/Microsoft.DevOpsInfrastructure/stable/2025-01-21/devopsinfrastructure.json around lines 1295-1298 and compare the identity definitions in the linked Cosmos DB and Network examples. Update the Managed DevOps Pool identity block to use the type that supports only UserAssignedIdentity, then verify the API specification remains valid for the listed API versions.

Written by the indexing model from the issue text.

Assessment

Tech stack
openapi
Domain
api, backend-api-design
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.