Create new API version 2024-11-01 adding `provider` field to GitRepository
ARM (Control Plane) API Specification Update Pull Request
[!TIP] Overwhelmed by all this guidance? See the
Getting helpsection 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.
Purpose of this PR
What's the purpose of this PR? Check the specific option that applies. This is mandatory!
- [ ] New resource provider.
- [x] 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:
- edit this with your clarification
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:
- [x] I confirm this PR is modifying Azure Resource Manager (ARM) related specifications, and not data plane related specifications.
- [x] 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.
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 PRandDue diligence checklist. - If you don't have permissions to remove or add labels to the PR, request
write accessper 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 Mergecomment. 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
queuedstate, please add a comment with contents/azp run. This should result in a new comment denoting aPR validation pipelinehas 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.
Next Steps to Merge
Next steps that must be taken to merge this PR:- ❌ Your PR has breaking changes in the generated SDK for Go (label:
BreakingChange-Go-Sdk). Refer to step 3 in the PR workflow diagram. - ❌ Your PR has breaking changes in the generated SDK for JavaScript (label:
BreakingChange-JavaScript-Sdk). Refer to step 3 in the PR workflow diagram. - ❌ The required check named
Automated merging requirements methas failed. This is the final check that must pass. 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. In addition, refer to step 4 in the PR workflow diagram
Generated ApiView
| Language | Package Name | ApiView Link |
|---|---|---|
| Go | sdk/resourcemanager/kubernetesconfiguration/armkubernetesconfiguration | https://apiview.dev/Assemblies/Review/a54df2a0c1e54238a5d668c54b45f1ef?revisionId=ef353ee5d8f94a2da89db2549344491d |
| JavaScript | @azure/arm-kubernetesconfiguration | https://apiview.dev/Assemblies/Review/9c38fe14e2c0467c9767f42827a62a52?revisionId=f366363a44364908937f25ba7cde1868 |
| Java | azure-resourcemanager-kubernetesconfiguration | https://apiview.dev/Assemblies/Review/b32f2ce6cb0c483b98818ba71fed6114?revisionId=2ee068c4018b4cf4960ec13fb3ac787f |
| Python | azure-mgmt-kubernetesconfiguration | https://apiview.dev/Assemblies/Review/dc933660aecc4da2a230269bc98ba893?revisionId=7e0daa1759d24053a9809e217e2941d1 |
Could you please check the swagger lintdiff errors. It looks like you do not have an operations api implementation for this api version ?
@raosuhas I don't have permissions to remove the ARMChangesRequested label. Would you know how I can get the required permissions to continue the review ?
/azp run
Commenter does not have sufficient privileges for PR 30956 in repo Azure/azure-rest-api-specs
/azp run
Azure Pipelines successfully started running 3 pipeline(s).
/azp run
Azure Pipelines successfully started running 3 pipeline(s).
Please fix Swagger Avocado failures too
/azp run
Azure Pipelines successfully started running 3 pipeline(s).
Please fix Swagger ModelValidation errors too
@ramoka178 As per the Next Steps diagram, SDK reviewers are supposed to review the changes next. It's been few days and there have been no updates. Would you know how I can bring this PR to SDK reviewers attention ? Thanks so much!
add @JeffreyRichter as reviewer as the newer default tap has multi api versions
Thanks for adding me in. Yes, Azure's policy and processes require that all operations in a service version uniformly. So the 2024-11 package cannot contain operations with a version of 2023-05-01. ALL operations MUST be 2024-11-01. We do have an internal document that explains why this is necessary: https://microsoft-my.sharepoint.com/:w:/p/jeffreyr/EVQ3n8VAjgxGknd19qeY_LsBf48ooc71gTiY22U1NNKnPA?e=KXhvnc
Azure's policy and processes require that all operations in a service version uniformly. So the 2024-11 package cannot contain operations with a version of 2023-05-01. ALL operations MUST be 2024-11-01.
@JeffreyRichter Is this requirement only for stable versions and not preview ?
The document explains this. This requirement is for everything: private preview, public preview, and stable. The requirement exists so that customers know what docs version to look at, what SDK package version to get, to know what service versions are deployed in which datacenters & non-public clouds, to know what versions are boroken if a new breaking-change version is introduced, and to know which service versions are retired when they have to be retired. In other words, ALL of our internal processes and customer-facing messaging force this requirement.
This requirement has always been true, but we haven't always actively enforced it. We are now actively enforcing it due to various customer issues that have occurred and we are improving our repo tooling to detect these kinds of issues and forbid merging PRs that violate them. We don't have this tooling just yet which is why I'm asked to manually intervene when someone detects a PR in violation (like this PR).
Thanks @JeffreyRichter for the explanation. Our previous version (2024-04-01-preview) has diverged and has multi APIs, could you suggest (or share a doc) how I should make the new stable API 2024-11-01 using the scripts in ./eng/scripts given that fluxConfiguration.json APIs are based on 2024-04-01-preview and the other APIs (extensions, operations, kubernetesConfiguration) are based on 2023-05-01 ?
I don't know anything about the scripts in ./eng/scripts. The teams that I've worked with on this have had to do some internal coordination (I don't know the details). There is an alternate approach of splitting a monolithic service into a suite of smaller service where each service versions uniformly but independently of each other. Really, what a team does should be based on the customer experience - does your team want to represent its features as a single monolithic service that versions where each version has its own docs, SDK package, etc. OR does the team want a suite of services where each has its own separate docs, SDK package, etc.? Once the decision is made, it must be maintained in perpetuity as changing this is a breaking change. The Azure Breaking Board is allowing teams to make a 1-time break to go from monolith to suite so that teams can get on a long-term sustainable path.
But again, your team should optimize for the best customer experience (not the best MS engineering experience) and then put in place a long-term plan to maintain this experience.
@kazrael2119, I removed the multi-APIs, all APIs are now in version 2024-11-01. Could you take a look? Thanks.
@JeffreyRichter in this pr, there is a ref change that will cause sdk breaking change: KustomizationPatchDefinition.PostBuild has been changed from PostBuildDefinition to PostBuildPatchDefinition. it is only labeled with warning in swagger breaking change tool: https://github.com/Azure/azure-rest-api-specs/pull/30956/checks?check_run_id=33022160718. idw whether it should go through the breaking change review?
Was changing PostBuildDefinition to PostBuildPatchDefinition intentional? If a mistake, then it should be put back. If intentional, then it should be justified by the service team.
Was changing PostBuildDefinition to PostBuildPatchDefinition intentional? If a mistake, then it should be put back. If intentional, then it should be justified by the service team.
@tadelesh @JeffreyRichter This change is not new to this PR and is present in the previous version (2024-04-01-preview) that this version is based on. Link here.
I added the BreakingChange-Approved-Previously label so this PR is good as is.
API change check
APIView has identified API level changes in this PR and created following API reviews.
Hi, @dipti-pai. Your PR has no update for 14 days and it is marked as stale PR. If no further update for over 14 days, the bot will close the PR. If you want to refresh the PR, please remove no-recent-activity label.
Hi, @dipti-pai. The PR will be closed since the PR has no update for 28 days. If you still need the PR review to proceed, please reopen it and @ mention PR assignee.