Updated agfood.json for privatelinks
ARM API Information (Control Plane)
MSFT employees can try out our new experience at OpenAPI Hub - one location for using our validation tools and finding your workflow. Azure 1st Party Service can try out the Shift Left experience to initiate API design review from ADO code repo. If you are interested, may request engineering support by filling in with the form https://aka.ms/ShiftLeftSupportForm.
Changelog
Add a changelog entry for this PR by answering the following questions:
- What's the purpose of the update?
- [ ] new service onboarding
- [ ] new API version
- [ ] update existing version for new feature
- [x] update existing version to fix swagger quality issue in s360
- [ ] Other, please clarify
- When are you targeting to deploy the new service/feature to public regions? Please provide the date or, if the date is not yet available, the month. Nov 2022
- When do you expect to publish the swagger? Please provide date or, the the date is not yet available, the month. Nov 2022
- By default, Azure SDKs of all languages (.NET/Python/Java/JavaScript for both management-plane SDK and data-plane SDK, Go for management-plane SDK only ) MUST be refreshed with/after swagger of new version is published. If you prefer NOT to refresh any specific SDK language upon swagger updates in the current PR, please leave details with justification here.
Contribution checklist (MS Employees Only):
- [x] I commit to follow the Breaking Change Policy of "no breaking changes"
- [x] I have reviewed the documentation for the workflow.
- [x] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?
If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist
Applicability: :warning:
If your changes encompass only the following scenarios, you should SKIP this section, as these scenarios do not require ARM review.
- Change to data plane APIs
- Adding new properties
- All removals
Otherwise your PR may be subject to ARM review requirements. Complete the following:
-
[ ] Check this box if any of the following apply to the PR so that the label "ARMReview" and "WaitForARMFeedback" will be added by bot to kick off ARM API Review. Missing to check this box in the following scenario may result in delays to the ARM manifest review and deployment.
- Adding a new service
- Adding new API(s)
- Adding a new API version
-
[x] To review changes efficiently, ensure you copy the existing version into the new directory structure for first commit and then push new changes, including version updates, in separate commits. You can use OpenAPIHub to initialize the PR for adding a new version. For more details refer to the wiki.
-
[x] Ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.
-
[x] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.
Breaking Change Review Checklist
If you have any breaking changes as defined in the Breaking Change Policy, request approval from the Breaking Change Review Board.
Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Additional details on the process and office hours are on the Breaking Change Wiki.
NOTE: To update API(s) in public preview for over 1 year (refer to Retirement of Previews)
Please follow the link to find more details on PR review process.
Hi, @IshitaAsthana Thanks for your PR. I am workflow bot for review process. Here are some small tips.
Swagger Validation Report
️❌BreakingChange: 34 Errors, 0 Warnings failed [Detail]
| compared swaggers (via Oad v0.10.2)] | new version | base version |
|---|---|---|
| agfood.json | 2021-09-01-preview(8265774) | 2021-09-01-preview(main) |
Only 30 items are listed, please refer to log for more details.
️️✔️Breaking Change(Cross-Version) succeeded [Detail] [Expand]
There are no breaking changes.
️️✔️CredScan succeeded [Detail] [Expand]
There is no credential detected.
️⚠️LintDiff: 0 Warnings warning [Detail]
| compared tags (via openapi-validator v2.0.0) | new version | base version |
|---|---|---|
| package-preview-2021-09 | package-preview-2021-09(8265774) | package-preview-2021-09(main) |
The following errors/warnings exist before current PR submission:
| Rule | Message |
|---|---|
ResourceNameRestriction |
The resource name parameter 'farmBeatsResourceName' should be defined with a 'pattern' restriction. Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L9 |
ResourceNameRestriction |
The resource name parameter 'farmBeatsResourceName' should be defined with a 'pattern' restriction. Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L166 |
ResourceNameRestriction |
The resource name parameter 'farmBeatsResourceName' should be defined with a 'pattern' restriction. Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L383 |
UnSupportedPatchProperties |
The patch operation body parameter schema should not contains property location. Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L513 |
ResourceNameRestriction |
The resource name parameter 'farmBeatsResourceName' should be defined with a 'pattern' restriction. Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L721 |
ResourceNameRestriction |
The resource name parameter 'farmBeatsResourceName' should be defined with a 'pattern' restriction. Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L867 |
ResourceNameRestriction |
The resource name parameter 'privateEndpointConnectionName' should be defined with a 'pattern' restriction. Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L867 |
GetCollectionResponseSchema |
The response in the GET collection operation 'PrivateEndpointConnections_ListByResource' does not match the response definition in the individual GET operation 'PrivateEndpointConnections_Get' . Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L1050 |
ResourceNameRestriction |
The resource name parameter 'farmBeatsResourceName' should be defined with a 'pattern' restriction. Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L1050 |
GetCollectionResponseSchema |
The response in the GET collection operation 'PrivateLinkResources_ListByResource' does not match the response definition in the individual GET operation 'PrivateLinkResources_Get' . Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L1098 |
ResourceNameRestriction |
The resource name parameter 'farmBeatsResourceName' should be defined with a 'pattern' restriction. Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L1098 |
ResourceNameRestriction |
The resource name parameter 'farmBeatsResourceName' should be defined with a 'pattern' restriction. Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L1146 |
ResourceNameRestriction |
The resource name parameter 'subResourceName' should be defined with a 'pattern' restriction. Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L1146 |
TopLevelResourcesListBySubscription |
The top-level resource 'FarmBeatsExtension' does not have list by subscription operation, please add it. Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L1455 |
ProvisioningStateValidation |
ProvisioningState must have terminal states: Succeeded, Failed and Canceled. Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L1497 |
ProvisioningStateValidation |
ProvisioningState must have terminal states: Succeeded, Failed and Canceled. Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L1540 |
| :warning: PreviewVersionOverOneYear | The API version:2021-09-01-preview having been in a preview state over one year , please move it to GA or retire. Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L6 |
| :warning: PutRequestResponseScheme | A PUT operation request body schema should be the same as its 200 response schema, to allow reusing the same entity between GET and PUT. If the schema of the PUT request body is a superset of the GET response body, make sure you have a PATCH operation to make the resource updatable. Operation: 'Extensions_CreateOrUpdate' Request Model: 'parameters[5].schema' Response Model: 'responses[200].schema' Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L10 |
| :warning: LocationMustHaveXmsMutability | Property location must have 'x-ms-mutability':['read', 'create'] extension defined.Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L1603 |
| :warning: AvoidNestedProperties | Consider using x-ms-client-flatten to provide a better end user experience Location: Microsoft.AgFoodPlatform/preview/2021-09-01-preview/agfood.json#L1610 |
️️✔️Avocado succeeded [Detail] [Expand]
Validation passes for Avocado.
️️✔️ApiReadinessCheck succeeded [Detail] [Expand]
️⚠️~[Staging] ServiceAPIReadinessTest: 0 Warnings warning [Detail]
API Test is not triggered due to precheck failure. Check pipeline log for details.
️️✔️~[Staging] SwaggerAPIView succeeded [Detail] [Expand]
️️✔️ModelValidation succeeded [Detail] [Expand]
Validation passes for ModelValidation.
️️✔️SemanticValidation succeeded [Detail] [Expand]
Validation passes for SemanticValidation.
️️✔️PoliCheck succeeded [Detail] [Expand]
Validation passed for PoliCheck.
️️✔️PrettierCheck succeeded [Detail] [Expand]
Validation passes for PrettierCheck.
️️✔️SpellCheck succeeded [Detail] [Expand]
Validation passes for SpellCheck.
️️✔️Lint(RPaaS) succeeded [Detail] [Expand]
Validation passes for Lint(RPaaS).
️️✔️CadlValidation succeeded [Detail] [Expand]
Validation passes for CadlValidation.
️️✔️PR Summary succeeded [Detail] [Expand]
Validation passes for Summary.
Swagger Generation Artifacts
️️✔️ApiDocPreview succeeded [Detail] [Expand]
Please click here to preview with your @microsoft account.
️❌SDK Breaking Change Tracking failed [Detail]
Breaking Changes Tracking
❌azure-sdk-for-js - @azure/arm-agrifood - 1.0.0-beta.5+ Removed operation Extensions.create + Removed operation Extensions.update
️⚠️ azure-sdk-for-python-track2 warning [Detail]
⚠️Warning [Logs]Release - Generate from 662b1f967e55626d1c1b5ba114c88d2333cb6314. SDK Automation 14.0.0command sh scripts/automation_init.sh ../azure-sdk-for-python_tmp/initInput.json ../azure-sdk-for-python_tmp/initOutput.json cmderr [automation_init.sh] WARNING: Skipping azure-nspkg as it is not installed. command sh scripts/automation_generate.sh ../azure-sdk-for-python_tmp/generateInput.json ../azure-sdk-for-python_tmp/generateOutput.json cmderr [automation_generate.sh] cmderr [automation_generate.sh] npm notice New major version of npm available! 8.19.2 -> 9.1.2 cmderr [automation_generate.sh] npm notice Changelog: <https://github.com/npm/cli/releases/tag/v9.1.2> cmderr [automation_generate.sh] npm notice Run `npm install -g [email protected]` to update! cmderr [automation_generate.sh] npm notice
️✔️track2_azure-mgmt-agrifood [View full logs] [Release SDK Changes] Breaking Change Detectedinfo [Changelog] ### Features Added info [Changelog] info [Changelog] - Added operation ExtensionsOperations.create_or_update info [Changelog] - Model Extension has a new parameter additional_api_properties info [Changelog] - Model PrivateEndpointConnection has a new parameter group_ids info [Changelog] info [Changelog] ### Breaking Changes info [Changelog] info [Changelog] - Removed operation ExtensionsOperations.create info [Changelog] - Removed operation ExtensionsOperations.update
️️✔️ azure-sdk-for-go succeeded [Detail] [Expand]
️✔️Succeeded [Logs]Release - Generate from 662b1f967e55626d1c1b5ba114c88d2333cb6314. SDK Automation 14.0.0command sh ./eng/scripts/automation_init.sh ../../../../../azure-sdk-for-go_tmp/initInput.json ../../../../../azure-sdk-for-go_tmp/initOutput.json command generator automation-v2 ../../../../../azure-sdk-for-go_tmp/generateInput.json ../../../../../azure-sdk-for-go_tmp/generateOutput.json
️✔️sdk/resourcemanager/agrifood/armagrifood [View full logs] [Release SDK Changes] Breaking Change Detectedinfo [Changelog] ### Breaking Changes info [Changelog] info [Changelog] - Function `*ExtensionsClient.Update` has been removed info [Changelog] - Function `*ExtensionsClient.Create` has been removed info [Changelog] - Struct `ExtensionsClientCreateOptions` has been removed info [Changelog] - Struct `ExtensionsClientCreateResponse` has been removed info [Changelog] - Struct `ExtensionsClientUpdateOptions` has been removed info [Changelog] - Struct `ExtensionsClientUpdateResponse` has been removed info [Changelog] info [Changelog] ### Features Added info [Changelog] info [Changelog] - New function `*ExtensionsClient.CreateOrUpdate(context.Context, string, string, string, *ExtensionsClientCreateOrUpdateOptions) (ExtensionsClientCreateOrUpdateResponse, error)` info [Changelog] - New struct `APIProperties` info [Changelog] - New struct `ExtensionInstallationRequest` info [Changelog] - New struct `ExtensionsClientCreateOrUpdateOptions` info [Changelog] - New struct `ExtensionsClientCreateOrUpdateResponse` info [Changelog] - New field `AdditionalAPIProperties` in struct `ExtensionProperties` info [Changelog] - New field `GroupIDs` in struct `PrivateEndpointConnectionProperties` info [Changelog] info [Changelog] Total 10 breaking change(s), 11 additive change(s).
️️✔️ azure-sdk-for-js succeeded [Detail] [Expand]
️✔️Succeeded [Logs]Release - Generate from 662b1f967e55626d1c1b5ba114c88d2333cb6314. SDK Automation 14.0.0command sh .scripts/automation_init.sh ../azure-sdk-for-js_tmp/initInput.json ../azure-sdk-for-js_tmp/initOutput.json warn File azure-sdk-for-js_tmp/initOutput.json not found to read command sh .scripts/automation_generate.sh ../azure-sdk-for-js_tmp/generateInput.json ../azure-sdk-for-js_tmp/generateOutput.json
️✔️@azure/arm-agrifood [View full logs] [Release SDK Changes] Breaking Change Detectedinfo [Changelog] **Features** info [Changelog] info [Changelog] - Added operation Extensions.createOrUpdate info [Changelog] - Added Interface ApiProperties info [Changelog] - Added Interface ExtensionInstallationRequest info [Changelog] - Added Interface ExtensionsCreateOrUpdateOptionalParams info [Changelog] - Added Type Alias ExtensionsCreateOrUpdateResponse info [Changelog] - Interface Extension has a new optional parameter additionalApiProperties info [Changelog] - Interface PrivateEndpointConnection has a new optional parameter groupIds info [Changelog] info [Changelog] **Breaking Changes** info [Changelog] info [Changelog] - Removed operation Extensions.create info [Changelog] - Removed operation Extensions.update
️⚠️ azure-sdk-for-java warning [Detail]
⚠️Warning [Logs]Release - Generate from 662b1f967e55626d1c1b5ba114c88d2333cb6314. SDK Automation 14.0.0command ./eng/mgmt/automation/init.sh ../azure-sdk-for-java_tmp/initInput.json ../azure-sdk-for-java_tmp/initOutput.json cmderr [init.sh] [notice] A new release of pip available: 22.3 -> 22.3.1 cmderr [init.sh] [notice] To update, run: pip install --upgrade pip cmderr [init.sh] [notice] A new release of pip available: 22.3 -> 22.3.1 cmderr [init.sh] [notice] To update, run: pip install --upgrade pip command ./eng/mgmt/automation/generate.py ../azure-sdk-for-java_tmp/generateInput.json ../azure-sdk-for-java_tmp/generateOutput.json
️✔️azure-resourcemanager-agrifood [View full logs] [Release SDK Changes]
️❌ azure-powershell failed [Detail]
❌Failed [Logs]Release - Generate from 662b1f967e55626d1c1b5ba114c88d2333cb6314. SDK Automation 14.0.0command sh ./tools/SwaggerCI/init.sh ../azure-powershell_tmp/initInput.json ../azure-powershell_tmp/initOutput.json command pwsh ./tools/SwaggerCI/psci.ps1 ../azure-powershell_tmp/generateInput.json ../azure-powershell_tmp/generateOutput.json
❌Az.agrifood [View full logs] [Release SDK Changes]
Generated ApiView
| Language | Package Name | ApiView Link |
|---|---|---|
| Go | sdk/resourcemanager/agrifood/armagrifood | Create ApiView failed. Please ensure your github account in Azure/Microsoft is public and add a comment "/azp run" to re-trigger the CI. |
| Python | track2_azure-mgmt-agrifood | Create ApiView failed. Please ensure your github account in Azure/Microsoft is public and add a comment "/azp run" to re-trigger the CI. |
| JavaScript | @azure/arm-agrifood | Create ApiView failed. Please ensure your github account in Azure/Microsoft is public and add a comment "/azp run" to re-trigger the CI. |
| Java | azure-resourcemanager-agrifood | Create ApiView failed. Please ensure your github account in Azure/Microsoft is public and add a comment "/azp run" to re-trigger the CI. |
NewApiVersionRequired reason: A service’s API is a contract with customers and is represented by using the api-version query parameter. Changes such as adding an optional property to a request/response or introducing a new operation is a change to the service’s contract and therefore requires a new api-version value. This is critically important for documentation, client libraries, and customer support. EXAMPLE: if a customer calls a service in the public cloud using api-version=2020-07-27, the new property or operation may exist but if they call the service in a government cloud, air-gapped cloud, or Azure Stack Hub cloud using the same api-version, the property or operation may not exist. Because there is no clear relationship between the service api-version and the new property/operation, customers can’t trust the documentation and Azure customer have difficulty helping customers diagnose issues. In addition, each client library version documents the service version it supports. When an optional property or new operation is added to a service and its Swagger, new client libraries must be produced to expose this functionality to customers. Without updating the api-version, it is unclear to customers which version of a client library supports these new features.
Hi @IshitaAsthana, Your PR has some issues. Please fix the CI sequentially by following the order of Avocado, semantic validation, model validation, breaking change, lintDiff. If you have any questions, please post your questions in this channel https://aka.ms/swaggersupport.
| Task | How to fix | Priority |
|---|---|---|
| Avocado | Fix-Avocado | High |
| Semantic validation | Fix-SemanticValidation-Error | High |
| Model validation | Fix-ModelValidation-Error | High |
| LintDiff | Fix-LintDiff | high |
Hi @IshitaAsthana, one or multiple breaking change(s) is detected in your PR. Please check out the breaking change(s), and provide business justification in the PR comment and @ PR assignee why you must have these change(s), and how external customer impact can be mitigated. Please ensure to follow breaking change policy to request breaking change review and approval before proceeding swagger PR review. Action: To initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki. If you want to know the production traffic statistic, please see ARM Traffic statistic. If you think it is false positive breaking change, please provide the reasons in the PR comment, report to Swagger Tooling Team via https://aka.ms/swaggerfeedback. Note: To avoid breaking change, you can refer to Shift Left Solution for detecting breaking change in early phase at your service code repository.
Marked as Approved-BreakingChange because this change is allowed prior to public preview.
Words from GO SDK owner. @ArcturusZhang
For go sdk generation failure:
It is a duplicated schema issue. We should never use both different versions of common-types together in one swagger (even in the same swagger tag). If you want to use something in v4 (or upgrade to v4), they should do it thoroughly in the whole RP like 1