Skip to content
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

Stabilize identity, encryption, and scaling status in Redis Enterprise version: 2023-11-01 #26541

Conversation

jantache-microsoft
Copy link
Member

ARM (Control Plane) API Specification Update Pull Request

PR review workflow diagram

Please understand this diagram before proceeding. It explains how to get your PR approved & merged.

diagram

[1] ARM review queue (for merge queues, see [4])
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] https://aka.ms/azsdk/support/specreview-channel
[3] List of SDK breaking changes approvers in pinned Teams announcement
[4] 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!

  • New API version. (Such PR should have been generated with 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:

Breaking changes review (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.

ARM API changes review (Step 2)

  • If this PR is in purview of ARM review then automation will add the ARMReview label.
  • If you want to force ARM review, add the label yourself.
  • Proceed according to the diagram at the top of this comment.

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

Copy link

openapi-pipeline-app bot commented Nov 2, 2023

Next Steps to Merge

✔️ All automated merging requirements have been met! Refer to step 4 in the PR workflow diagram (even if your PR is for data plane, not ARM).

Copy link

openapi-pipeline-app bot commented Nov 2, 2023

Swagger Validation Report

️️✔️BreakingChange succeeded [Detail] [Expand]
There are no breaking changes.
️⚠️Breaking Change(Cross-Version): 14 Warnings warning [Detail]
compared swaggers (via Oad v0.10.4)] new version base version
redisenterprise.json 2023-11-01(8335ca5) 2023-07-01(main)
redisenterprise.json 2023-11-01(8335ca5) 2023-10-01-preview(main)

The following breaking changes are detected by comparison with the latest preview version:

Rule Message
⚠️ 1005 - RemovedPath The new version is missing a path that was found in the old version. Was path '/subscriptions/{subscriptionId}/providers/Microsoft.Cache/checkNameAvailability' removed or restructured?
Old: Microsoft.Cache/preview/2023-10-01-preview/redisenterprise.json#L1271:5
⚠️ 1006 - RemovedDefinition The new version is missing a definition that was found in the old version. Was 'SkuName' removed or renamed?
New: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L1272:3
Old: Microsoft.Cache/preview/2023-10-01-preview/redisenterprise.json#L1314:3
⚠️ 1006 - RemovedDefinition The new version is missing a definition that was found in the old version. Was 'CheckNameAvailabilityParameters' removed or renamed?
New: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L1272:3
Old: Microsoft.Cache/preview/2023-10-01-preview/redisenterprise.json#L1314:3
⚠️ 1006 - RemovedDefinition The new version is missing a definition that was found in the old version. Was 'systemData' removed or renamed?
New: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L1272:3
Old: Microsoft.Cache/preview/2023-10-01-preview/redisenterprise.json#L1314:3
⚠️ 1017 - ReferenceRedirection The '$ref' property points to different models in the old and new versions.
New: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L1277:9
Old: Microsoft.Cache/preview/2023-10-01-preview/redisenterprise.json#L1319:9
⚠️ 1019 - RemovedEnumValue The new version is removing enum value(s) 'Enterprise_E5, Enterprise_E200, Enterprise_E400' from the old version.
New: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L1277:9
Old: Microsoft.Cache/preview/2023-10-01-preview/redisenterprise.json#L1319:9
⚠️ 1033 - RemovedProperty The new version is missing a property found in the old version. Was 'systemData' renamed or removed?
New: common-types/resource-management/v2/privatelinks.json#L22:7
Old: common-types/resource-management/v3/privatelinks.json#L22:7
⚠️ 1033 - RemovedProperty The new version is missing a property found in the old version. Was 'systemData' renamed or removed?
New: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L1349:7
Old: Microsoft.Cache/preview/2023-10-01-preview/redisenterprise.json#L1378:7
⚠️ 1033 - RemovedProperty The new version is missing a property found in the old version. Was 'systemData' renamed or removed?
New: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L1518:7
Old: Microsoft.Cache/preview/2023-10-01-preview/redisenterprise.json#L1547:7
⚠️ 1033 - RemovedProperty The new version is missing a property found in the old version. Was 'systemData' renamed or removed?
New: common-types/resource-management/v2/privatelinks.json#L105:7
Old: common-types/resource-management/v3/privatelinks.json#L105:7
⚠️ 1033 - RemovedProperty The new version is missing a property found in the old version. Was 'systemData' renamed or removed?
New: common-types/resource-management/v2/types.json#L54:7
Old: common-types/resource-management/v3/types.json#L60:7
⚠️ 1033 - RemovedProperty The new version is missing a property found in the old version. Was 'systemData' renamed or removed?
New: common-types/resource-management/v2/types.json#L37:7
Old: common-types/resource-management/v3/types.json#L43:7
⚠️ 1033 - RemovedProperty The new version is missing a property found in the old version. Was 'systemData' renamed or removed?
New: common-types/resource-management/v2/types.json#L13:7
Old: common-types/resource-management/v3/types.json#L13:7
⚠️ 1033 - RemovedProperty The new version is missing a property found in the old version. Was 'systemData' renamed or removed?
️️✔️CredScan succeeded [Detail] [Expand]
There is no credential detected.
️⚠️LintDiff: 6 Warnings warning [Detail]
compared tags (via openapi-validator v2.1.6) new version base version
package-2023-11 package-2023-11(8335ca5) default(main)

[must fix]The following errors/warnings are introduced by current PR:

Rule Message Related RPC [For API reviewers]
⚠️ RequiredReadOnlySystemData The response of operation:'RedisEnterprise_Create' is defined without 'systemData'. Consider adding the systemData to the response.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L116
⚠️ RequiredReadOnlySystemData The response of operation:'RedisEnterprise_Update' is defined without 'systemData'. Consider adding the systemData to the response.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L175
⚠️ RequiredReadOnlySystemData The response of operation:'RedisEnterprise_Get' is defined without 'systemData'. Consider adding the systemData to the response.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L278
⚠️ RequiredReadOnlySystemData The response of operation:'Databases_Create' is defined without 'systemData'. Consider adding the systemData to the response.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L447
⚠️ RequiredReadOnlySystemData The response of operation:'Databases_Update' is defined without 'systemData'. Consider adding the systemData to the response.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L513
⚠️ RequiredReadOnlySystemData The response of operation:'Databases_Get' is defined without 'systemData'. Consider adding the systemData to the response.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L573


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 'clusterName' should be defined with a 'pattern' restriction.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L115
LroLocationHeader A 202 response should include an Location response header.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L220
DeleteResponseCodes Long-running delete operations must have responses with 202, 204 and default return codes. They also must have no other response codes.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L231
LroLocationHeader A 202 response should include an Location response header.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L264
ResourceNameRestriction The resource name parameter 'clusterName' should be defined with a 'pattern' restriction.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L400
ResourceNameRestriction The resource name parameter 'clusterName' should be defined with a 'pattern' restriction.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L446
ResourceNameRestriction The resource name parameter 'databaseName' should be defined with a 'pattern' restriction.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L446
LroLocationHeader A 202 response should include an Location response header.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L562
DeleteResponseCodes Long-running delete operations must have responses with 202, 204 and default return codes. They also must have no other response codes.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L617
LroLocationHeader A 202 response should include an Location response header.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L654
ResourceNameRestriction The resource name parameter 'clusterName' should be defined with a 'pattern' restriction.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L669
ResourceNameRestriction The resource name parameter 'databaseName' should be defined with a 'pattern' restriction.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L669
ResourceNameRestriction The resource name parameter 'clusterName' should be defined with a 'pattern' restriction.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L715
ResourceNameRestriction The resource name parameter 'databaseName' should be defined with a 'pattern' restriction.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L715
LroLocationHeader A 202 response should include an Location response header.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L765
ResourceNameRestriction The resource name parameter 'clusterName' should be defined with a 'pattern' restriction.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L777
ResourceNameRestriction The resource name parameter 'databaseName' should be defined with a 'pattern' restriction.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L777
PostResponseCodes 200 return code does not have a schema specified. LRO POST must have a 200 return code if only if the final response is intended to have a schema, if not the 200 return code must not be specified.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L778
LroLocationHeader A 202 response should include an Location response header.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L824
ResourceNameRestriction The resource name parameter 'clusterName' should be defined with a 'pattern' restriction.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L836
ResourceNameRestriction The resource name parameter 'databaseName' should be defined with a 'pattern' restriction.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L836
PostResponseCodes 200 return code does not have a schema specified. LRO POST must have a 200 return code if only if the final response is intended to have a schema, if not the 200 return code must not be specified.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L837
LroLocationHeader A 202 response should include an Location response header.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L883
ResourceNameRestriction The resource name parameter 'clusterName' should be defined with a 'pattern' restriction.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L895
GetCollectionOnlyHasValueAndNextLink Get endpoints for collections of resources must only have the value and nextLink properties in their model.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L924
ResourceNameRestriction The resource name parameter 'clusterName' should be defined with a 'pattern' restriction.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L940
ResourceNameRestriction The resource name parameter 'privateEndpointConnectionName' should be defined with a 'pattern' restriction.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L940
ProvisioningStateSpecifiedForLROPut 200 response schema in long running PUT operation is missing ProvisioningState property. A LRO PUT operations response schema must have ProvisioningState specified for the 200 and 201 status codes.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L984
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.Cache/stable/2023-11-01/redisenterprise.json#L984
DeleteResponseCodes Long-running delete operations must have responses with 202, 204 and default return codes. They also must have no other response codes.
Location: Microsoft.Cache/stable/2023-11-01/redisenterprise.json#L1037
️️✔️Avocado succeeded [Detail] [Expand]
Validation passes for Avocado.
️️✔️SwaggerAPIView 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).
️️✔️PR Summary succeeded [Detail] [Expand]
Validation passes for Summary.
️️✔️Automated merging requirements met succeeded [Detail] [Expand]
Posted by Swagger Pipeline | How to fix these errors?

