-
Notifications
You must be signed in to change notification settings - Fork 5.1k
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
Swagger changes for Stop and Resume protection APIs #14250
Conversation
Hi, @pratikjoshi14 Thanks for your PR. I am workflow bot for review process. Here are some small tips. Any feedback about review process or workflow bot, pls contact swagger and tools team. vsswagger@microsoft.com |
[Call for Action] To better understand Azure service dev/test scenario, and support Azure service developer better on Swagger and REST API related tests in early phase, please help to fill in with this survey https://aka.ms/SurveyForEarlyPhase. It will take 5 to 10 minutes. If you already complete survey, please neglect this comment. Thanks. |
Swagger Validation Report
|
Rule | Message |
---|---|
1038 - AddedPath |
The new version is adding a path that was not found in the old version. New: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L1523:5 |
1038 - AddedPath |
The new version is adding a path that was not found in the old version. New: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L1590:5 |
1038 - AddedPath |
The new version is adding a path that was not found in the old version. New: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L1657:5 |
1038 - AddedPath |
The new version is adding a path that was not found in the old version. New: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L1724:5 |
1038 - AddedPath |
The new version is adding a path that was not found in the old version. New: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L1791:5 |
️⚠️
LintDiff: 6 Warnings warning [Detail]
- Linted configuring files (Based on source branch, openapi-validator v1.9.2 , classic-openapi-validator v1.1.6 )
- Linted configuring files (Based on target branch, openapi-validator v1.9.2 , classic-openapi-validator v1.1.6 )
Rule | Message |
---|---|
Per the Noun_Verb convention for Operation Ids, the noun 'BackupInstances' should not appear after the underscore. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change. Location: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L1797 |
|
'backupInstanceName' parameter lacks 'description' property. Consider adding a 'description' element. Accurate description is essential for maintaining reference documentation. Location: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L1546 |
|
'backupInstanceName' parameter lacks 'description' property. Consider adding a 'description' element. Accurate description is essential for maintaining reference documentation. Location: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L1613 |
|
'backupInstanceName' parameter lacks 'description' property. Consider adding a 'description' element. Accurate description is essential for maintaining reference documentation. Location: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L1680 |
|
'backupInstanceName' parameter lacks 'description' property. Consider adding a 'description' element. Accurate description is essential for maintaining reference documentation. Location: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L1747 |
|
'backupInstanceName' parameter lacks 'description' property. Consider adding a 'description' element. Accurate description is essential for maintaining reference documentation. Location: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L1814 |
The following errors/warnings exist before current PR submission:
Only 10 items are listed, please refer to log for more details.
Rule | Message |
---|---|
Since operation 'BackupVaults_GetResourcesInSubscription' response has model definition 'x-ms-pageable', it should be of the form '_list'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change. Location: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L27 |
|
Since operation 'BackupVaults_GetResourcesInResourceGroup' response has model definition 'x-ms-pageable', it should be of the form '_list'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change. Location: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L190 |
|
Since operation 'RecoveryPoints_GetList' response has model definition 'x-ms-pageable', it should be of the form '_list'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change. Location: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L1239 |
|
'PATCH' operation 'BackupVaults_Patch' should use method name 'Update'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change. Location: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L392 |
|
Consider using x-ms-client-flatten to provide a better end user experience Location: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L2437 |
|
Consider using x-ms-client-flatten to provide a better end user experience Location: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L2610 |
|
Consider using x-ms-client-flatten to provide a better end user experience Location: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L2698 |
|
Consider using x-ms-client-flatten to provide a better end user experience Location: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L2991 |
|
Consider using x-ms-client-flatten to provide a better end user experience Location: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L3114 |
|
Consider using x-ms-client-flatten to provide a better end user experience Location: Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json#L3174 |
️️✔️
Avocado succeeded [Detail] [Expand]
Validation passes for Avocado.
️️✔️
ModelValidation succeeded [Detail] [Expand]
Validation passes for ModelValidation.
️️✔️
SemanticValidation succeeded [Detail] [Expand]
Validation passes for SemanticValidation.
️️✔️
Cross Version BreakingChange (Base on preview version) succeeded [Detail] [Expand]
There are no breaking changes.
️️✔️
Cross Version BreakingChange (Base on stable version) succeeded [Detail] [Expand]
There are no breaking changes.
️️✔️
CredScan succeeded [Detail] [Expand]
There is no credential detected.
️️✔️
[Staging] SDK Track2 Validation succeeded [Detail] [Expand]
Validation passes for SDKTrack2Validation
- The following tags are being changed in this PR
|:speech_balloon: AutorestCore/Exception|"readme":"dataprotection/resource-manager/readme.md",
"tag":"package-2021-02-preview",
"details":"> Installing AutoRest extension '@microsoft.azure/openapi-validator' (1.8.0)"|
|:speech_balloon: AutorestCore/Exception|"readme":"dataprotection/resource-manager/readme.md",
"tag":"package-2021-02-preview",
"details":"> Installed AutoRest extension '@microsoft.azure/openapi-validator' (1.8.0->1.8.0)"|
The following errors/warnings exist before current PR submission:
|:speech_balloon: AutorestCore/Exception|"readme":"dataprotection/resource-manager/readme.md",
"tag":"package-2021-02-preview",
"details":"> Loading AutoRest extension '@autorest/modelerfour' (4.15.456->4.15.456)"|
️️✔️
[Staging] PrettierCheck succeeded [Detail] [Expand]
Validation passes for PrettierCheck.
️️✔️
[Staging] SpellCheck succeeded [Detail] [Expand]
Validation passes for SpellCheck.
Swagger Generation Artifacts
|
Hi, @pratikjoshi14 your PR are labelled with WaitForARMFeedback. A notification email will be sent out shortly afterwards to notify ARM review board(armapireview@microsoft.com). cc @weidongxu-microsoft |
NewApiVersionRequired reason: |
...ion/resource-manager/Microsoft.DataProtection/preview/2021-02-01-preview/dataprotection.json
Show resolved
Hide resolved
} | ||
} | ||
}, | ||
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupInstances/{backupInstanceName}/sync": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added description. This API is still in review mode and can rename before moving to stable version.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
*preview. Thanks for the comment. We want to get the customer feedback so have released portal as well. We have noted renaming of the API and will take this as part of public preview when move to stable version in a month or so. As we will have to coordinate the change with our Portal team
"properties": { | ||
"forceResync": { | ||
"description": "Specifies if resync needs to be done forced otherwise only resync will happen for failure case.", | ||
"type": "boolean" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ARM generally recommends against booleans in favor of string enums. Best option is to choose a better property (e.g. syncType: { "ForceResync", "LazySync", "Default" }). This type of property is easier to understand and use. Next best option if you really want a True/False value is to use a string enum "forceResync": { "True", "False" }. Both options allow adding values later without requiring a new API version. #Resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sure.. will fix.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed. Thanks.
@mentat9 / @weidongxu-microsoft : These changes are only in -preview version which is not live yet. Hence it should not break customers - as flagged in the PR. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there any SDK released for this preview version?
The factor on live or not, SDK released or not is only factors to consider, you still need approval from Jeffrey.
"headers": { | ||
"Location": { | ||
"description": "The URL of the resource used to check the status of the asynchronous operation.", | ||
"type": "string" | ||
}, | ||
"Azure-AsyncOperation": { | ||
"description": "The URL of the resource used to check the status of the asynchronous operation.", | ||
"type": "string" | ||
}, | ||
"Retry-After": { | ||
"description": "Suggested delay to check the status of the asynchronous operation. The value is an integer that represents the seconds.", | ||
"type": "integer", | ||
"format": "int32" | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think these headers need to be spelled out. As long as it is marked as x-ms-long-running-operation
, all SDK will handle these.
On the other hand, is there empty response after LRO? If not, the response schema should be here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes the response body is empty
"headers": { | ||
"Location": { | ||
"description": "The URL of the resource used to check the status of the asynchronous operation.", | ||
"type": "string" | ||
}, | ||
"Azure-AsyncOperation": { | ||
"description": "The URL of the resource used to check the status of the asynchronous operation.", | ||
"type": "string" | ||
}, | ||
"Retry-After": { | ||
"description": "Suggested delay to check the status of the asynchronous operation. The value is an integer that represents the seconds.", | ||
"type": "integer", | ||
"format": "int32" | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes the response body is empty
} | ||
} | ||
}, | ||
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupInstances/{backupInstanceName}/sync": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
*preview. Thanks for the comment. We want to get the customer feedback so have released portal as well. We have noted renaming of the API and will take this as part of public preview when move to stable version in a month or so. As we will have to coordinate the change with our Portal team
We published a powershell sdk for specific private preview customers who wanted to get early sneak peek. but no .net or other sdks were generated.. |
@JeffreyRichter : Can you please approve this PR? |
* Added Suspend/Resume APIs * Prettier changes * spell check fix * Fixing version in example * PR feedback changes * changes
MSFT employees can try out our new experience at OpenAPI Hub - one location for using our validation tools and finding your workflow.
Changelog
Please ensure to add changelog with this PR by answering the following questions.
Contribution checklist:
If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist
Ensure to check this box if one of the following scenarios meet updates in the PR, so that label “WaitForARMFeedback” will be added automatically to involve ARM API Review. Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs, all “removals” and “adding a new property” no more require ARM API review.
Please 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.
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 there are following updates in the PR, ensure to request an approval from Breaking Change Review Board as defined in the Breaking Change Policy.
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.
Please follow the link to find more details on PR review process.