azure-rest-api-specs
azure-rest-api-specs copied to clipboard
Updating ContainerStorage Swagger
Updating containerstorage to match Azure-ContainerStorageRP swagger
containerstorage folder should be identical to Swagger/Microsoft.ContainerStorage https://msazure.visualstudio.com/One/_git/Azure-ContainerStorageRP?path=/src/Swagger/Microsoft.ContainerStorage&version=GBmain
Includes:
- Field Validations
Swagger Validation Report
️❌BreakingChange: 33 Errors, 0 Warnings failed [Detail]
| compared swaggers (via Oad v0.10.4)] | new version | base version |
|---|---|---|
| containerstorage.json | 2023-03-01-preview(d44f25e) | 2023-03-01-preview(main) |
Only 30 items are listed, please refer to log for more details.
️⚠️Breaking Change(Cross-Version): 75 Warnings warning [Detail]
| compared swaggers (via Oad v0.10.4)] | new version | base version |
|---|---|---|
| containerstorage.json | 2023-07-01-preview(d44f25e) | 2023-03-01-preview(main) |
The following breaking changes are detected by comparison with the latest preview version:
Only 30 items are listed, please refer to log for more details.
️️✔️CredScan succeeded [Detail] [Expand]
There is no credential detected.
️️✔️LintDiff succeeded [Detail] [Expand]
Validation passes for LintDiff.
| compared tags (via openapi-validator v2.1.3) | new version | base version |
|---|---|---|
| package-2023-07-01-preview | package-2023-07-01-preview(d44f25e) | default(main) |
️️✔️Avocado succeeded [Detail] [Expand]
Validation passes for Avocado.
️️✔️ApiReadinessCheck succeeded [Detail] [Expand]
️❌~[NotRequired_Staging] ServiceAPIReadinessTest: 0 Errors, 0 Warnings failed [Detail]
Tag package-2023-07-01-preview; Prod region: Not deployed; Canary region: Not deployed
️️✔️SwaggerAPIView succeeded [Detail] [Expand]
️️✔️CadlAPIView succeeded [Detail] [Expand]
️️✔️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.
️️✔️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.
️️✔️TypeSpec Validation succeeded [Detail]
| Rule | Message |
|---|---|
InConsistentSwagger |
"details":"The generated swagger file 2023-07-01-preview/containerstorage.json from typespec specification/containerstorage/ContainerStorage.Management is not the same as the '/mnt/vss/_work/1/azure-rest-api-specs/specification/containerstorage/resource-manager/Microsoft.ContainerStorage/preview/2023-07-01-preview/containerstorage.json' in PR, please make sure the swagger is consistent with the generated swagger. You can find the difference in the pipeline log." |
️️✔️PR Summary succeeded [Detail] [Expand]
Validation passes for Summary.
️️✔️Automated merging requirements met succeeded [Detail] [Expand]
Hi, @aarongalang! Thank you for your pull request. To help get your PR merged:
Generated ApiView comment added to this PR. You can use ApiView to show API versions diff.
Swagger Generation Artifacts
️️✔️ApiDocPreview succeeded [Detail] [Expand]
Please click here to preview with your @microsoft account.
️⚠️ azure-sdk-for-python-track2 warning [Detail]
⚠️Warning [Logs]Release - Generate from 978acdcf8de8c8f395efe6ceea871fba5faed85c. 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. warn specification/containerstorage/ContainerStorage.Management/tspconfig.yaml skipped due to azure-sdk-for-python-track2 not found in tspconfig.yaml command sh scripts/automation_generate.sh ../azure-sdk-for-python_tmp/generateInput.json ../azure-sdk-for-python_tmp/generateOutput.json cmderr [automation_generate.sh] notice cmderr [automation_generate.sh] npm notice New minor version of npm available! 9.6.7 -> 9.8.1 cmderr [automation_generate.sh] npm notice Changelog: <https://github.com/npm/cli/releases/tag/v9.8.1> cmderr [automation_generate.sh] npm notice Run `npm install -g [email protected]` to update! cmderr [automation_generate.sh] npm notice
️✔️track2_azure-mgmt-containerstorage [View full logs] [Release SDK Changes]info [Changelog] - Initial Release
️⚠️ azure-sdk-for-python warning [Detail]
⚠️Warning [Logs]Release - Generate from 978acdcf8de8c8f395efe6ceea871fba5faed85c. 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. warn specification/containerstorage/ContainerStorage.Management/tspconfig.yaml skipped due to azure-sdk-for-python not found in tspconfig.yaml 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] New minor version of npm available! 9.6.7 -> 9.8.1 cmderr [automation_generate.sh] npm notice Changelog: <https://github.com/npm/cli/releases/tag/v9.8.1> cmderr [automation_generate.sh] npm notice Run `npm install -g [email protected]` to update! cmderr [automation_generate.sh] npm notice
️✔️track2_azure-mgmt-containerstorage [View full logs] [Release SDK Changes]info [Changelog] - Initial Release
️️✔️ azure-sdk-for-go succeeded [Detail] [Expand]
️✔️Succeeded [Logs]Release - Generate from 978acdcf8de8c8f395efe6ceea871fba5faed85c. 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 warn specification/containerstorage/ContainerStorage.Management/tspconfig.yaml skipped due to azure-sdk-for-go not found in tspconfig.yaml command generator automation-v2 ../../../../../azure-sdk-for-go_tmp/generateInput.json ../../../../../azure-sdk-for-go_tmp/generateOutput.json
️✔️sdk/resourcemanager/containerstorage/armcontainerstorage [View full logs] [Release SDK Changes]info [Changelog] This is a new package info [Changelog]
️️✔️ azure-resource-manager-schemas succeeded [Detail] [Expand]
️✔️Succeeded [Logs]Release - Generate from 978acdcf8de8c8f395efe6ceea871fba5faed85c. Schema Automation 14.0.0command .sdkauto/initScript.sh ../azure-resource-manager-schemas_tmp/initInput.json ../azure-resource-manager-schemas_tmp/initOutput.json warn File azure-resource-manager-schemas_tmp/initOutput.json not found to read command .sdkauto/generateScript.sh ../azure-resource-manager-schemas_tmp/generateInput.json ../azure-resource-manager-schemas_tmp/generateOutput.json
️✔️containerstorage [View full logs] [Release Schema Changes]
Generated ApiView
| Language | Package Name | ApiView Link |
|---|---|---|
| Go | sdk/resourcemanager/containerstorage/armcontainerstorage | https://apiview.dev/Assemblies/Review/39123ffa4c3f44e5ba4b5fd2559b44a4 |
Hi @aarongalang! The automation detected breaking changes in this pull request. As a result, it added the BreakingChangeReviewRequired label.
You cannot proceed with merging this PR until you complete one of the following action items:
ACTION ITEM ALTERNATIVE A: Fix the breaking change.
Please consult the documentation provided in the relevant validation failures.
ACTION ITEM ALTERNATIVE B: Request approval.
Alternatively, if you cannot fix the breaking changes, then you can request an approval for them. Please follow the process described in the High-level Breaking Change Process doc.
ACTION ITEM ALTERNATIVE C: Report false positive.
If you think there are no breaking changes, i.e. the validation should pass yet it fails, then proceed as explained in ACTION ITEM ALTERNATIVE B.
This applies even if the breaking change tool fails with internal runtime error. In such case a manual breaking change review is necessary.
Hi @aarongalang! 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.
@aarongalang: Pipeline "specs - typespec - pr" is working for your PR now. It looks like you need to update your TypeSpec to be formatted correctly, and also update your autorest using the latest TypeSpec package versions (from the root package-lock.json).
You can stage these changes on your dev machine with a single command. tsv is the command-line tool for TypeSpecValidation.
$ npx tsv specification/containerstorage/ContainerStorage.Management
@aarongalang: Pipeline "specs - typespec - pr" is working for your PR now. It looks like you need to update your TypeSpec to be formatted correctly, and also update your autorest using the latest TypeSpec package versions (from the root
package-lock.json).You can stage these changes on your dev machine with a single command.
tsvis the command-line tool for TypeSpecValidation.$ npx tsv specification/containerstorage/ContainerStorage.Management
I seem to be missing a dist folder to run the command. Is there a step I missed to get the TypeSpecValidation.js file? I tried rerouting it to use the one in TypeSpecValidation/src, but it didn't seem to work.
@aarongalang
Aaron Galang FTE: Pipeline "specs - typespec - pr" is working for your PR now. It looks like you need to update your TypeSpec to be formatted correctly, and also update your autorest using the latest TypeSpec package versions (from the root `package-lock.json`).You can stage these changes on your dev machine with a single command.
tsvis the command-line tool for TypeSpecValidation.$ npx tsv specification/containerstorage/ContainerStorage.ManagementI seem to be missing a dist folder to run the command. Is there a step I missed to get the TypeSpecValidation.js file? I tried rerouting it to use the one in TypeSpecValidation/src, but it didn't seem to work.
You need to run npm ci in the repo root to build the tool and install dependencies. Have you tried this yet?
@mikeharder how does npx tsv work? I've tried using it to format my changes, but while it did cause specs - typespec - pr check to pass, it erased the x-ms-example references, and caused the model validations check to fail. When I readded the example references, the specs-typespec-pr check failed again
Does it just generate the typespec again and compare them? Because we have had to make some manual changes to our containerstorage.json typespec
@mikeharder Mike Harder FTE how does npx tsv work? I've tried using it to format my changes, but while it did cause specs - typespec - pr check to pass, it erased the x-ms-example references, and caused the model validations check to fail. When I readded the example references, the specs-typespec-pr check failed again
Does it just generate the typespec again and compare them? Because we have had to make some manual changes to our containerstorage.json typespec
The tsv tool currently does 4 things:
- Verifies your spec is using the root
package.json - Runs
tsp compile . --warn-as-erroron your spec- Any compiler errors (or warnings promoted to errors) cause validation to fail
- Regenerates autorest (using the
@azure-tools/typespec-autorestpackage)
- Runs
tsp formaton your spec, which formats your source code per the repo config - Runs
git diff. Any changes files cause validation to fail.
If you are saying that you need to manually change your generated autorest, this is currently not supported for TypeSpec specs in this repo. We require the checked-in autorest to match what is generated by the version of @azure-tools/typespec-autorest in the root package.json.
Why do you think you need to manually change your generated autorest?
@mikeharder Mike Harder FTE how does npx tsv work? I've tried using it to format my changes, but while it did cause specs - typespec - pr check to pass, it erased the x-ms-example references, and caused the model validations check to fail. When I readded the example references, the specs-typespec-pr check failed again Does it just generate the typespec again and compare them? Because we have had to make some manual changes to our containerstorage.json typespec
The
tsvtool currently does 4 things:
Verifies your spec is using the root
package.jsonRuns
tsp compile . --warn-as-erroron your spec
- Any compiler errors (or warnings promoted to errors) cause validation to fail
- Regenerates autorest (using the
@azure-tools/typespec-autorestpackage)Runs
tsp formaton your spec, which formats your source code per the repo configRuns
git diff. Any changes files cause validation to fail.If you are saying that you need to manually change your generated autorest, this is currently not supported for TypeSpec specs in this repo. We require the checked-in autorest to match what is generated by the version of
@azure-tools/typespec-autorestin the root package.json.Why do you think you need to manually change your generated autorest?
mostly to fix some minor LintDiff errors, where one of the responses doesn't have the word "update" in its description. According to the check, the last version had the same error. There is also the AssignmentId parameter that is of format arm-id, and type string. arm-id needs to be an object, so I have to change it manually. However, when I use npx tsv to generate the autorest, the examples and example references are not generated, causing XMS_EXAMPLE_NOTFOUND_ERRORs. But when I generate the examples (and as a result add x-ms-example references to the autorest), the specs-typespec-pr check fails... Am I missing something that's causing this problem?
on a side note: when generating the autorest, should it always be done with npx tsv, rather than tsp compile? should the autorest always be generated in the azure-rest-api-specs repo? or is it fine to generate it in our own repository (with our own package.json)?
There is an avocado error in the pr due to the default version not having path /subscriptions/{}/resourceGroups/{}/providers/Microsoft.ContainerStorage/pools/{}/volumeSnapshots
However, we have depreciated "volumeSnapshots" in favor of "snapshots". could the avocado-approved label added to suppress this error?
There are a few lint errors on the PUT response schema. It's currently failing because the the description for response code 200 does not contain the word "update". Similarly, in the Delete responses, instead of just have 202 Delete accepted error, it has both the 200 and 202 error.
These responses are from @azure-tools/typespec-azure-resource-manager. I could fix those errors by copying the operations from the package code, and then just changing the description and deleting the extra response, but it feels overkill to do so, and wouldn't be updated when azure-tools is. If possible I would like for this error to be suppressed https://www.npmjs.com/package/@azure-tools/typespec-azure-resource-manager?activeTab=code
I've left in version 2023-03-01 for the sake of fixing breaking changes, however my team would like to remove this version. This is a test version and is not currently being used by anyone, so we don't want to have to support it.
Would it be fine to remove it in here or in a subsequent pr?
Hi @aarongalang! Your PR has some issues. Please fix the CI issues, if present, in following order: Avocado, SemanticValidation, ModelValidation, Breaking Change, LintDiff.
| 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 |
If you need further help, please reach out on the Teams channel aka.ms/azsdk/support/specreview-channel.
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.
@konrad-jamrozik: @aarongalang claims he does not have permissions to remove the ARMChangesRequested label, as instructed by this comment:
https://github.com/Azure/azure-rest-api-specs/pull/24749#issuecomment-1650513357
Is there something he should do to get the necessary permissions to remove the label?
I've removed it for @aarongalang
I've removed it for @aarongalang
@croomes: Are PR authors supposed to be able to remove the label themselves?
How do I fix the Service API Readiness Test?
@aarongalang The Staging checks are not required for check-in, you are currently blocked for needing an approval
/azp run
No commit pushedDate could be found for PR 24749 in repo Azure/azure-rest-api-specs
@aarongalang The Staging checks are not required for check-in, you are currently blocked for needing an approval
Where do I go to ask for approval?
@aarongalang The Staging checks are not required for check-in, you are currently blocked for needing an approval
Where do I go to ask for approval?
Please refer to this diagram:
- https://github.com/Azure/azure-rest-api-specs/pull/25071
Specifically, you need to add the MergeRequested label
