-
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
Fix minor issues for AFDX public preview #12798
Conversation
Hi, @ShirleyJ27 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. [email protected] |
Swagger Validation Report
Only 10 items are listed, please refer to log for more details.
|
Rule | Message |
---|---|
'systemData' model/property lacks 'description' and 'title' property. Consider adding a 'description'/'title' element. Accurate description/title is essential for maintaining reference documentation. Location: Microsoft.Cdn/stable/2020-09-01/cdn.json#L5449 |
️️✔️
Avocado succeeded [Detail] [Expand]
Validation passes for Avocado.
️️✔️
ModelValidation succeeded [Detail] [Expand]
Validation passes for ModelValidation.
️️✔️
SemanticValidation succeeded [Detail] [Expand]
Validation passes for SemanticValidation.
️️✔️
[Staging] Cross Version BreakingChange (Base on preview version) succeeded [Detail] [Expand]
There are no breaking changes.
️️✔️
[Staging] 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: 2 Errors, 131 Warnings failed [Detail]
Only 10 items are listed, please refer to log for more details.
- The following tags are being changed in this PR
Rule | Message |
---|---|
PreCheck/DuplicateSchema |
"readme":"cdn/resource-manager/readme.md", "tag":"package-2020-09", "details":"Duplicate Schema named DeliveryRuleAction -- discriminator: "propertyName":"name" =>, properties: "name":"description":"The name of the action for the delivery rule.", "$ref":"#/components/schemas/DeliveryRuleAction" =>, required: ["name"] =>, type: undefined => "string", enum: undefined => ["CacheExpiration", "CacheKeyQueryString", "ModifyRequestHeader", "ModifyResponseHeader", "UrlRedirect", "UrlRewrite", "UrlSigning", "OriginGroupOverride"], x-ms-enum: undefined => "name":"DeliveryRuleAction", "modelAsString":true ; This error can be temporarily avoided by using the 'modelerfour.lenient-model-deduplication' setting. NOTE: This setting will be removed in a future version of @autorest/modelerfour; schemas should be updated to fix this issue sooner than that." |
AutorestCore/Exception |
"readme":"cdn/resource-manager/readme.md", "tag":"package-2020-09", "details":"Error: Plugin prechecker reported failure." |
"readme":"cdn/resource-manager/readme.md", "tag":"package-2020-09", "details":"The schema 'ProfileProperties' with an undefined type and decalared properties is a bit ambigious. This has been auto-corrected to 'type:object'" |
|
"readme":"cdn/resource-manager/readme.md", "tag":"package-2020-09", "details":"The schema 'ProfileListResult' with an undefined type and decalared properties is a bit ambigious. This has been auto-corrected to 'type:object'" |
|
"readme":"cdn/resource-manager/readme.md", "tag":"package-2020-09", "details":"The schema 'EndpointProperties' with an undefined type and decalared properties is a bit ambigious. This has been auto-corrected to 'type:object'" |
|
"readme":"cdn/resource-manager/readme.md", "tag":"package-2020-09", "details":"The schema 'EndpointListResult' with an undefined type and decalared properties is a bit ambigious. This has been auto-corrected to 'type:object'" |
|
"readme":"cdn/resource-manager/readme.md", "tag":"package-2020-09", "details":"The schema 'EndpointPropertiesUpdateParameters' with an undefined type and decalared properties is a bit ambigious. This has been auto-corrected to 'type:object'" |
|
"readme":"cdn/resource-manager/readme.md", "tag":"package-2020-09", "details":"The schema 'DeliveryRuleCondition' with an undefined type and decalared properties is a bit ambigious. This has been auto-corrected to 'type:object'" |
|
"readme":"cdn/resource-manager/readme.md", "tag":"package-2020-09", "details":"The schema 'DeliveryRuleRemoteAddressCondition' with an undefined type and decalared properties is a bit ambigious. This has been auto-corrected to 'type:object'" |
|
"readme":"cdn/resource-manager/readme.md", "tag":"package-2020-09", "details":"The schema 'DeliveryRuleRequestMethodCondition' with an undefined type and decalared properties is a bit ambigious. This has been auto-corrected to 'type:object'" |
Swagger Generation Artifacts
|
Hi @ShirleyJ27, Your PR has some issues. Please fix the CI sequentially by following the order of
|
Hi @ShirleyJ27, 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. |
In the Window Period to fix mismatches between swagger and service, when PR is labelled with “FixS360”, breaking change can be approved by PR assignee; the Azure Breaking Change Board is no longer required to approve the PR. Please ensure to clarify what s360 action items to be solved, and @ mention PR assignee for awareness. Please check this wiki [Window to Fix Broken]( Window to Fix Broken - Overview (azure.com)) for more details. |
@@ -2165,15 +2165,6 @@ | |||
"required": true, | |||
"type": "string" | |||
}, | |||
{ | |||
"name": "ruleSet", |
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.
"name": "ruleSet" [](start = 12, length = 17)
Is this intentional? a put call without a body? where are the properties being set now?
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. There are no real properties on the rule set. It's just a container / parent for the rules.
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.
It's right below it and it adds it to the rulesets, which looks like profiles/rulesets/rules
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.
Just having a placeholder doesn't seem ok, what happens if the endpoint /rulesets/rules gets invoked first instead of this placeholder? Is better to model your endpoint in such a way that one call creates your rule set and inner rules. @chiragg4u for more insight.
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.
@ShirleyJ27 please find the RPC requirement @ https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/resource-api-reference.md#put-resource
Since you've confirmed in the checklist looks like you've missed this part from the documentation.
Please note there are many other products assumes ARM Resource structure and generically process the resources. In case you don't follow any of the common property many such scenario will break.
In this specific case it will also break the contract and will be impacting the SDK's.
Can you provide the reasoning on why you are trying to remove this?
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'm not sure which part of it breaks the contract, unless a payload is required for PUT calls.
The reasoning behind removing the PUT calls is because there are not actual properties on rulesets. Having it there would just require an empty payload from the customer, in the form of an empty bracket ("{}"), and that seems like a bad customer experience.
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.
You've only changed the object in PUT but you are still returning the object in GET; not sure how will you be able to return the object.
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.
We are returning the provisioning state so that signifies whether the call went through. It doesn't have other info on it because the object doesn't have any "real" attributes on it.
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.
in your manifest you have logging rules setup on this type to log the request and response body. I don't know if that will break if you remove the requirement for a request body. So unless there is a S360 kpi requirement that requires this change I would recommend not making this change, and have the user specify an empty content "{}" explicitly
In reply to: 571176681 [](ancestors = 571176681)
* move systemdata to the end * update * revert unwanted change * ruleset & loganalytics changes * "collectionFormat": "multi" * fix model valiation * fix validation errors * Update readme.python.md * take 2 * take 3 * remove the lenient-model-deduplication fix as it didnt help Co-authored-by: Shirley Jiang <[email protected]>
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 API 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.