azure-rest-api-specs
azure-rest-api-specs copied to clipboard
[Hub Generated] Review request for Microsoft.ContainerRegistry to add version preview/2023-01-01-preview
This is a PR generated at OpenAPI Hub. You can view your work branch via this link.
ARM API Information (Control Plane)
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
- [x] new API version
- [ ] update existing version for new feature
- [ ] 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. A: Deploy feature in canary regions by end of November 2022. Deploy feature in all public regions by Jan 2023.
-
When do you expect to publish the swagger? Please provide date or, the the date is not yet available, the month. A: End of November 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. A: This PR is for review only, please do NOT merge or automatically refresh the SDKs yet.
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:
-
[x] 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 -[ ] 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.
-
[ ] 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, @AntonioVT Thanks for your PR. I am workflow bot for review process. Here are some small tips.
Swagger Validation Report
️️✔️
BreakingChange succeeded [Detail] [Expand]
There are no breaking changes.
️⚠️
Breaking Change(Cross-Version): 61 Warnings warning [Detail]
compared swaggers (via Oad v0.10.2)] | new version | base version |
---|---|---|
containerregistry.json | 2023-01-01-preview(ed97cf5) | 2022-12-01(main) |
containerregistry.json | 2023-01-01-preview(ed97cf5) | 2022-02-01-preview(main) |
The following breaking changes are detected by comparison with the latest preview version:
Only 28 items are listed, please refer to log for more details.
️️✔️
CredScan succeeded [Detail] [Expand]
There is no credential detected.
️❌
LintDiff: 6 Errors, 12 Warnings failed [Detail]
compared tags (via openapi-validator v2.0.0) | new version | base version |
---|---|---|
package-2023-01-preview | package-2023-01-preview(ed97cf5) | default(main) |
[must fix]The following errors/warnings are introduced by current PR:
Rule | Message | Related RPC [For API reviewers] |
---|---|---|
LroPatch202 |
The async patch operation should return 202. Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L261 |
RPC-Patch-V1-06, RPC-Async-V1-08 |
ConsistentPatchProperties |
The property 'properties.syncProperties' in the request body either not apppear in the resource model or has the wrong level. Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L538 |
RPC-Patch-V1-03 |
LroPatch202 |
The async patch operation should return 202. Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L543 |
RPC-Patch-V1-06, RPC-Async-V1-08 |
LroPatch202 |
The async patch operation should return 202. Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L876 |
RPC-Patch-V1-06, RPC-Async-V1-08 |
TrackedResourcePatchOperation |
Tracked resource 'ExportPipeline' must have patch operation that at least supports the update of tags. Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L957 |
RPC-Patch-V1-03 |
TrackedResourcePatchOperation |
Tracked resource 'ImportPipeline' must have patch operation that at least supports the update of tags. Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L1229 |
RPC-Patch-V1-03 |
:warning: LocationMustHaveXmsMutability | Property location must have 'x-ms-mutability':['read', 'create'] extension defined.Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L4042 |
RPC-Put-V1-14 |
:warning: LocationMustHaveXmsMutability | Property location must have 'x-ms-mutability':['read', 'create'] extension defined.Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L4515 |
RPC-Put-V1-14 |
:warning: LocationMustHaveXmsMutability | Property location must have 'x-ms-mutability':['read', 'create'] extension defined.Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L4703 |
RPC-Put-V1-14 |
:warning: SchemaDescriptionOrTitle | Schema should have a description or title. Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L4798 |
|
:warning: SchemaDescriptionOrTitle | Schema should have a description or title. Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L4807 |
|
:warning: SchemaDescriptionOrTitle | Schema should have a description or title. Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L5176 |
|
:warning: SchemaDescriptionOrTitle | Schema should have a description or title. Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L5197 |
|
:warning: SchemaDescriptionOrTitle | Schema should have a description or title. Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L5218 |
|
:warning: SchemaDescriptionOrTitle | Schema should have a description or title. Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L5227 |
|
:warning: SchemaDescriptionOrTitle | Schema should have a description or title. Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L5236 |
|
:warning: EnumInsteadOfBoolean | Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum. Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L5551 |
|
:warning: EnumInsteadOfBoolean | Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum. Location: Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json#L5969 |
The following errors/warnings exist before current PR submission:
Only 28 items are listed, please refer to log for more details.
️⚠️
Avocado: 1 Warnings warning [Detail]
Rule | Message |
---|---|
:warning: MULTIPLE_API_VERSION | The default tag contains multiple API versions swaggers. readme: specification/containerregistry/resource-manager/readme.md tag: specification/containerregistry/resource-manager/readme.md#tag-package-2023-01-preview |
️❌
ApiReadinessCheck: 1 Errors, 0 Warnings failed [Detail]
Rule | Message |
---|---|
API Readiness check failed. Please make sure your service is deployed. |
"code: InvalidResourceType, message: The resource type 'operations' could not be found in the namespace 'Microsoft.ContainerRegistry' for api version '2023-01-01-preview'. The supported api-versions are '2017-03-01, 2017-06-01-preview, 2017-10-01, 2019-05-01, 2019-12-01-preview, 2020-11-01-preview, 2021-06-01-preview, 2021-08-01-preview, 2021-09-01, 2021-12-01-preview, 2022-02-01-preview'." |
️❌
~[Staging] ServiceAPIReadinessTest: 117 Errors, 0 Warnings failed [Detail]
Tag package-2023-01-preview; Prod region: Not deployed; Canary region: Deployed
Test run on region: eastus2euap; Operation coverage: total: 95, untested: 0, failed: 90, passed: 5
Service API Readiness Test failed. Check pipeline artifact for detail report.
Only 28 items are listed, please refer to log for more details.
Rule | Message |
---|---|
CLIENT_ERROR |
"statusCode: 404, errorCode: InvalidResourceType, errorMessage: The resource type 'checkNameAvailability' could not be found in the namespace 'Microsoft.ContainerRegistry' for api version '2023-01-01-preview'. The supported api-versions are '2016-06-27-preview, 2017-03-01, 2017-06-01-preview, 2017-10-01, 2019-05-01, 2019-12-01-preview, 2020-11-01-preview, 2021-06-01-preview, 2021-08-01-preview, 2021-09-01, 2021-12-01-preview, 2022-02-01-preview'." |
INVALID_RESPONSE_CODE |
"The swagger file does not define '404' response code" |
CLIENT_ERROR |
"statusCode: 400, errorCode: NoRegisteredProviderFound, errorMessage: No registered resource provider found for location 'eastus2euap' and API version '2023-01-01-preview' for type 'registries'. The supported api-versions are '2016-06-27-preview, 2017-03-01, 2017-10-01, 2019-05-01, 2019-12-01-preview, 2020-11-01-preview, 2021-06-01-preview, 2021-08-01-preview, 2021-09-01, 2021-12-01-preview, 2022-02-01-preview, 2017-06-01-preview'. The supported locations are 'westus, eastus, southcentralus, westeurope, northeurope, uksouth, ukwest, australiaeast, australiasoutheast, centralindia, koreacentral, francecentral, southafricanorth, uaenorth, eastasia, japaneast, japanwest, southeastasia, southindia, brazilsouth, canadaeast, canadacentral, centralus, eastus2, northcentralus, westcentralus, westus2, switzerlandnorth, uaecentral, switzerlandwest, germanywestcentral, brazilsoutheast, norwayeast, koreasouth, westus3, norwaywest, swedencentral, jioindiawest, jioindiacentral, australiacentral, qatarcentral, eastus2euap, centraluseuap'." |
INVALID_RESPONSE_CODE |
"The swagger file does not define '400' response code" |
CLIENT_ERROR |
"statusCode: 404, errorCode: InvalidResourceType, errorMessage: The resource type 'registries' could not be found in the namespace 'Microsoft.ContainerRegistry' for api version '2023-01-01-preview'. The supported api-versions are '2016-06-27-preview, 2017-03-01, 2017-10-01, 2019-05-01, 2019-12-01-preview, 2020-11-01-preview, 2021-06-01-preview, 2021-08-01-preview, 2021-09-01, 2021-12-01-preview, 2022-02-01-preview, 2017-06-01-preview'." |
INVALID_RESPONSE_CODE |
"The swagger file does not define '404' response code" |
CLIENT_ERROR |
"statusCode: 404, errorCode: ParentResourceNotFound, errorMessage: Can not perform requested operation on nested resource. Parent resource 'registry2m0ntv' not found." |
INVALID_RESPONSE_CODE |
"The swagger file does not define '404' response code" |
CLIENT_ERROR |
"statusCode: 404, errorCode: ParentResourceNotFound, errorMessage: Can not perform requested operation on nested resource. Parent resource 'registry2m0ntv' not found." |
CLIENT_ERROR |
"statusCode: 404, errorCode: InvalidResourceType, errorMessage: The resource type 'registries' could not be found in the namespace 'Microsoft.ContainerRegistry' for api version '2023-01-01-preview'. The supported api-versions are '2016-06-27-preview, 2017-03-01, 2017-10-01, 2019-05-01, 2019-12-01-preview, 2020-11-01-preview, 2021-06-01-preview, 2021-08-01-preview, 2021-09-01, 2021-12-01-preview, 2022-02-01-preview, 2017-06-01-preview'." |
INVALID_RESPONSE_CODE |
"The swagger file does not define '404' response code" |
CLIENT_ERROR |
"statusCode: 404, errorCode: ParentResourceNotFound, errorMessage: Can not perform requested operation on nested resource. Parent resource 'registry2m0ntv' not found." |
INVALID_RESPONSE_CODE |
"The swagger file does not define '404' response code" |
CLIENT_ERROR |
"statusCode: 404, errorCode: ResourceNotFound, errorMessage: The Resource 'Microsoft.ContainerRegistry/registries/registry2m0ntv' under resource group 'apiTest-PEUvXh-21727' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix" |
INVALID_RESPONSE_CODE |
"The swagger file does not define '404' response code" |
CLIENT_ERROR |
"statusCode: 404, errorCode: PatchResourceNotFound, errorMessage: The resource '/subscriptions/db5eb68e-73e2-4fa8-b18a-46cd1be4cce5/resourceGroups/apiTest-PEUvXh-21727/providers/Microsoft.ContainerRegistry/registries/registry2m0ntv' was not found when evaluating policies for a PATCH operation." |
INVALID_RESPONSE_CODE |
"The swagger file does not define '404' response code" |
CLIENT_ERROR |
"statusCode: 404, errorCode: ParentResourceNotFound, errorMessage: Can not perform requested operation on nested resource. Parent resource 'registry2m0ntv' not found." |
INVALID_RESPONSE_CODE |
"The swagger file does not define '404' response code" |
CLIENT_ERROR |
"statusCode: 404, errorCode: ParentResourceNotFound, errorMessage: Can not perform requested operation on nested resource. Parent resource 'registry2m0ntv' not found." |
CLIENT_ERROR |
"statusCode: 403, errorCode: LinkedAuthorizationFailed, errorMessage: The client has permission to perform action 'Microsoft.ContainerRegistry/registries/read' on scope '/subscriptions/db5eb68e-73e2-4fa8-b18a-46cd1be4cce5/resourceGroups/apiTest-PEUvXh-21727/providers/Microsoft.ContainerRegistry/registries/registry2m0ntv', however the linked subscription '10000000-0000-0000-0000-000000000000' was not found. " |
INVALID_RESPONSE_CODE |
"The swagger file does not define '403' response code" |
CLIENT_ERROR |
"statusCode: 404, errorCode: ParentResourceNotFound, errorMessage: Can not perform requested operation on nested resource. Parent resource 'registry2m0ntv' not found." |
INVALID_RESPONSE_CODE |
"The swagger file does not define '404' response code" |
CLIENT_ERROR |
"statusCode: 404, errorCode: ParentResourceNotFound, errorMessage: Can not perform requested operation on nested resource. Parent resource 'registry2m0ntv' not found." |
CLIENT_ERROR |
"statusCode: 404, errorCode: ParentResourceNotFound, errorMessage: Can not perform requested operation on nested resource. Parent resource 'registry2m0ntv' not found." |
CLIENT_ERROR |
"statusCode: 400, errorCode: NoRegisteredProviderFound, errorMessage: No registered resource provider found for location 'eastus2euap' and API version '2023-01-01-preview' for type 'registries/webhooks'. The supported api-versions are '2017-06-01-preview, 2017-10-01, 2019-05-01, 2019-12-01-preview, 2020-11-01-preview, 2021-06-01-preview, 2021-08-01-preview, 2021-09-01, 2021-12-01-preview, 2022-02-01-preview'. The supported locations are 'westcentralus, eastus, westeurope, southcentralus, westus, japaneast, northeurope, southeastasia, northcentralus, eastus2, westus2, brazilsouth, australiaeast, centralindia, koreacentral, southafricanorth, uaenorth, francecentral, centralus, canadaeast, canadacentral, uksouth, ukwest, australiasoutheast, eastasia, japanwest, southindia, switzerlandnorth, uaecentral, switzerlandwest, germanywestcentral, brazilsoutheast, norwayeast, koreasouth, westus3, norwaywest, swedencentral, jioindiawest, jioindiacentral, australiacentral, qatarcentral, centraluseuap, eastus2euap'." |
INVALID_RESPONSE_CODE |
"The swagger file does not define '400' response code" |
️️✔️
~[Staging] SwaggerAPIView succeeded [Detail] [Expand]
️️✔️
~[Staging] CadlAPIView 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-containerregistry - 11.0.0-beta.1+ Interface RunsListNextOptionalParams no longer has parameter filter + Interface RunsListNextOptionalParams no longer has parameter top
️🔄
azure-sdk-for-net-track2 inProgress [Detail]
️⚠️
azure-sdk-for-python-track2 warning [Detail]
⚠️
Warning [Logs]Release - Generate from 891dd18a70057c2fee388573117683e6d0081bda. 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.3.0 cmderr [automation_generate.sh] npm notice Changelog: <https://github.com/npm/cli/releases/tag/v9.3.0> cmderr [automation_generate.sh] npm notice Run `npm install -g [email protected]` to update! cmderr [automation_generate.sh] npm notice
️✔️
track2_azure-mgmt-containerregistry [View full logs] [Release SDK Changes]info [Changelog] ### Features Added info [Changelog] info [Changelog] - Added operation group CacheRulesOperations info [Changelog] - Added operation group CredentialSetsOperations
️⚠️
azure-sdk-for-java warning [Detail]
⚠️
Warning [Logs]Release - Generate from 891dd18a70057c2fee388573117683e6d0081bda. 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-containerregistry-generated [View full logs] [Release SDK Changes]
️️✔️
azure-sdk-for-go succeeded [Detail] [Expand]
️✔️
Succeeded [Logs]Release - Generate from 891dd18a70057c2fee388573117683e6d0081bda. 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/containerregistry/armcontainerregistry [View full logs] [Release SDK Changes]info [Changelog] ### Features Added info [Changelog] info [Changelog] - New type alias `CredentialHealthStatus` with values `CredentialHealthStatusHealthy`, `CredentialHealthStatusUnhealthy` info [Changelog] - New type alias `CredentialName` with values `CredentialNameCredential1` info [Changelog] - New function `NewCacheRulesClient(string, azcore.TokenCredential, *arm.ClientOptions) (*CacheRulesClient, error)` info [Changelog] - New function `*CacheRulesClient.BeginCreate(context.Context, string, string, string, CacheRule, *CacheRulesClientBeginCreateOptions) (*runtime.Poller[CacheRulesClientCreateResponse], error)` info [Changelog] - New function `*CacheRulesClient.BeginDelete(context.Context, string, string, string, *CacheRulesClientBeginDeleteOptions) (*runtime.Poller[CacheRulesClientDeleteResponse], error)` info [Changelog] - New function `*CacheRulesClient.Get(context.Context, string, string, string, *CacheRulesClientGetOptions) (CacheRulesClientGetResponse, error)` info [Changelog] - New function `*CacheRulesClient.NewListPager(string, string, *CacheRulesClientListOptions) *runtime.Pager[CacheRulesClientListResponse]` info [Changelog] - New function `*CacheRulesClient.BeginUpdate(context.Context, string, string, string, CacheRuleUpdateParameters, *CacheRulesClientBeginUpdateOptions) (*runtime.Poller[CacheRulesClientUpdateResponse], error)` info [Changelog] - New function `NewCredentialSetsClient(string, azcore.TokenCredential, *arm.ClientOptions) (*CredentialSetsClient, error)` info [Changelog] - New function `*CredentialSetsClient.BeginCreate(context.Context, string, string, string, CredentialSet, *CredentialSetsClientBeginCreateOptions) (*runtime.Poller[CredentialSetsClientCreateResponse], error)` info [Changelog] - New function `*CredentialSetsClient.BeginDelete(context.Context, string, string, string, *CredentialSetsClientBeginDeleteOptions) (*runtime.Poller[CredentialSetsClientDeleteResponse], error)` info [Changelog] - New function `*CredentialSetsClient.Get(context.Context, string, string, string, *CredentialSetsClientGetOptions) (CredentialSetsClientGetResponse, error)` info [Changelog] - New function `*CredentialSetsClient.NewListPager(string, string, *CredentialSetsClientListOptions) *runtime.Pager[CredentialSetsClientListResponse]` info [Changelog] - New function `*CredentialSetsClient.BeginUpdate(context.Context, string, string, string, CredentialSetUpdateParameters, *CredentialSetsClientBeginUpdateOptions) (*runtime.Poller[CredentialSetsClientUpdateResponse], error)` info [Changelog] - New struct `AuthCredential` info [Changelog] - New struct `CacheRule` info [Changelog] - New struct `CacheRuleProperties` info [Changelog] - New struct `CacheRuleUpdateParameters` info [Changelog] - New struct `CacheRuleUpdateProperties` info [Changelog] - New struct `CacheRulesClient` info [Changelog] - New struct `CacheRulesClientCreateResponse` info [Changelog] - New struct `CacheRulesClientDeleteResponse` info [Changelog] - New struct `CacheRulesClientListResponse` info [Changelog] - New struct `CacheRulesClientUpdateResponse` info [Changelog] - New struct `CacheRulesListResult` info [Changelog] - New struct `CredentialHealth` info [Changelog] - New struct `CredentialSet` info [Changelog] - New struct `CredentialSetListResult` info [Changelog] - New struct `CredentialSetProperties` info [Changelog] - New struct `CredentialSetUpdateParameters` info [Changelog] - New struct `CredentialSetUpdateProperties` info [Changelog] - New struct `CredentialSetsClient` info [Changelog] - New struct `CredentialSetsClientCreateResponse` info [Changelog] - New struct `CredentialSetsClientDeleteResponse` info [Changelog] - New struct `CredentialSetsClientListResponse` info [Changelog] - New struct `CredentialSetsClientUpdateResponse` info [Changelog] info [Changelog] Total 0 breaking change(s), 61 additive change(s).
️️✔️
azure-sdk-for-js succeeded [Detail] [Expand]
️✔️
Succeeded [Logs]Release - Generate from 891dd18a70057c2fee388573117683e6d0081bda. 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
- Only show 120 items here, please refer to log for details.
️✔️
@azure/arm-containerregistry [View full logs] [Release SDK Changes] Breaking Change Detectedinfo [Changelog] - Added Interface ScopeMapListResult info [Changelog] - Added Interface ScopeMapsCreateHeaders info [Changelog] - Added Interface ScopeMapsCreateOptionalParams info [Changelog] - Added Interface ScopeMapsDeleteHeaders info [Changelog] - Added Interface ScopeMapsDeleteOptionalParams info [Changelog] - Added Interface ScopeMapsGetOptionalParams info [Changelog] - Added Interface ScopeMapsListNextOptionalParams info [Changelog] - Added Interface ScopeMapsListOptionalParams info [Changelog] - Added Interface ScopeMapsUpdateHeaders info [Changelog] - Added Interface ScopeMapsUpdateOptionalParams info [Changelog] - Added Interface ScopeMapUpdateParameters info [Changelog] - Added Interface SoftDeletePolicy info [Changelog] - Added Interface StatusDetailProperties info [Changelog] - Added Interface SyncProperties info [Changelog] - Added Interface SyncUpdateProperties info [Changelog] - Added Interface Task info [Changelog] - Added Interface TaskRun info [Changelog] - Added Interface TaskRunRequest info [Changelog] - Added Interface TlsCertificateProperties info [Changelog] - Added Interface TlsProperties info [Changelog] - Added Interface Token info [Changelog] - Added Interface TokenCertificate info [Changelog] - Added Interface TokenCredentialsProperties info [Changelog] - Added Interface TokenListResult info [Changelog] - Added Interface TokenPassword info [Changelog] - Added Interface TokensCreateHeaders info [Changelog] - Added Interface TokensCreateOptionalParams info [Changelog] - Added Interface TokensDeleteHeaders info [Changelog] - Added Interface TokensDeleteOptionalParams info [Changelog] - Added Interface TokensGetOptionalParams info [Changelog] - Added Interface TokensListNextOptionalParams info [Changelog] - Added Interface TokensListOptionalParams info [Changelog] - Added Interface TokensUpdateHeaders info [Changelog] - Added Interface TokensUpdateOptionalParams info [Changelog] - Added Interface TokenUpdateParameters info [Changelog] - Added Interface Webhook info [Changelog] - Added Interface WebhooksCreateHeaders info [Changelog] - Added Interface WebhooksDeleteHeaders info [Changelog] - Added Interface WebhooksUpdateHeaders info [Changelog] - Added Type Alias ActivationStatus info [Changelog] - Added Type Alias AuditLogStatus info [Changelog] - Added Type Alias AzureADAuthenticationAsArmPolicyStatus info [Changelog] - Added Type Alias CacheRulesCreateResponse info [Changelog] - Added Type Alias CacheRulesGetResponse info [Changelog] - Added Type Alias CacheRulesListNextResponse info [Changelog] - Added Type Alias CacheRulesListResponse info [Changelog] - Added Type Alias CacheRulesUpdateResponse info [Changelog] - Added Type Alias CertificateType info [Changelog] - Added Type Alias ConnectedRegistriesCreateResponse info [Changelog] - Added Type Alias ConnectedRegistriesGetResponse info [Changelog] - Added Type Alias ConnectedRegistriesListNextResponse info [Changelog] - Added Type Alias ConnectedRegistriesListResponse info [Changelog] - Added Type Alias ConnectedRegistriesUpdateResponse info [Changelog] - Added Type Alias ConnectedRegistryMode info [Changelog] - Added Type Alias ConnectionState info [Changelog] - Added Type Alias CredentialHealthStatus info [Changelog] - Added Type Alias CredentialName info [Changelog] - Added Type Alias CredentialSetsCreateResponse info [Changelog] - Added Type Alias CredentialSetsGetResponse info [Changelog] - Added Type Alias CredentialSetsListNextResponse info [Changelog] - Added Type Alias CredentialSetsListResponse info [Changelog] - Added Type Alias CredentialSetsUpdateResponse info [Changelog] - Added Type Alias ExportPipelinesCreateResponse info [Changelog] - Added Type Alias ExportPipelinesGetResponse info [Changelog] - Added Type Alias ExportPipelinesListNextResponse info [Changelog] - Added Type Alias ExportPipelinesListResponse info [Changelog] - Added Type Alias ImportPipelinesCreateResponse info [Changelog] - Added Type Alias ImportPipelinesGetResponse info [Changelog] - Added Type Alias ImportPipelinesListNextResponse info [Changelog] - Added Type Alias ImportPipelinesListResponse info [Changelog] - Added Type Alias LogLevel info [Changelog] - Added Type Alias PipelineOptions info [Changelog] - Added Type Alias PipelineRunsCreateResponse info [Changelog] - Added Type Alias PipelineRunsGetResponse info [Changelog] - Added Type Alias PipelineRunsListNextResponse info [Changelog] - Added Type Alias PipelineRunsListResponse info [Changelog] - Added Type Alias PipelineRunSourceType info [Changelog] - Added Type Alias PipelineRunTargetType info [Changelog] - Added Type Alias PipelineSourceType info [Changelog] - Added Type Alias RegistriesGenerateCredentialsResponse info [Changelog] - Added Type Alias ScopeMapsCreateResponse info [Changelog] - Added Type Alias ScopeMapsGetResponse info [Changelog] - Added Type Alias ScopeMapsListNextResponse info [Changelog] - Added Type Alias ScopeMapsListResponse info [Changelog] - Added Type Alias ScopeMapsUpdateResponse info [Changelog] - Added Type Alias TlsStatus info [Changelog] - Added Type Alias TokenCertificateName info [Changelog] - Added Type Alias TokenPasswordName info [Changelog] - Added Type Alias TokensCreateResponse info [Changelog] - Added Type Alias TokensGetResponse info [Changelog] - Added Type Alias TokensListNextResponse info [Changelog] - Added Type Alias TokensListResponse info [Changelog] - Added Type Alias TokenStatus info [Changelog] - Added Type Alias TokensUpdateResponse info [Changelog] - Interface Policies has a new optional parameter azureADAuthenticationAsArmPolicy info [Changelog] - Interface Policies has a new optional parameter softDeletePolicy info [Changelog] - Interface RegistryUpdateParameters has a new optional parameter anonymousPullEnabled info [Changelog] - Added Enum KnownActivationStatus info [Changelog] - Added Enum KnownAuditLogStatus info [Changelog] - Added Enum KnownAzureADAuthenticationAsArmPolicyStatus info [Changelog] - Added Enum KnownCertificateType info [Changelog] - Added Enum KnownConnectedRegistryMode info [Changelog] - Added Enum KnownConnectionState info [Changelog] - Added Enum KnownCredentialHealthStatus info [Changelog] - Added Enum KnownCredentialName info [Changelog] - Added Enum KnownLogLevel info [Changelog] - Added Enum KnownPipelineOptions info [Changelog] - Added Enum KnownPipelineRunSourceType info [Changelog] - Added Enum KnownPipelineRunTargetType info [Changelog] - Added Enum KnownPipelineSourceType info [Changelog] - Added Enum KnownTlsStatus info [Changelog] - Added Enum KnownTokenCertificateName info [Changelog] - Added Enum KnownTokenPasswordName info [Changelog] - Added Enum KnownTokenStatus info [Changelog] - Added function getContinuationToken info [Changelog] info [Changelog] **Breaking Changes** info [Changelog] info [Changelog] - Interface RunsListNextOptionalParams no longer has parameter filter info [Changelog] - Interface RunsListNextOptionalParams no longer has parameter top
️⚠️
azure-resource-manager-schemas warning [Detail]
⚠️
Warning [Logs]Release - Generate from 891dd18a70057c2fee388573117683e6d0081bda. Schema Automation 14.0.0command .sdkauto/initScript.sh ../azure-resource-manager-schemas_tmp/initInput.json ../azure-resource-manager-schemas_tmp/initOutput.json cmderr [initScript.sh] WARN old lockfile cmderr [initScript.sh] npm WARN old lockfile The package-lock.json file was created with an old version of npm, cmderr [initScript.sh] npm WARN old lockfile so supplemental metadata must be fetched from the registry. cmderr [initScript.sh] npm WARN old lockfile cmderr [initScript.sh] npm WARN old lockfile This is a one-time fix-up, please be patient... cmderr [initScript.sh] npm WARN old lockfile 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
️✔️
containerregistry [View full logs] [Release Schema Changes]
️️✔️
azure-powershell succeeded [Detail] [Expand]
️✔️
Succeeded [Logs]Release - Generate from 891dd18a70057c2fee388573117683e6d0081bda. 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.ContainerRegistry [View full logs] [Release SDK Changes]
Generated ApiView
Language | Package Name | ApiView Link |
---|---|---|
Go | sdk/resourcemanager/containerregistry/armcontainerregistry | Create ApiView failed. Please ask PR assignee for help |
Java | azure-resourcemanager-containerregistry-generated | Create ApiView failed. Please ask PR assignee for help |
JavaScript | @azure/arm-containerregistry | https://apiview.dev/Assemblies/Review/76be4545bfa0413cbc3d3365472cf293 |
Hi, @AntonioVT your PR are labelled with WaitForARMFeedback. A notification email will be sent out shortly afterwards to notify ARM review board([email protected]).
"operationId": "CacheRules_GetAsync",
Why "_GetAsync" where the Get is never async?
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:69 in c1e346c. [](commit_id = c1e346c5d07aa1ae3da17058f330c913ec286e29, deletion_comment = False)
},
You should use these standard types like SubscriptionIdParameter, ResourceGroupNameParameter, ApiVersionParameter, LocationNameParameter etc. from common-types. See: https://github.com/Azure/azure-rest-api-specs/blob/main/specification/common-types/resource-management/v4/types.json.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:34 in c1e346c. [](commit_id = c1e346c5d07aa1ae3da17058f330c913ec286e29, deletion_comment = False)
"x-ms-long-running-operation": true
Add "x-ms-long-running-operation-options": { "final-state-via": "location" }.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:286 in c1e346c. [](commit_id = c1e346c5d07aa1ae3da17058f330c913ec286e29, deletion_comment = False)
"$ref": "#/definitions/CacheRule"
You can add "Azure-AsyncOperation" in "headers" of 201 response.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:149 in c1e346c. [](commit_id = c1e346c5d07aa1ae3da17058f330c913ec286e29, deletion_comment = False)
"x-ms-long-running-operation": true
You can add "Location" in "x-ms-long-running-operation-options" here.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:606 in c1e346c. [](commit_id = c1e346c5d07aa1ae3da17058f330c913ec286e29, deletion_comment = False)
"$ref": "#/definitions/CredentialSet"
You can add "Azure-AsyncOperation" in "headers" here in 201 response.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:740 in c1e346c. [](commit_id = c1e346c5d07aa1ae3da17058f330c913ec286e29, deletion_comment = False)
},
202 is async response. It should not have response schema. Only 200 should return it.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:858 in c1e346c. [](commit_id = c1e346c5d07aa1ae3da17058f330c913ec286e29, deletion_comment = False)
"x-ms-long-running-operation": true
You can add "Location" in "x-ms-long-running-operation-options" here.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:877 in c1e346c. [](commit_id = c1e346c5d07aa1ae3da17058f330c913ec286e29, deletion_comment = False)
},
202 is async response. It should not have response schema. Only 200 should return it.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:267 in c1e346c. [](commit_id = c1e346c5d07aa1ae3da17058f330c913ec286e29, deletion_comment = False)
"x-ms-long-running-operation": true
You can add "Location" in "x-ms-long-running-operation-options" here.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:1141 in c1e346c. [](commit_id = c1e346c5d07aa1ae3da17058f330c913ec286e29, deletion_comment = False)
}
You can add "Azure-AsyncOperation" in "headers" here in 201 response.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:1753 in c1e346c. [](commit_id = c1e346c5d07aa1ae3da17058f330c913ec286e29, deletion_comment = False)
"x-ms-long-running-operation": true
You can add "Location" in "x-ms-long-running-operation-options" here.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:3102 in c1e346c. [](commit_id = c1e346c5d07aa1ae3da17058f330c913ec286e29, deletion_comment = False)
"type": "array",
You should "m-ms-identifiers" for the arrays. See: https://github.com/Azure/autorest/blob/main/docs/extensions/readme.md#x-ms-identifiers. It actually helps in identifying what is the unique property of items in that array.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:3469 in c1e346c. [](commit_id = c1e346c5d07aa1ae3da17058f330c913ec286e29, deletion_comment = False)
"type": "array",
You should "m-ms-identifiers" for the arrays. See: https://github.com/Azure/autorest/blob/main/docs/extensions/readme.md#x-ms-identifiers. It actually helps in identifying what is the unique property of items in that array.
For example, ConnectedRegistry is a ProxyResource, so you can "id" in "x-ms-identifiers" value.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:3617 in e6e9992. [](commit_id = e6e9992d127d635fcb1fe867c1edae2d42b0e368, deletion_comment = False)
"$ref": "#/definitions/ProxyResource"
You should use ProxyResource type from common-types: https://github.com/Azure/azure-rest-api-specs/blob/main/specification/common-types/resource-management/v4/types.json.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:3633 in c1e346c. [](commit_id = c1e346c5d07aa1ae3da17058f330c913ec286e29, deletion_comment = False)
"ExportPipelineListResult": {
Why definitions/types such as ExportPipelineListResult are deleted. i didn't see any resource operations being deleted in this swagger spec, only new operations being added. Were these not used earlier?
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:3255 in e6e9992. [](commit_id = e6e9992d127d635fcb1fe867c1edae2d42b0e368, deletion_comment = True)
},
See if you need to use "x-ms-secret" for username and password string types. See: https://github.com/Azure/autorest/blob/main/docs/extensions/readme.md#x-ms-secret.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:4208 in c1e346c. [](commit_id = c1e346c5d07aa1ae3da17058f330c913ec286e29, deletion_comment = False)
Also check a couple of linter errors mentioning"XmsLongRunningOperationOptions".
Please ensure to respond feedbacks from the ARM API reviewer. When you are ready to continue the ARM API review, please remove ARMChangesRequested
Hi @AntonioVT, 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.
Hi @AntonioVT, 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 |
},
202 is async response. It should not have response schema. Only 200 should return it.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:267 in c1e346c. [](commit_id = c1e346c, deletion_comment = False)
We are returning 202 on PATCH operations on a proxy resource. When you update a proxy resource, the provisioning status will change to "Updating". We have a schema because the API returns the proxy resource properties, updated provisioning status, as well as the Location/Azure-AsyncOperation link in the headers to track the operation.
I see this pattern in other services as well. I think not returning it would be a breaking change for existing APIs and new APIs wouldn't be consistent. Is this not the expected behavior?
"type": "array",
You should "m-ms-identifiers" for the arrays. See: https://github.com/Azure/autorest/blob/main/docs/extensions/readme.md#x-ms-identifiers. It actually helps in identifying what is the unique property of items in that array.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:3469 in c1e346c. [](commit_id = c1e346c, deletion_comment = False)
The array in those scenarios is related to listing proxy resources. All proxy resources have the "id" property. According to doc x-ms-identifiers, "The default identifying property is id. You don't need to add this annotataion if there is the id property in the object model."
Therefore, we didn't include this annotation. Let me know if the documentation is not up to date and I'll include "id" in the array identifiers.
"ExportPipelineListResult": {
Why definitions/types such as ExportPipelineListResult are deleted. i didn't see any resource operations being deleted in this swagger spec, only new operations being added. Were these not used earlier?
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:3255 in e6e9992. [](commit_id = e6e9992, deletion_comment = True)
Definition/types such as ExportPipelineListResult haven't been deleted, they do exist. I believe Git and our swagger generation tool are not working nicely. The definitions/types might have moved from one line # to another, but they haven't been changed.
To clarify, this Preview API version does not delete any existing feature, we are just adding new features such as Cache Rules and Credential Sets APIs.
},
See if you need to use "x-ms-secret" for username and password string types. See: https://github.com/Azure/autorest/blob/main/docs/extensions/readme.md#x-ms-secret.
Refers to: specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2023-01-01-preview/containerregistry.json:4208 in c1e346c. [](commit_id = c1e346c, deletion_comment = False)
The values of these fields are not technically secrets. It's not sensitive data, such as a password/key/username, but they are references to a keyvault secret uri (ie: https://myvault.vault.azure.net/secrets/mysecret). I don't think this applies to our scenario, but let me know if you think otherwise.
--
Thanks for the feedback! I'll be waiting for your response.
I have reviewed the failed pipelines, here's my analysis.
Breaking Change(Cross-Version). on the left it's the failed rule, on the right the reason:
- RemovedDefinition: Removed SystemData, this definition is already referenced by "Resource" definition in types.json
- RemovedClientParameter: Removed ResourceGroupParameter, this definition exists in types.json -- We used "ResourceGroupParameter" and now we would use "ResourceGroupNameParameter".
- TypeFormatChanged: References changed to ../.../types.json#/definition/... or ../.../types.json#/parameter/...
- RemovedProperty: Locations and tags seems to be removed, however these properties are already defined in TrackResource under types.json
- XmsEnumChanged: (?) Seems that types.json lastModifiedByType / x-ms-enum is incorrectly defined. Name is "createdByType", but it could be wrong and it should be "lastModifiedByType".
We are returning 202 on PATCH operations on a proxy resource. When you update a proxy resource, the provisioning status will change to "Updating". We have a schema because the API returns the proxy resource properties, updated provisioning status, as well as the Location/Azure-AsyncOperation link in the headers to track the operation. I see this pattern in other services as well. I think not returning it would be a breaking change for existing APIs and new APIs wouldn't be consistent. Is this not the expected behavior?
I checked your existing APIs, and they are using 201 + response body, instead of 202 + response body. As per ARM RPC, 202 + no response body + location headers, is the guidance.
However, if you want to avoid stepping away from your existing APIs behavior, then, you can use 201 + response body, instead of introducing a new pattern of 202 + response body.
We are returning 202 on PATCH operations on a proxy resource. When you update a proxy resource, the provisioning status will change to "Updating". We have a schema because the API returns the proxy resource properties, updated provisioning status, as well as the Location/Azure-AsyncOperation link in the headers to track the operation. I see this pattern in other services as well. I think not returning it would be a breaking change for existing APIs and new APIs wouldn't be consistent. Is this not the expected behavior?
I checked your existing APIs, and they are using 201 + response body, instead of 202 + response body. As per ARM RPC, 202 + no response body + location headers, is the guidance.
However, if you want to avoid stepping away from your existing APIs behavior, then, you can use 201 + response body, instead of introducing a new pattern of 202 + response body.
I have reverted those changes. We are using the same existing API behavior, use 201 + response body for cache rule / cred set patch.