Copy link

openapi-pipeline-app bot commented Nov 2, 2023

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-go - sdk/resourcemanager/redisenterprise/armredisenterprise - Approved - 2.0.0
+	Operation `*PrivateEndpointConnectionsClient.Delete` has been changed to LRO, use `*PrivateEndpointConnectionsClient.BeginDelete` instead.
azure-sdk-for-python-track2 - track2_azure-mgmt-redisenterprise - Approved - 2.0.0
+	Renamed operation PrivateEndpointConnectionsOperations.delete to PrivateEndpointConnectionsOperations.begin_delete
azure-sdk-for-js - @azure/arm-redisenterprisecache - Approved - 3.0.0
+	Removed operation PrivateEndpointConnections.delete
️️✔️ azure-sdk-for-net-track2 succeeded [Detail] [Expand]
️⚠️ azure-sdk-for-python-track2 warning [Detail]
  • ⚠️Warning [Logs]Release - Generate from 95c4286. SDK Automation 14.0.0
    command	sh scripts/automation_init.sh ../azure-sdk-for-python_tmp/initInput.json ../azure-sdk-for-python_tmp/initOutput.json
    cmderr	[automation_init.sh] WARNING: azure-devtools 1.2.1 does not provide the extra 'ci-tools'
    cmderr	[automation_init.sh] WARNING: azure-devtools 1.2.1 does not provide the extra 'ci-tools'
    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! 9.8.1 -> 10.2.3
    cmderr	[automation_generate.sh] npm notice Changelog: <https://github.com/npm/cli/releases/tag/v10.2.3>
    cmderr	[automation_generate.sh] npm notice Run `npm install -g npm@10.2.3` to update!
    cmderr	[automation_generate.sh] npm notice
  • ️✔️track2_azure-mgmt-redisenterprise [View full logs]  [Release SDK Changes] Breaking Change Detected
    info	[Changelog] ### Features Added
    info	[Changelog]
    info	[Changelog]   - Added operation DatabasesOperations.begin_flush
    info	[Changelog]   - Model Cluster has a new parameter encryption
    info	[Changelog]   - Model Cluster has a new parameter identity
    info	[Changelog]   - Model ClusterUpdate has a new parameter encryption
    info	[Changelog]   - Model ClusterUpdate has a new parameter identity
    info	[Changelog]
    info	[Changelog] ### Breaking Changes
    info	[Changelog]
    info	[Changelog]   - Renamed operation PrivateEndpointConnectionsOperations.delete to PrivateEndpointConnectionsOperations.begin_delete
️⚠️ azure-sdk-for-java warning [Detail]
️️✔️ azure-sdk-for-go succeeded [Detail] [Expand]
  • ️✔️Succeeded [Logs]Release - Generate from 95c4286. SDK Automation 14.0.0
    command	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/redisenterprise/armredisenterprise [View full logs]  [Release SDK Changes] Breaking Change Detected
    info	[Changelog] ### Breaking Changes
    info	[Changelog]
    info	[Changelog] - Operation `*PrivateEndpointConnectionsClient.Delete` has been changed to LRO, use `*PrivateEndpointConnectionsClient.BeginDelete` instead.
    info	[Changelog]
    info	[Changelog] ### Features Added
    info	[Changelog]
    info	[Changelog] - New value `ResourceStateScaling`, `ResourceStateScalingFailed` added to enum type `ResourceState`
    info	[Changelog] - New enum type `CmkIdentityType` with values `CmkIdentityTypeSystemAssignedIdentity`, `CmkIdentityTypeUserAssignedIdentity`
    info	[Changelog] - New enum type `ManagedServiceIdentityType` with values `ManagedServiceIdentityTypeNone`, `ManagedServiceIdentityTypeSystemAssigned`, `ManagedServiceIdentityTypeSystemAssignedUserAssigned`, `ManagedServiceIdentityTypeUserAssigned`
    info	[Changelog] - New function `*DatabasesClient.BeginFlush(context.Context, string, string, string, FlushParameters, *DatabasesClientBeginFlushOptions) (*runtime.Poller[DatabasesClientFlushResponse], error)`
    info	[Changelog] - New struct `ClusterPropertiesEncryption`
    info	[Changelog] - New struct `ClusterPropertiesEncryptionCustomerManagedKeyEncryption`
    info	[Changelog] - New struct `ClusterPropertiesEncryptionCustomerManagedKeyEncryptionKeyIdentity`
    info	[Changelog] - New struct `FlushParameters`
    info	[Changelog] - New struct `ManagedServiceIdentity`
    info	[Changelog] - New struct `UserAssignedIdentity`
    info	[Changelog] - New field `Identity` in struct `Cluster`
    info	[Changelog] - New field `Encryption` in struct `ClusterProperties`
    info	[Changelog] - New field `Identity` in struct `ClusterUpdate`
    info	[Changelog]
    info	[Changelog] Total 1 breaking change(s), 26 additive change(s).
️️✔️ azure-sdk-for-js succeeded [Detail] [Expand]
  • ️✔️Succeeded [Logs]Release - Generate from 95c4286. SDK Automation 14.0.0
    command	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
  • ️✔️@azure/arm-redisenterprisecache [View full logs]  [Release SDK Changes] Breaking Change Detected
    info	[Changelog] **Features**
    info	[Changelog]
    info	[Changelog]   - Added operation Databases.beginFlush
    info	[Changelog]   - Added operation Databases.beginFlushAndWait
    info	[Changelog]   - Added operation PrivateEndpointConnections.beginDelete
    info	[Changelog]   - Added operation PrivateEndpointConnections.beginDeleteAndWait
    info	[Changelog]   - Added Interface ClusterPropertiesEncryption
    info	[Changelog]   - Added Interface ClusterPropertiesEncryptionCustomerManagedKeyEncryption
    info	[Changelog]   - Added Interface ClusterPropertiesEncryptionCustomerManagedKeyEncryptionKeyIdentity
    info	[Changelog]   - Added Interface DatabasesFlushHeaders
    info	[Changelog]   - Added Interface DatabasesFlushOptionalParams
    info	[Changelog]   - Added Interface FlushParameters
    info	[Changelog]   - Added Interface ManagedServiceIdentity
    info	[Changelog]   - Added Interface PrivateEndpointConnectionsDeleteHeaders
    info	[Changelog]   - Added Interface UserAssignedIdentity
    info	[Changelog]   - Added Type Alias CmkIdentityType
    info	[Changelog]   - Added Type Alias ManagedServiceIdentityType
    info	[Changelog]   - Interface Cluster has a new optional parameter encryption
    info	[Changelog]   - Interface Cluster has a new optional parameter identity
    info	[Changelog]   - Interface ClusterUpdate has a new optional parameter encryption
    info	[Changelog]   - Interface ClusterUpdate has a new optional parameter identity
    info	[Changelog]   - Interface PrivateEndpointConnectionsDeleteOptionalParams has a new optional parameter resumeFrom
    info	[Changelog]   - Interface PrivateEndpointConnectionsDeleteOptionalParams has a new optional parameter updateIntervalInMs
    info	[Changelog]   - Added Enum KnownCmkIdentityType
    info	[Changelog]   - Added Enum KnownManagedServiceIdentityType
    info	[Changelog]   - Enum KnownResourceState has a new value Scaling
    info	[Changelog]   - Enum KnownResourceState has a new value ScalingFailed
    info	[Changelog]
    info	[Changelog] **Breaking Changes**
    info	[Changelog]
    info	[Changelog]   - Removed operation PrivateEndpointConnections.delete
️⚠️ azure-resource-manager-schemas warning [Detail]
  • ⚠️Warning [Logs]Release - Generate from 95c4286. Schema Automation 14.0.0
    command	.sdkauto/initScript.sh ../azure-resource-manager-schemas_tmp/initInput.json ../azure-resource-manager-schemas_tmp/initOutput.json
    cmderr	[initScript.sh]  notice
    cmderr	[initScript.sh] npm notice New major version of npm available! 8.19.4 -> 10.2.3
    cmderr	[initScript.sh] npm notice Changelog: <https://github.com/npm/cli/releases/tag/v10.2.3>
    cmderr	[initScript.sh] npm notice Run `npm install -g npm@10.2.3` to update!
    cmderr	[initScript.sh] npm notice
    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
  • ️✔️redisenterprise [View full logs]  [Release Schema Changes]
️❌ azure-powershell failed [Detail]
  • Pipeline Framework Failed [Logs]Release - Generate from 95c4286. SDK Automation 14.0.0
    command	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
    SSL error: syscall failure: Broken pipe
    Error: SSL error: syscall failure: Broken pipe
  • ⚠️Az.redisenterprise.DefaultTag [View full logs
    error	Fatal error: SSL error: syscall failure: Broken pipe
    error	The following packages are still pending:
    error		Az.redisenterprise.DefaultTag
Posted by Swagger Pipeline | How to fix these errors?

Copy link

openapi-pipeline-app bot commented Nov 2, 2023

Generated ApiView

Language Package Name ApiView Link
Go sdk/resourcemanager/redisenterprise/armredisenterprise https://apiview.dev/Assemblies/Review/2dc80a8fe8844e8e868a99937ad3a21f
.Net Azure.ResourceManager.RedisEnterprise https://apiview.dev/Assemblies/Review/67d02e5b817a421eb7cb9dc4686a4795
Java azure-resourcemanager-redisenterprise https://apiview.dev/Assemblies/Review/9d9da47daafb49b7836332c960672c0d
JavaScript @azure/arm-redisenterprisecache https://apiview.dev/Assemblies/Review/0051782f41184967992fae0537a6c24e

@jantache-microsoft
Copy link
Member Author

Question, I think v5 of common types recently got added. Should we be migrating to that? Is there an automated way to do that that I could make use of or would it by manual search/replace?

Copy link

openapi-workflow-bot bot commented Nov 2, 2023

Edit from author: this check has been broken for a while huh. I used OpenAPIHub 😢

Hi @jantache-microsoft! 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.

"type": "object",
"description": "Encryption-at-rest configuration for the cluster.",
"properties": {
"customerManagedKeyEncryption": {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"customerManagedKeyEncryption": { [](http://example.com/codeflow?start=7&length=38)

use the common definition here https://github.com/Azure/azure-rest-api-specs/blob/main/specification/common-types/resource-management/v5/customermanagedkeys.json

Copy link
Member Author

@jantache-microsoft jantache-microsoft Nov 3, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think using the common-types would unfortunately make for a worse spec than avoiding it.

E.g. the API currently does not use many properties

        "infrastructureEncryption": {
          "type": "string",
          "enum": [
            "enabled",
            "disabled"
          ],
          "x-ms-enum": {
            "name": "InfrastructureEncryption",
            "modelAsString": true
          },
          "description": "(Optional) Discouraged to include in resource definition. Only needed where it is possible to disable platform (AKA infrastructure) encryption. Azure SQL TDE is an example of this. Values are enabled and disabled."
        },
                "federatedClientId": {
                  "type": "string",
                  "format": "uuid",
                  "description": "application client identity to use for accessing key encryption key Url in a different tenant. Ex: f83c6b1b-4d34-47e4-bb34-9d83df58b540"
                },
                "delegatedIdentityClientId": {
                  "type": "string",
                  "format": "uuid",
                  "description": "delegated identity to use for accessing key encryption key Url. Ex: /subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/<resource group>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId. Mutually exclusive with identityType systemAssignedIdentity and userAssignedIdentity - internal use only."
                }

Also, the identity type in common types is apparently not x-ms-enum?

                "identityType": {
                  "type": "string",
                  "enum": [
                    "systemAssignedIdentity",
                    "userAssignedIdentity",
                    "delegatedResourceIdentity"
                  ],
                  "description": "The type of identity to use. Values can be systemAssignedIdentity, userAssignedIdentity, or delegatedResourceIdentity."
                },

Also, it seems valuable to have the custom comments in the custom definition. E.g. common-types states:

"description": "key encryption key Url, versioned or unversioned. Ex: https://contosovault.vault.azure.net/keys/contosokek/562a4bb76b524a1493a6afe8e536ee78 or https://contosovault.vault.azure.net/keys/contosokek."

Whereas for our service, due to a restriction imposed by the backing resource, only versioned keys are usable. So the custom type definition states:

"description": "Key encryption key Url, versioned only. Ex: https://contosovault.vault.azure.net/keys/contosokek/562a4bb76b524a1493a6afe8e536ee78"

Thoughts on just keeping it as-is?

Copy link
Member

@TimLovellSmith TimLovellSmith Nov 3, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds like a pretty good argument overall to me.

I suppose the x-ms-enum thing should be fixed in common-types.

Copy link
Member

@rkmanda rkmanda left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

:shipit:

@rkmanda rkmanda added the ARMChangesRequested <valid label in PR review process>add this label when require changes after ARM review label Nov 3, 2023
Copy link

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.

@openapi-workflow-bot openapi-workflow-bot bot removed the WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required label Nov 3, 2023
@jantache-microsoft jantache-microsoft removed the ARMChangesRequested <valid label in PR review process>add this label when require changes after ARM review label Nov 6, 2023
@openapi-workflow-bot openapi-workflow-bot bot added the WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required label Nov 6, 2023
@zizw123 zizw123 added the ARMSignedOff <valid label in PR review process>add this label when ARM approve updates after review label Nov 6, 2023
@openapi-workflow-bot openapi-workflow-bot bot removed the WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required label Nov 6, 2023
@Alancere Alancere added the Approved-SdkBreakingChange-Go Approve the breaking change tracking for azure-sdk-for-go label Nov 7, 2023
@jantache-microsoft
Copy link
Member Author

/pr RequestMerge

@TimLovellSmith TimLovellSmith merged commit 95c4286 into main Nov 7, 2023
29 of 31 checks passed
@TimLovellSmith TimLovellSmith deleted the jantache-microsoft-redisenterprise-Microsoft.Cache-2023-11-01 branch November 7, 2023 19:06
Copy link

Swagger pipeline restarted successfully, please wait for status update in this comment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Approved-SdkBreakingChange-Go Approve the breaking change tracking for azure-sdk-for-go Approved-SdkBreakingChange-JavaScript Approved-SdkBreakingChange-Python ARMReview ARMSignedOff <valid label in PR review process>add this label when ARM approve updates after review CI-BreakingChange-Go CI-BreakingChange-JavaScript CI-MissingBaseCommit new-api-version ReadyForApiTest <valid label in PR review process>add this label when swagger and service APIs are ready for test resource-manager
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants