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

[Recoveryservicesbackup] Add LRO to ProtectionContainers PUT #25829

Merged
merged 1 commit into from
Sep 25, 2023

Conversation

HarveyLink
Copy link
Member

ARM (Control Plane) API Specification Update Pull Request

This PR is a fix for Azure/azure-sdk-for-net#37904

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, per this wiki doc.)
  • 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

@openapi-pipeline-app
Copy link

openapi-pipeline-app bot commented Sep 18, 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).

@openapi-pipeline-app
Copy link

openapi-pipeline-app bot commented Sep 18, 2023

Swagger Validation Report

️❌BreakingChange: 1 Errors, 0 Warnings failed [Detail]
compared swaggers (via Oad v0.10.4)] new version base version
bms.json 2023-04-01(118cef6) 2023-04-01(main)
Rule Message
1044 - XmsLongRunningOperationChanged The new version has a different 'x-ms-longrunning-operation' value than the previous one.
New: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L3079:7
Old: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L3079:7
️️✔️Breaking Change(Cross-Version) succeeded [Detail] [Expand]
There are no breaking changes.
️️✔️CredScan succeeded [Detail] [Expand]
There is no credential detected.
️⚠️LintDiff: 0 Warnings warning [Detail]
compared tags (via openapi-validator v2.1.4) new version base version
package-2023-04 package-2023-04(118cef6) package-2023-04(main)

The following errors/warnings exist before current PR submission:

Only 30 items are listed, please refer to log for more details.

Rule Message
ImplementPrivateEndpointAPIs The private endpoint API: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateLinkResources is missing.
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L20
ImplementPrivateEndpointAPIs The private endpoint API: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateEndpointConnections is missing.
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L20
PathResourceTypeNameCamelCase Resource type naming must follow camel case. Path: '/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L21
ParametersOrder The parameters:vaultName,resourceGroupName should be kept in the same order as they present in the path.
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L22
ParametersOrder The parameters:vaultName,resourceGroupName should be kept in the same order as they present in the path.
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L65
ParametersOrder The parameters:vaultName,resourceGroupName should be kept in the same order as they present in the path.
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L117
PathResourceTypeNameCamelCase Resource type naming must follow camel case. Path: '/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupPreValidateProtection'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L164
RequiredDefaultResponse The response is defined but without a default error response implementation.Consider adding it.'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L194
PathResourceTypeNameCamelCase Resource type naming must follow camel case. Path: '/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupStatus'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L209
RequiredDefaultResponse The response is defined but without a default error response implementation.Consider adding it.'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L239
PathResourceTypeNameCamelCase Resource type naming must follow camel case. Path: '/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupValidateFeatures'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L254
RequiredDefaultResponse The response is defined but without a default error response implementation.Consider adding it.'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L284
PathResourceTypeNameCamelCase Resource type naming must follow camel case. Path: '/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/backupProtectionIntent/{intentObjectName}'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L299
ParametersOrder The parameters:vaultName,resourceGroupName,fabricName,intentObjectName should be kept in the same order as they present in the path.
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L300
RequiredDefaultResponse The response is defined but without a default error response implementation.Consider adding it.'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L337
ParametersOrder The parameters:vaultName,resourceGroupName,fabricName,intentObjectName should be kept in the same order as they present in the path.
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L351
RequiredDefaultResponse The response is defined but without a default error response implementation.Consider adding it.'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L397
ParametersOrder The parameters:vaultName,resourceGroupName,fabricName,intentObjectName should be kept in the same order as they present in the path.
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L411
DeleteOperationResponses The delete operation is defined without a 200 or 204 error response implementation,please add it.'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L448
RequiredDefaultResponse The response is defined but without a default error response implementation.Consider adding it.'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L448
PathResourceTypeNameCamelCase Resource type naming must follow camel case. Path: '/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectionIntents'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L460
ParametersOrder The parameters:vaultName,resourceGroupName should be kept in the same order as they present in the path.
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L461
RequiredDefaultResponse The response is defined but without a default error response implementation.Consider adding it.'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L498
PathResourceTypeNameCamelCase Resource type naming must follow camel case. Path: '/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupUsageSummaries'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L517
ParametersOrder The parameters:vaultName,resourceGroupName should be kept in the same order as they present in the path.
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L518
RequiredDefaultResponse The response is defined but without a default error response implementation.Consider adding it.'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L555
RequiredDefaultResponse The response is defined but without a default error response implementation.Consider adding it.'
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L589
ParametersOrder The parameters:vaultName,resourceGroupName should be kept in the same order as they present in the path.
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L609
ParametersOrder The parameters:vaultName,resourceGroupName should be kept in the same order as they present in the path.
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L652
ParametersOrder The parameters:vaultName,resourceGroupName should be kept in the same order as they present in the path.
Location: Microsoft.RecoveryServices/stable/2023-04-01/bms.json#L704
️️✔️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?

@openapi-pipeline-app
Copy link

openapi-pipeline-app bot commented Sep 18, 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/recoveryservices/armrecoveryservicesbackup - Approved - 4.0.0
+	Operation `*ProtectionContainersClient.Register` has been changed to LRO, use `*ProtectionContainersClient.BeginRegister` instead.
azure-sdk-for-js - @azure/arm-recoveryservicesbackup - Approved - 12.0.0
+	Removed operation ProtectionContainers.register
azure-sdk-for-python-track2 - track2_azure-mgmt-recoveryservicesbackup - Approved - 7.0.0
+	Renamed operation ProtectionContainersOperations.register to ProtectionContainersOperations.begin_register
️️✔️ azure-sdk-for-net-track2 succeeded [Detail] [Expand]
️⚠️ azure-sdk-for-python-track2 warning [Detail]
  • ⚠️Warning [Logs]Release - Generate from 15042f5. 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: 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.6.7 -> 10.1.0
    cmderr	[automation_generate.sh] npm notice Changelog: <https://github.com/npm/cli/releases/tag/v10.1.0>
    cmderr	[automation_generate.sh] npm notice Run `npm install -g npm@10.1.0` to update!
    cmderr	[automation_generate.sh] npm notice
  • ️✔️track2_azure-mgmt-recoveryservicesbackup [View full logs]  [Release SDK Changes] Breaking Change Detected
    info	[Changelog] ### Features Added
    info	[Changelog]
    info	[Changelog]   - Model BackupStatusResponse has a new parameter acquire_storage_account_lock
    info	[Changelog]   - Model BackupStatusResponse has a new parameter protected_items_count
    info	[Changelog]
    info	[Changelog] ### Breaking Changes
    info	[Changelog]
    info	[Changelog]   - Renamed operation ProtectionContainersOperations.register to ProtectionContainersOperations.begin_register
️🔄 azure-sdk-for-java inProgress [Detail]
️️✔️ azure-sdk-for-go succeeded [Detail] [Expand]
  • ️✔️Succeeded [Logs]Release - Generate from 15042f5. 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/recoveryservices/armrecoveryservicesbackup [View full logs]  [Release SDK Changes] Breaking Change Detected
    info	[Changelog] ### Breaking Changes
    info	[Changelog]
    info	[Changelog] - Operation `*ProtectionContainersClient.Register` has been changed to LRO, use `*ProtectionContainersClient.BeginRegister` instead.
    info	[Changelog]
    info	[Changelog] Total 1 breaking change(s), 0 additive change(s).
️️✔️ azure-sdk-for-js succeeded [Detail] [Expand]
  • ️✔️Succeeded [Logs]Release - Generate from 15042f5. 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-recoveryservicesbackup [View full logs]  [Release SDK Changes] Breaking Change Detected
    info	[Changelog] **Features**
    info	[Changelog]
    info	[Changelog]   - Added operation ProtectionContainers.beginRegister
    info	[Changelog]   - Added operation ProtectionContainers.beginRegisterAndWait
    info	[Changelog]   - Interface BackupStatusResponse has a new optional parameter acquireStorageAccountLock
    info	[Changelog]   - Interface BackupStatusResponse has a new optional parameter protectedItemsCount
    info	[Changelog]   - Interface ProtectionContainersRegisterOptionalParams has a new optional parameter resumeFrom
    info	[Changelog]   - Interface ProtectionContainersRegisterOptionalParams has a new optional parameter updateIntervalInMs
    info	[Changelog]
    info	[Changelog] **Breaking Changes**
    info	[Changelog]
    info	[Changelog]   - Removed operation ProtectionContainers.register
️⚠️ azure-resource-manager-schemas warning [Detail]
  • ⚠️Warning [Logs]Release - Generate from 15042f5. 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] npm notice
    cmderr	[initScript.sh] npm notice New major version of npm available! 8.19.4 -> 10.1.0
    cmderr	[initScript.sh] npm notice Changelog: <https://github.com/npm/cli/releases/tag/v10.1.0>
    cmderr	[initScript.sh] npm notice Run `npm install -g npm@10.1.0` 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
    warn	No file changes detected after generation
  • ️✔️recoveryservicesbackup [View full logs
️❌ azure-powershell failed [Detail]
  • Pipeline Framework Failed [Logs]Release - Generate from 15042f5. 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.recoveryservicesbackup.DefaultTag [View full logs
    error	Fatal error: SSL error: syscall failure: Broken pipe
    error	The following packages are still pending:
    error		Az.recoveryservicesbackup.DefaultTag
Posted by Swagger Pipeline | How to fix these errors?

@openapi-pipeline-app
Copy link

openapi-pipeline-app bot commented Sep 18, 2023

Generated ApiView

Language Package Name ApiView Link
Go sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup https://apiview.dev/Assemblies/Review/18a3ce547632440c877bdeca9516b36b
Java azure-resourcemanager-recoveryservicesbackup https://apiview.dev/Assemblies/Review/7e427902744a44fdb710ab005214e32a
.Net Azure.ResourceManager.RecoveryServicesBackup https://apiview.dev/Assemblies/Review/0d1e7c3888e6428eb055b86f7b01a774

@AzureRestAPISpecReview AzureRestAPISpecReview added ARMChangesRequested <valid label in PR review process>add this label when require changes after ARM review ARMReview BreakingChangeReviewRequired <valid label in PR review process>add this label when breaking change review is required ReadyForApiTest <valid label in PR review process>add this label when swagger and service APIs are ready for test resource-manager labels Sep 18, 2023
@openapi-workflow-bot
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.

@live1206
Copy link
Member

live1206 commented Sep 18, 2023

@ishanjindalms @ankur741999 @ramat-msft
We got a customer reported issue in Azure/azure-sdk-for-net#37904, and we did a temporary fix on .NET SDK side. But the root cause is LRO declaration missing in the swagger definition, so we create this PR to fix it.

Could someone from recovery service team to follow up with this PR? Thanks.

@hiaga
Copy link
Member

hiaga commented Sep 19, 2023

this is a minor correctness fix for LRO for registering a backup container. looks good to me.

@hiaga hiaga removed their request for review September 19, 2023 03:54
@JeffreyRichter JeffreyRichter added the Approved-BreakingChange DO NOT USE! OBSOLETE label. See https://github.com/Azure/azure-sdk-tools/issues/6374 label Sep 20, 2023
@live1206 live1206 removed the ARMChangesRequested <valid label in PR review process>add this label when require changes after ARM review label Sep 21, 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 Sep 21, 2023
@visingla-ms visingla-ms added the ARMSignedOff <valid label in PR review process>add this label when ARM approve updates after review label Sep 22, 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 Sep 22, 2023
@Alancere Alancere added the Approved-SdkBreakingChange-Go Approve the breaking change tracking for azure-sdk-for-go label Sep 25, 2023
@live1206
Copy link
Member

/pr RequestMerge

@visingla-ms visingla-ms merged commit 15042f5 into main Sep 25, 2023
29 of 30 checks passed
@visingla-ms visingla-ms deleted the fix37904 branch September 25, 2023 12:51
@openapi-pipeline-app
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-BreakingChange DO NOT USE! OBSOLETE label. See https://github.com/Azure/azure-sdk-tools/issues/6374 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 BreakingChangeReviewRequired <valid label in PR review process>add this label when breaking change review is required CI-BreakingChange-Go CI-BreakingChange-JavaScript FixS360 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.

10 participants