Skip to content

[CDN] Add new stable API version 2025-06-01 for Managed Identity Origin Authentication and moving profile CRUD to share.json #35181

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

Draft
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

ChenglongLiu
Copy link
Member

@ChenglongLiu ChenglongLiu commented Jun 9, 2025

ARM (Control Plane) API Specification Update Pull Request

Tip

Overwhelmed by all this guidance? See the Getting help section at the bottom of this PR description.

PR review workflow diagram

Please understand this diagram before proceeding. It explains how to get your PR approved & merged.

spec_pr_review_workflow_diagram

Purpose of this PR

What's the purpose of this PR? Check the specific option that applies. This is mandatory!

  • New resource provider.
  • New API version for an existing resource provider. (If API spec is not defined in TypeSpec, the PR should have been created in adherence to OpenAPI specs PR creation guidance).
  • Update existing version for a new feature. (This is applicable only when you are revising a private preview API version.)
  • Update existing version to fix OpenAPI spec quality issues in S360.
  • Convert existing OpenAPI spec to TypeSpec spec (do not combine this with implementing changes for a new API version).
  • Other, please clarify:
    • Move profile CRUD to share.json to resolve Azure Front Door Standard/Premium API doc issue
      This commit reorganizes the Swagger configuration by moving a subset of APIs—specifically, the profile operations—into a separate Swagger file.There are no changes to API behavior or functionality; this update is purely structural and aims to improve clarity, maintainability, and the ease of generating documentation.
      This change is based on a longstanding request from the Microsoft Learn API documentation team. The goal is to eliminate the need for manual workarounds during documentation publishing—a process that has persisted since 2021—and to reduce the risk of human error while increasing efficiency.

Due diligence checklist

To merge this PR, you must go through the following checklist and confirm you understood
and followed the instructions by checking all the boxes:

  • I confirm this PR is modifying Azure Resource Manager (ARM) related specifications, and not data plane related specifications.
  • I have reviewed following Resource Provider guidelines, including
    ARM resource provider contract and
    REST guidelines (estimated time: 4 hours).
    I understand this is required before I can proceed to the diagram Step 2, "ARM API changes review", for this PR.
  • A release plan has been created. If not, please create one as it will help guide you through the REST API and SDK creation process.

Additional information

Viewing API changes

For convenient view of the API changes made by this PR, refer to the URLs provided in the table
in the Generated ApiView comment added to this PR. You can use ApiView to show API versions diff.

Suppressing failures

If one or multiple validation error/warning suppression(s) is detected in your PR, please follow the
suppressions guide to get approval.

Getting help

  • First, please carefully read through this PR description, from top to bottom. Please fill out the Purpose of this PR and Due diligence checklist.
  • If you don't have permissions to remove or add labels to the PR, request write access per aka.ms/azsdk/access#request-access-to-rest-api-or-sdk-repositories
  • To understand what you must do next to merge this PR, see the Next Steps to Merge comment. It will appear within few minutes of submitting this PR and will continue to be up-to-date with current PR state.
  • For guidance on fixing this PR CI check failures, see the hyperlinks provided in given failure
    and https://aka.ms/ci-fix.
  • For help with ARM review (PR workflow diagram Step 2), see https://aka.ms/azsdk/pr-arm-review.
  • If the PR CI checks appear to be stuck in queued state, please add a comment with contents /azp run.
    This should result in a new comment denoting a PR validation pipeline has started and the checks should be updated after few minutes.
  • If the help provided by the previous points is not enough, post to https://aka.ms/azsdk/support/specreview-channel and link to this PR.
  • For guidance on SDK breaking change review, refer to https://aka.ms/ci-fix.

Copy link

openapi-pipeline-app bot commented Jun 9, 2025

Next Steps to Merge

Next steps that must be taken to merge this PR:
  • ❌ This PR is in purview of the ARM review (label: ARMReview). This PR must get ARMSignedOff label from an ARM reviewer.
    This PR is awaiting ARM reviewer feedback (label: WaitForARMFeedback).
    To learn when this PR will get reviewed, see ARM review queue at aka.ms/azsdk/pr-arm-review
    For details of the ARM review, see aka.ms/azsdk/pr-arm-review
  • ❌ The required check named Swagger LintDiff has failed. Refer to the check in the PR's 'Checks' tab for details on how to fix it and consult the aka.ms/ci-fix guide

Copy link

openapi-pipeline-app bot commented Jun 9, 2025

PR validation pipeline restarted successfully. If there is ApiView generated, it will be updated in this comment.

@github-actions github-actions bot added the brownfield Brownfield services will soon be required to convert to TypeSpec. See https://aka.ms/azsdk/typespec. label Jun 9, 2025
Copy link

github-actions bot commented Jun 9, 2025

API Change Check

APIView identified API level changes in this PR and created the following API reviews

Language API Review for Package
Swagger Microsoft.Cdn
Go sdk/resourcemanager/cdn/armcdn
Java com.azure.resourcemanager:azure-resourcemanager-cdn-generated
Python azure-mgmt-cdn

@AzureRestAPISpecReview AzureRestAPISpecReview added ARMReview new-api-version ReadyForApiTest <valid label in PR review process>add this label when swagger and service APIs are ready for test resource-manager WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required BreakingChangeReviewRequired <valid label in PR review process>add this label when breaking change review is required NotReadyForARMReview and removed WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required ReadyForApiTest <valid label in PR review process>add this label when swagger and service APIs are ready for test labels Jun 9, 2025
@ChenglongLiu ChenglongLiu force-pushed the CdnSwagger/2025-06-01 branch 2 times, most recently from 24985d1 to d1974cc Compare June 9, 2025 23:39
@ChenglongLiu ChenglongLiu force-pushed the CdnSwagger/2025-06-01 branch from d1974cc to 5c450b9 Compare June 9, 2025 23:59
@ChenglongLiu ChenglongLiu changed the title [Draft] Cdn swagger/2025 06 01 [CDN] Add new stable API version 2025-06-01 for Managed Identity Origin Authentication and moving profile CRUD to share.json Jun 10, 2025
@ChenglongLiu ChenglongLiu added PublishToCustomers Acknowledgement the changes will be published to Azure customers. BreakingChange-Approved-BugFix Changes are to correct the REST API definition to correctly describe service behavior labels Jun 10, 2025
@AzureRestAPISpecReview AzureRestAPISpecReview added the WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required label Jun 10, 2025
@mentat9
Copy link
Member

mentat9 commented Jun 11, 2025

    "authentication": {

MSI is normally placed in the top-level "identity" property. Why aren't you following that ARM standard? Ref: https://armwiki.azurewebsites.net/rbac/managed_identities/MSIOnboardingOverview.html?q=identity%20top-level%20property.


Refers to: specification/cdn/resource-manager/Microsoft.Cdn/stable/2025-06-01/afdx.json:5236 in 5c450b9. [](commit_id = 5c450b9, deletion_comment = False)

"definitions": {
"ResourceReference": {
"properties": {
"id": {
Copy link
Member

Choose a reason for hiding this comment

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

id

[ARMBlockingComment] Don't reuse top-level property names within the property bag. You could name this property resourceId or something more specific.

Copy link
Member Author

Choose a reason for hiding this comment

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

Hey @mentat9 , all the swagger in share.json here are moved directly from the cdn.json intact. I didn't change anything. This is a strong requirement from doc team.

This has been lingering around since 2021, and we’d like us very much to move away from the manual working around and publishing for efficiency and to avoid human errors. 

"ResourceReference": {
"properties": {
"id": {
"type": "string",
Copy link
Member

Choose a reason for hiding this comment

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

type": "string

Add format: arm-id and (if appropriate) x-ms-arm-id-details. Ref: https://github.com/Azure/autorest/blob/main/docs/extensions/readme.md#x-ms-arm-id-details.

Copy link
Member Author

Choose a reason for hiding this comment

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

updated

"identity": {
"description": "Managed service identity (system assigned and/or user assigned identities).",
"type": "object",
"$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity"
Copy link
Member

Choose a reason for hiding this comment

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

v4

Don't move to older version. Why do you want to change from v6 to v4?

Copy link
Member Author

Choose a reason for hiding this comment

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

updated

"identity": {
"description": "Managed service identity (system assigned and/or user assigned identities).",
"type": "object",
"$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity"
Copy link
Member

Choose a reason for hiding this comment

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

v4

Should stay on v6.

Copy link
Member Author

Choose a reason for hiding this comment

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

updated

"StandardPlus_AvgBandWidth_ChinaCdn"
],
"type": "string",
"x-ms-enum": {
Copy link
Member

Choose a reason for hiding this comment

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

"x-ms-enum"

Consider adding descriptions for each member (just a suggestion, not required).

@mentat9
Copy link
Member

mentat9 commented Jun 11, 2025

@ChenglongLiu - In future, please do refactoring and adding an API version using separate PRs. It's hard for reviewers to see what's changing across API versions when there is also a bunch of refactoring. In this case, I was able to piece together the changes, and since there weren't a lot, I went ahead with ARM review.

@mentat9 mentat9 added the ARMChangesRequested <valid label in PR review process>add this label when require changes after ARM review label Jun 11, 2025
@openapi-pipeline-app openapi-pipeline-app bot removed the WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required label Jun 11, 2025
@ChenglongLiu ChenglongLiu marked this pull request as draft June 11, 2025 21:52
@ChenglongLiu ChenglongLiu marked this pull request as ready for review June 11, 2025 22:43
@ChenglongLiu ChenglongLiu removed the ARMChangesRequested <valid label in PR review process>add this label when require changes after ARM review label Jun 11, 2025
@openapi-pipeline-app openapi-pipeline-app bot added the WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required label Jun 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
BreakingChange-Approved-BugFix Changes are to correct the REST API definition to correctly describe service behavior BreakingChangeReviewRequired <valid label in PR review process>add this label when breaking change review is required brownfield Brownfield services will soon be required to convert to TypeSpec. See https://aka.ms/azsdk/typespec. Network - CDN PublishToCustomers Acknowledgement the changes will be published to Azure customers. resource-manager WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants