Microsoft.Security new version - 2024-02-01
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.
Click here to see the details of Step 1
Breaking changes review (Diagram Step 1)
If the automation determines you have breaking changes, i.e. Step 1 from the diagram applies to you,
you must follow the breaking changes process.
IMPORTANT This applies even if:
- The tool fails while it shouldn't, e.g. due to runtime exception, or incorrect detection of breaking changes.
- You believe there is no need for you to request breaking change approval, for any reason. Such claims must be reviewed, and the process is the same.
Click here to see the details of Step 2
ARM API changes review (Diagram Step 2)
- If this PR is in purview of ARM review then automation will add the
ARMReviewlabel. - If you want to force ARM review, add the label yourself.
- Proceed according to the diagram at the top of this comment.
Click here to see the diagram footnotes
Diagram footnotes
[1] ARM review queue (for merge queues, see [2])
The PRs are processed by time opened, ascending. Your PR may show up on 2nd or later page.
If you addressed Step 1 from the diagram and your PR is not showing up in the queue, ensure the label ARMChangesRequested
is removed from your PR. This should cause the label WaitForARMFeedback to be added.
[2] public repo merge queue, private repo merge queue (for ARM review queue, [1])
If you need further help with anything, see Getting help section below.
Purpose of this PR
What's the purpose of this PR? Check all that apply. This is mandatory!
- [x] New API version. (If API spec is not defined in TypeSpec, the PR should have been generated using OpenAPI Hub).
- [ ] 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 swagger quality issues in S360.
- [ ] 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 Swagger-Suppression-Process 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. - 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.
- 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:
CI-BreakingChange-Go). Refer to step 3 in the PR workflow diagram (even if your PR is for data plane, not ARM). - ❌ Your PR has breaking changes in the generated SDK for javascript (label:
CI-BreakingChange-JavaScript). Refer to step 3 in the PR workflow diagram (even if your PR is for data plane, not ARM). - ❌ The required check named
SDK azure-sdk-for-gohas failed. Refer to the check in the PR's 'Checks' tab for details on how to fix it. In addition, refer to step 3 in the PR workflow diagram (even if your PR is for data plane, not ARM).
Swagger Validation Report
️️✔️BreakingChange succeeded [Detail] [Expand]
There are no breaking changes.
️⚠️Breaking Change(Cross-Version): 24 Warnings warning [Detail]
| compared swaggers (via Oad v0.10.4)] | new version | base version |
|---|---|---|
| assessmentMetadata.json | 2024-02-01-preview(029fdbb) | 2021-06-01(main) |
| assessmentMetadata.json | 2024-02-01-preview(029fdbb) | 2019-01-01-preview(main) |
| assessments.json | 2024-02-01-preview(029fdbb) | 2021-06-01(main) |
| assessments.json | 2024-02-01-preview(029fdbb) | 2019-01-01-preview(main) |
The following breaking changes are detected by comparison with the latest preview version:
️️✔️CredScan succeeded [Detail] [Expand]
There is no credential detected.
️⚠️LintDiff: 0 Warnings warning [Detail]
| compared tags (via openapi-validator v2.1.7) | new version | base version |
|---|---|---|
| package-composite-v3 | package-composite-v3(029fdbb) | package-composite-v3(main) |
| package-dotnet-sdk | package-dotnet-sdk(029fdbb) | package-dotnet-sdk(main) |
The following errors/warnings exist before current PR submission:
Only 30 items are listed, please refer to log for more details.
| Rule | Message |
|---|---|
ResourceNameRestriction |
The resource name parameter 'assessmentMetadataName' should be defined with a 'pattern' restriction. Location: Microsoft.Security/preview/2024-02-01-preview/assessmentMetadata.json#L73 |
ResourceNameRestriction |
The resource name parameter 'assessmentMetadataName' should be defined with a 'pattern' restriction. Location: Microsoft.Security/preview/2024-02-01-preview/assessmentMetadata.json#L73 |
ResourceNameRestriction |
The resource name parameter 'assessmentMetadataName' should be defined with a 'pattern' restriction. Location: Microsoft.Security/preview/2024-02-01-preview/assessmentMetadata.json#L148 |
ResourceNameRestriction |
The resource name parameter 'assessmentMetadataName' should be defined with a 'pattern' restriction. Location: Microsoft.Security/preview/2024-02-01-preview/assessmentMetadata.json#L148 |
PutResponseCodes |
Synchronous and long-running PUT operations must have responses with 200, 201 and default return codes. They also must not have other response codes. Location: Microsoft.Security/preview/2024-02-01-preview/assessmentMetadata.json#L186 |
PutResponseCodes |
Synchronous and long-running PUT operations must have responses with 200, 201 and default return codes. They also must not have other response codes. Location: Microsoft.Security/preview/2024-02-01-preview/assessmentMetadata.json#L186 |
DeleteResponseCodes |
Synchronous delete operations must have responses with 200, 204 and default return codes. They also must have no other response codes. Location: Microsoft.Security/preview/2024-02-01-preview/assessmentMetadata.json#L226 |
DeleteResponseCodes |
Synchronous delete operations must have responses with 200, 204 and default return codes. They also must have no other response codes. Location: Microsoft.Security/preview/2024-02-01-preview/assessmentMetadata.json#L226 |
DeleteOperationResponses |
The delete operation is defined without a 200 or 204 error response implementation,please add it.' Location: Microsoft.Security/preview/2024-02-01-preview/assessmentMetadata.json#L248 |
DeleteOperationResponses |
The delete operation is defined without a 200 or 204 error response implementation,please add it.' Location: Microsoft.Security/preview/2024-02-01-preview/assessmentMetadata.json#L248 |
DefinitionsPropertiesNamesCamelCase |
Property name should be camel case. Location: Microsoft.Security/preview/2024-02-01-preview/assessmentMetadata.json#L590 |
DefinitionsPropertiesNamesCamelCase |
Property name should be camel case. Location: Microsoft.Security/preview/2024-02-01-preview/assessmentMetadata.json#L590 |
ResourceNameRestriction |
The resource name parameter 'assessmentName' should be defined with a 'pattern' restriction. Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L76 |
ResourceNameRestriction |
The resource name parameter 'assessmentName' should be defined with a 'pattern' restriction. Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L76 |
ParametersInPointGet |
Query parameter $expand should be removed. Point Get's MUST not have query parameters other than api version. Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L91 |
ParametersInPointGet |
Query parameter $expand should be removed. Point Get's MUST not have query parameters other than api version. Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L91 |
PutRequestResponseSchemeArm |
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: 'Assessments_CreateOrUpdate' Request Model: 'parameters[3].schema' Response Model: 'responses[200].schema' Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L120 |
PutRequestResponseSchemeArm |
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: 'Assessments_CreateOrUpdate' Request Model: 'parameters[3].schema' Response Model: 'responses[200].schema' Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L120 |
AvoidAdditionalProperties |
Definitions must not have properties named additionalProperties except for user defined tags or predefined references. Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L214 |
AvoidAdditionalProperties |
Definitions must not have properties named additionalProperties except for user defined tags or predefined references. Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L214 |
AvoidAdditionalProperties |
Definitions must not have properties named additionalProperties except for user defined tags or predefined references. Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L229 |
AvoidAdditionalProperties |
Definitions must not have properties named additionalProperties except for user defined tags or predefined references. Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L229 |
AvoidAdditionalProperties |
Definitions must not have properties named additionalProperties except for user defined tags or predefined references. Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L244 |
AvoidAdditionalProperties |
Definitions must not have properties named additionalProperties except for user defined tags or predefined references. Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L244 |
AvoidAdditionalProperties |
Definitions must not have properties named additionalProperties except for user defined tags or predefined references. Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L264 |
AvoidAdditionalProperties |
Definitions must not have properties named additionalProperties except for user defined tags or predefined references. Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L264 |
AvoidAdditionalProperties |
Definitions must not have properties named additionalProperties except for user defined tags or predefined references. Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L281 |
AvoidAdditionalProperties |
Definitions must not have properties named additionalProperties except for user defined tags or predefined references. Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L281 |
AvoidAdditionalProperties |
Definitions must not have properties named additionalProperties except for user defined tags or predefined references. Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L301 |
AvoidAdditionalProperties |
Definitions must not have properties named additionalProperties except for user defined tags or predefined references. Location: Microsoft.Security/preview/2024-02-01-preview/assessments.json#L301 |
️⚠️Avocado: 1 Warnings warning [Detail]
| Rule | Message |
|---|---|
| :warning: MULTIPLE_API_VERSION | The default tag contains multiple API versions swaggers. readme: specification/security/resource-manager/readme.md tag: specification/security/resource-manager/readme.md#tag-package-composite-v3 |
️❌SwaggerAPIView: 0 Errors, 0 Warnings failed [Detail]
️️✔️TypeSpecAPIView 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.
️️✔️SpellCheck succeeded [Detail] [Expand]
Validation passes for SpellCheck.
️️✔️Lint(RPaaS) succeeded [Detail] [Expand]
Validation passes for Lint(RPaaS).
️️✔️PR Summary succeeded [Detail] [Expand]
Validation passes for Summary.
️️✔️Automated merging requirements met succeeded [Detail] [Expand]
Swagger Generation Artifacts
️️✔️ApiDocPreview succeeded [Detail] [Expand]
Only 0 items are rendered, please refer to log for more details.
️❌SDK Breaking Change Tracking failed [Detail]
Only 0 items are rendered, please refer to log for more details.
️❌ azure-sdk-for-net-track2 failed [Detail]
Only 0 items are rendered, please refer to log for more details.
️❌ azure-sdk-for-go failed [Detail]
Only 0 items are rendered, please refer to log for more details.
️⚠️ azure-sdk-for-python-track2 warning [Detail]
Only 0 items are rendered, please refer to log for more details.
️🔄 azure-sdk-for-js inProgress [Detail]
️⚠️ azure-sdk-for-java warning [Detail]
Only 0 items are rendered, please refer to log for more details.
️❌ azure-resource-manager-schemas failed [Detail]
Only 0 items are rendered, please refer to log for more details.
️⚠️ azure-powershell warning [Detail]
Only 0 items are rendered, please refer to log for more details.
PR validation pipeline restarted successfully. If there is ApiView generated, it will be updated in this comment.
Hi @aviramyi! For review efficiency consideration, when creating a new API version, it is required to place API specs of the base version in the first commit, and push new version updates into successive commits. You can use OpenAPIHub to initialize the PR for adding a new version.
For more details refer to the wiki.
Hi @aviramyi! For review efficiency consideration, when creating a new API version, it is required to place API specs of the base version in the first commit, and push new version updates into successive commits. You can use OpenAPIHub to initialize the PR for adding a new version. For more details refer to the wiki.
This is flagged as part of the automated tests as well here
Please address or respond to feedback from the ARM API reviewer.
When you are ready to continue the ARM API review, please remove the ARMChangesRequested label.
This will notify the reviewer to have another look.
If the feedback provided needs further discussion, please use this Teams channel to post your questions - aka.ms/azsdk/support/specreview-channel.
Please include [ARM Query] in the title of your question to indicate that it is ARM-related.
/azp run
Azure Pipelines successfully started running 4 pipeline(s).
please fix duplicate schemas to make sdk generation work, more details please see https://github.com/Azure/sdk-release-request/issues/4762#issuecomment-1827286038 and https://github.com/Azure/azure-rest-api-specs/pull/27389/checks?check_run_id=21141086420
please fix duplicate schemas to make sdk generation work, more details please see Azure/sdk-release-request#4762 (comment) and https://github.com/Azure/azure-rest-api-specs/pull/27389/checks?check_run_id=21141086420
Hi @kazrael2119, I reviewed the attached links and errors. Unfortunately, each of the mentioned issues is under a different team that share Microsoft.Security RP.
Given that information, and the fact that this spans across teams, I would really appreciate if we can bypass this validation, as my PR didn't add any errors that weren't there before. Here is a PR that was approved and merged with these issues.
Appreciate your assistance.
please fix duplicate schemas to make sdk generation work, more details please see Azure/sdk-release-request#4762 (comment) and https://github.com/Azure/azure-rest-api-specs/pull/27389/checks?check_run_id=21141086420
Hi @kazrael2119, I reviewed the attached links and errors. Unfortunately, each of the mentioned issues is under a different team that share Microsoft.Security RP.
Given that information, and the fact that this spans across teams, I would really appreciate if we can bypass this validation, as my PR didn't add any errors that weren't there before. Here is a PR that was approved and merged with these issues.
Appreciate your assistance.
could you help check this duplicate?
and for below error:
error | DuplicateOperation | Duplicate Operation 'Pricings' > 'List' detected(This is most likely due to 2 operation using the same 'operationId' or 'tags'). Duplicates have those paths:
- get /subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings
- get /{scopeId}/providers/Microsoft.Security/pricings
error | DuplicateOperation | Duplicate Operation 'Pricings' > 'Get' detected(This is most likely due to 2 operation using the same 'operationId' or 'tags'). Duplicates have those paths:
- get /subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}
- get /{scopeId}/providers/Microsoft.Security/pricings/{pricingName}
error | DuplicateOperation | Duplicate Operation 'Pricings' > 'Update' detected(This is most likely due to 2 operation using the same 'operationId' or 'tags'). Duplicates have those paths:
- put /subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}
- put /{scopeId}/providers/Microsoft.Security/pricings/{pricingName}
I think after this pr https://github.com/Azure/azure-rest-api-specs/pull/27497 merged into main, these will be fixed
add @JeffreyRichter as the reviewer as security service has multi api versions. And all these duplicate issues will be resolved when unify the api version
Yes, Azure's policy is that a "service" (RP) is a set of operation endpoints that version uniformly together. And, only after this is done properly can customers use the documentation correctly and SDK packages can be made. In addition, we cannot ship any SDK package where some api-versions are preview and some are GA. The api-versions must be unified before this PR can be approved.
Hi, @aviramyi. 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, @aviramyi. 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.