Skip to content

[PS] Migrate StackHCI module to autorest v4#29566

Merged
Pan-Qi merged 17 commits into
Azure:mainfrom
khang-11:recreate/pr-28363
May 25, 2026
Merged

[PS] Migrate StackHCI module to autorest v4#29566
Pan-Qi merged 17 commits into
Azure:mainfrom
khang-11:recreate/pr-28363

Conversation

@khang-11
Copy link
Copy Markdown
Contributor

Description

Preannouncement PR:

Mandatory Checklist

  • SHOULD update ChangeLog.md file(s) appropriately
    • Update src/{{SERVICE}}/{{SERVICE}}/ChangeLog.md.
      • A snippet outlining the change(s) made in the PR should be written under the ## Upcoming Release header in the past tense.
    • Should not change ChangeLog.md if no new release is required, such as fixing test case only.
  • SHOULD regenerate markdown help files if there is cmdlet API change. Instruction
  • SHOULD have proper test coverage for changes in pull request.
  • SHOULD NOT adjust version of module manually in pull request

Copilot AI review requested due to automatic review settings May 12, 2026 03:33
@azure-client-tools-bot-prd
Copy link
Copy Markdown

Thanks for your contribution! The pull request validation has started. Please revisit this comment for updated status.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the Az.StackHCI module to align with an AutoRest PowerShell v4 migration, refreshing generated-facing assets (help/docs/examples/UX metadata), updating the module manifest exports (including a new cmdlet), and adjusting test scaffolding and configuration.

Changes:

  • Updated cmdlet help + AutoRest docs/examples to reflect new/changed parameter sets (including JSON input variants) and updated type names.
  • Added New-AzStackHciArcSettingIdentity to the module surface and help indices.
  • Updated StackHCI AutoRest configuration (README directives/transforms, UX JSON) and adjusted test utilities/stubs.

Reviewed changes

Copilot reviewed 93 out of 94 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
src/StackHCI/StackHCI/help/Update-AzStackHciCluster.md Updated reference help for Update-AzStackHciCluster (syntax/params/types).
src/StackHCI/StackHCI/help/Test-AzStackHciEdgeDevice.md Updated reference help for Test-AzStackHciEdgeDevice (parameter sets/examples/outputs).
src/StackHCI/StackHCI/help/Set-AzStackHciUpdateSummary.md Updated reference help for Set-AzStackHciUpdateSummary (JSON variants/type changes).
src/StackHCI/StackHCI/help/Set-AzStackHciUpdateRun.md Updated reference help for Set-AzStackHciUpdateRun (JSON variants/type changes).
src/StackHCI/StackHCI/help/Set-AzStackHciUpdate.md Updated reference help for Set-AzStackHciUpdate (JSON variants/type changes).
src/StackHCI/StackHCI/help/Set-AzStackHciSecuritySetting.md Updated reference help for Set-AzStackHciSecuritySetting (syntax/JSON variants/type changes).
src/StackHCI/StackHCI/help/Set-AzStackHciEdgeDevice.md Updated reference help for Set-AzStackHciEdgeDevice (syntax/JSON variants/text updates).
src/StackHCI/StackHCI/help/Set-AzStackHciDeploymentSetting.md Updated reference help for Set-AzStackHciDeploymentSetting (syntax/JSON variants/type changes).
src/StackHCI/StackHCI/help/Remove-AzStackHciUpdateSummary.md Updated reference help for Remove-AzStackHciUpdateSummary (identity notes adjustments).
src/StackHCI/StackHCI/help/Remove-AzStackHciUpdateRun.md Updated reference help for Remove-AzStackHciUpdateRun (added identity parameter sets).
src/StackHCI/StackHCI/help/Remove-AzStackHciUpdate.md Updated reference help for Remove-AzStackHciUpdate (added identity parameter sets).
src/StackHCI/StackHCI/help/Remove-AzStackHciSecuritySetting.md Updated reference help for Remove-AzStackHciSecuritySetting (added identity parameter sets).
src/StackHCI/StackHCI/help/Remove-AzStackHciExtension.md Updated reference help for Remove-AzStackHciExtension (added identity parameter sets).
src/StackHCI/StackHCI/help/Remove-AzStackHciEdgeDevice.md Updated reference help for Remove-AzStackHciEdgeDevice (identity notes adjustments).
src/StackHCI/StackHCI/help/Remove-AzStackHciDeploymentSetting.md Updated reference help for Remove-AzStackHciDeploymentSetting (added identity parameter sets).
src/StackHCI/StackHCI/help/Remove-AzStackHciCluster.md Updated reference help for Remove-AzStackHciCluster (identity notes adjustments).
src/StackHCI/StackHCI/help/Remove-AzStackHciArcSetting.md Updated reference help for Remove-AzStackHciArcSetting (added identity parameter sets).
src/StackHCI/StackHCI/help/New-AzStackHciSecuritySetting.md Updated reference help for New-AzStackHciSecuritySetting (JSON variants/identity input).
src/StackHCI/StackHCI/help/New-AzStackHciEdgeDevice.md Updated reference help for New-AzStackHciEdgeDevice (JSON variants).
src/StackHCI/StackHCI/help/New-AzStackHciDeploymentSetting.md Updated reference help for New-AzStackHciDeploymentSetting (JSON variants/identity input).
src/StackHCI/StackHCI/help/New-AzStackHciCluster.md Updated reference help for New-AzStackHciCluster (JSON variants/managed identity surface).
src/StackHCI/StackHCI/help/New-AzStackHciArcSettingIdentity.md Added reference help for new cmdlet New-AzStackHciArcSettingIdentity.
src/StackHCI/StackHCI/help/New-AzStackHciArcSetting.md Updated reference help for New-AzStackHciArcSetting (JSON variants/identity input).
src/StackHCI/StackHCI/help/Invoke-AzStackHciUpdate.md Updated reference help for Invoke-AzStackHciUpdate (added identity parameter set).
src/StackHCI/StackHCI/help/Invoke-AzStackHciExtendClusterSoftwareAssuranceBenefit.md Updated reference help for ExtendClusterSoftwareAssuranceBenefit (JSON variants/type changes).
src/StackHCI/StackHCI/help/Invoke-AzStackHciConsentAndInstallDefaultExtension.md Updated reference help for ConsentAndInstallDefaultExtension (added identity parameter set).
src/StackHCI/StackHCI/help/Get-AzStackHciUpdateSummary.md Updated reference help for Get-AzStackHciUpdateSummary (type name updates).
src/StackHCI/StackHCI/help/Get-AzStackHciUpdateRun.md Updated reference help for Get-AzStackHciUpdateRun (added identity parameter sets).
src/StackHCI/StackHCI/help/Get-AzStackHciUpdate.md Updated reference help for Get-AzStackHciUpdate (added identity parameter set).
src/StackHCI/StackHCI/help/Get-AzStackHciSecuritySetting.md Updated reference help for Get-AzStackHciSecuritySetting (added identity parameter set).
src/StackHCI/StackHCI/help/Get-AzStackHciExtension.md Updated reference help for Get-AzStackHciExtension (added identity parameter sets).
src/StackHCI/StackHCI/help/Get-AzStackHciEdgeDevice.md Updated reference help for Get-AzStackHciEdgeDevice (type name updates).
src/StackHCI/StackHCI/help/Get-AzStackHciDeploymentSetting.md Updated reference help for Get-AzStackHciDeploymentSetting (added identity parameter set).
src/StackHCI/StackHCI/help/Get-AzStackHciCluster.md Updated reference help for Get-AzStackHciCluster (type name updates).
src/StackHCI/StackHCI/help/Get-AzStackHciArcSetting.md Updated reference help for Get-AzStackHciArcSetting (added identity parameter set).
src/StackHCI/StackHCI/help/Az.StackHCI.md Updated module help index to include new cmdlet and updated synopses.
src/StackHCI/StackHCI/ChangeLog.md Added an Upcoming Release entry describing generator upgrade.
src/StackHCI/StackHCI/Az.StackHCI.psd1 Updated module manifest metadata and exported functions list (added new cmdlet).
src/StackHCI/StackHCI.sln Updated solution project GUID mapping for the generated Az.StackHCI project.
src/StackHCI/StackHCI.Autorest/UX/Microsoft.AzureStackHCI/edgeDevices.json Updated UX metadata (removed validate operation entry).
src/StackHCI/StackHCI.Autorest/UX/Microsoft.AzureStackHCI/clusters.json Updated UX metadata (removed extendSoftwareAssuranceBenefit operation entry).
src/StackHCI/StackHCI.Autorest/test/utils.ps1 Updated test environment setup/cleanup logic for ArcSetting creation and cleanup.
src/StackHCI/StackHCI.Autorest/test/Update-AzStackHciCluster.Tests.ps1 Modified Update-AzStackHciCluster test to be skipped.
src/StackHCI/StackHCI.Autorest/test/Test-ComputerNameHasDnsSuffix.Tests.ps1 Added new (currently skipped) test scaffold.
src/StackHCI/StackHCI.Autorest/test/Test-ClusterMsiSupport.Tests.ps1 Added new (currently skipped) test scaffold.
src/StackHCI/StackHCI.Autorest/test/Test-ClusterArcEnabled.Tests.ps1 Added new (currently skipped) test scaffold.
src/StackHCI/StackHCI.Autorest/test/Test-ArcNodeClusterLink.Tests.ps1 Added new (currently skipped) test scaffold.
src/StackHCI/StackHCI.Autorest/test/New-AzStackHciArcSettingIdentity.Tests.ps1 Added new (currently skipped) test scaffold for new cmdlet.
src/StackHCI/StackHCI.Autorest/test/Invoke-MSIUnregistrationFlow.Tests.ps1 Added new (currently skipped) test scaffold.
src/StackHCI/StackHCI.Autorest/test/Invoke-MSIFlow.Tests.ps1 Added new (currently skipped) test scaffold.
src/StackHCI/StackHCI.Autorest/README.md Updated AutoRest configuration (removed v3 use-extension, updated directives, added transforms).
src/StackHCI/StackHCI.Autorest/Properties/AssemblyInfo.cs Updated assembly version attributes.
src/StackHCI/StackHCI.Autorest/generate-info.json Updated generation identifier metadata.
src/StackHCI/StackHCI.Autorest/examples/Test-AzStackHciEdgeDevice.md Updated example to new parameter shape.
src/StackHCI/StackHCI.Autorest/examples/New-AzStackHciArcSettingIdentity.md Added example for new cmdlet.
src/StackHCI/StackHCI.Autorest/docs/Test-AzStackHciEdgeDevice.md Updated AutoRest-generated docs for Test-AzStackHciEdgeDevice.
src/StackHCI/StackHCI.Autorest/docs/Set-AzStackHciUpdateSummary.md Updated AutoRest-generated docs for Set-AzStackHciUpdateSummary.
src/StackHCI/StackHCI.Autorest/docs/Set-AzStackHciUpdateRun.md Updated AutoRest-generated docs for Set-AzStackHciUpdateRun.
src/StackHCI/StackHCI.Autorest/docs/Set-AzStackHciUpdate.md Updated AutoRest-generated docs for Set-AzStackHciUpdate.
src/StackHCI/StackHCI.Autorest/docs/Set-AzStackHciSecuritySetting.md Updated AutoRest-generated docs for Set-AzStackHciSecuritySetting.
src/StackHCI/StackHCI.Autorest/docs/Set-AzStackHciEdgeDevice.md Updated AutoRest-generated docs for Set-AzStackHciEdgeDevice.
src/StackHCI/StackHCI.Autorest/docs/Set-AzStackHciDeploymentSetting.md Updated AutoRest-generated docs for Set-AzStackHciDeploymentSetting.
src/StackHCI/StackHCI.Autorest/docs/Remove-AzStackHciUpdateSummary.md Updated AutoRest-generated docs for Remove-AzStackHciUpdateSummary.
src/StackHCI/StackHCI.Autorest/docs/Remove-AzStackHciUpdateRun.md Updated AutoRest-generated docs for Remove-AzStackHciUpdateRun.
src/StackHCI/StackHCI.Autorest/docs/Remove-AzStackHciUpdate.md Updated AutoRest-generated docs for Remove-AzStackHciUpdate.
src/StackHCI/StackHCI.Autorest/docs/Remove-AzStackHciSecuritySetting.md Updated AutoRest-generated docs for Remove-AzStackHciSecuritySetting.
src/StackHCI/StackHCI.Autorest/docs/Remove-AzStackHciExtension.md Updated AutoRest-generated docs for Remove-AzStackHciExtension.
src/StackHCI/StackHCI.Autorest/docs/Remove-AzStackHciEdgeDevice.md Updated AutoRest-generated docs for Remove-AzStackHciEdgeDevice.
src/StackHCI/StackHCI.Autorest/docs/Remove-AzStackHciDeploymentSetting.md Updated AutoRest-generated docs for Remove-AzStackHciDeploymentSetting.
src/StackHCI/StackHCI.Autorest/docs/Remove-AzStackHciCluster.md Updated AutoRest-generated docs for Remove-AzStackHciCluster.
src/StackHCI/StackHCI.Autorest/docs/Remove-AzStackHciArcSetting.md Updated AutoRest-generated docs for Remove-AzStackHciArcSetting.
src/StackHCI/StackHCI.Autorest/docs/New-AzStackHciSecuritySetting.md Updated AutoRest-generated docs for New-AzStackHciSecuritySetting.
src/StackHCI/StackHCI.Autorest/docs/New-AzStackHciEdgeDevice.md Updated AutoRest-generated docs for New-AzStackHciEdgeDevice.
src/StackHCI/StackHCI.Autorest/docs/New-AzStackHciDeploymentSetting.md Updated AutoRest-generated docs for New-AzStackHciDeploymentSetting.
src/StackHCI/StackHCI.Autorest/docs/New-AzStackHciCluster.md Updated AutoRest-generated docs for New-AzStackHciCluster.
src/StackHCI/StackHCI.Autorest/docs/New-AzStackHciArcSettingIdentity.md Added AutoRest-generated docs for new cmdlet New-AzStackHciArcSettingIdentity.
src/StackHCI/StackHCI.Autorest/docs/New-AzStackHciArcSetting.md Updated AutoRest-generated docs for New-AzStackHciArcSetting.
src/StackHCI/StackHCI.Autorest/docs/Invoke-AzStackHciUpdate.md Updated AutoRest-generated docs for Invoke-AzStackHciUpdate.
src/StackHCI/StackHCI.Autorest/docs/Invoke-AzStackHciExtendClusterSoftwareAssuranceBenefit.md Updated AutoRest-generated docs for ExtendClusterSoftwareAssuranceBenefit.
src/StackHCI/StackHCI.Autorest/docs/Invoke-AzStackHciConsentAndInstallDefaultExtension.md Updated AutoRest-generated docs for ConsentAndInstallDefaultExtension.
src/StackHCI/StackHCI.Autorest/docs/Get-AzStackHciUpdateSummary.md Updated AutoRest-generated docs for Get-AzStackHciUpdateSummary.
src/StackHCI/StackHCI.Autorest/docs/Get-AzStackHciUpdateRun.md Updated AutoRest-generated docs for Get-AzStackHciUpdateRun.
src/StackHCI/StackHCI.Autorest/docs/Get-AzStackHciUpdate.md Updated AutoRest-generated docs for Get-AzStackHciUpdate.
src/StackHCI/StackHCI.Autorest/docs/Get-AzStackHciSecuritySetting.md Updated AutoRest-generated docs for Get-AzStackHciSecuritySetting.
src/StackHCI/StackHCI.Autorest/docs/Get-AzStackHciExtension.md Updated AutoRest-generated docs for Get-AzStackHciExtension.
src/StackHCI/StackHCI.Autorest/docs/Get-AzStackHciEdgeDevice.md Updated AutoRest-generated docs for Get-AzStackHciEdgeDevice.
src/StackHCI/StackHCI.Autorest/docs/Get-AzStackHciDeploymentSetting.md Updated AutoRest-generated docs for Get-AzStackHciDeploymentSetting.
src/StackHCI/StackHCI.Autorest/docs/Get-AzStackHciCluster.md Updated AutoRest-generated docs for Get-AzStackHciCluster.
src/StackHCI/StackHCI.Autorest/docs/Get-AzStackHciArcSetting.md Updated AutoRest-generated docs for Get-AzStackHciArcSetting.
src/StackHCI/StackHCI.Autorest/docs/Az.StackHCI.md Updated AutoRest-generated module index doc.

Comment on lines 20 to 22
## Upcoming Release
* Introduced various new features by upgrading code generator. Please see details [here](https://github.com/Azure/azure-powershell/blob/main/documentation/Autorest-powershell-v4-new-features.md).

Comment on lines +215 to +220
- from: source-file-csharp
where: $
transform: $ = $.replace(/"Get the get run for a specified update"/g, '"Get the Update run for a specified update"');
- from: source-file-csharp
where: $
transform: $ = $.replace(/"Get all get summaries under the HCI cluster"/g, '"Get all Update summaries under the HCI cluster"');
Comment on lines 17 to +22
Update-AzStackHciCluster -Name <String> -ResourceGroupName <String> [-SubscriptionId <String>]
[-AadTenantId <String>] [-CloudManagementEndpoint <String>]
[-DesiredPropertyDiagnosticLevel <DiagnosticLevel>]
[-DesiredPropertyWindowsServerSubscription <WindowsServerSubscription>]
[-IdentityType <ManagedServiceIdentityType>] [-IdentityUserAssignedIdentity <Hashtable>] [-Tag <Hashtable>]
[-DefaultProfile <PSObject>] [-WhatIf] [-Confirm] [<CommonParameters>]
[-AadApplicationObjectId <String>] [-AadServicePrincipalObjectId <String>] [-AadTenantId <String>]
[-CloudManagementEndpoint <String>] [-DesiredPropertyDiagnosticLevel <String>]
[-DesiredPropertyWindowsServerSubscription <String>] [-EnableSystemAssignedIdentity <Boolean>]
[-SoftwareAssurancePropertySoftwareAssuranceIntent <String>] [-Tag <Hashtable>]
[-UserAssignedIdentity <String[]>] [-DefaultProfile <PSObject>] [-WhatIf]
Comment on lines 17 to +22
New-AzStackHciCluster -Name <String> -ResourceGroupName <String> [-SubscriptionId <String>] -Location <String>
[-AadApplicationObjectId <String>] [-AadClientId <String>] [-AadServicePrincipalObjectId <String>]
[-AadTenantId <String>] [-CloudManagementEndpoint <String>]
[-DesiredPropertyDiagnosticLevel <DiagnosticLevel>]
[-DesiredPropertyWindowsServerSubscription <WindowsServerSubscription>]
[-IdentityType <ManagedServiceIdentityType>] [-IdentityUserAssignedIdentity <Hashtable>]
[-SoftwareAssurancePropertySoftwareAssuranceIntent <SoftwareAssuranceIntent>] [-Tag <Hashtable>]
[-DefaultProfile <PSObject>] [-WhatIf] [-Confirm] [<CommonParameters>]
[-AadTenantId <String>] [-CloudManagementEndpoint <String>] [-DesiredPropertyDiagnosticLevel <String>]
[-DesiredPropertyWindowsServerSubscription <String>] [-EnableSystemAssignedIdentity]
[-SoftwareAssurancePropertySoftwareAssuranceIntent <String>] [-Tag <Hashtable>]
[-UserAssignedIdentity <String[]>] [-DefaultProfile <PSObject>] [-WhatIf]
Comment on lines +22 to 33
### ValidateViaJsonString
```
Test-AzStackHciEdgeDevice -Name <String> -ResourceUri <String> -ValidateRequest <IValidateRequest>
Test-AzStackHciEdgeDevice -Name <String> -ResourceUri <String> -JsonString <String>
[-DefaultProfile <PSObject>] [-AsJob] [-NoWait] [-WhatIf] [-Confirm]
[<CommonParameters>]
```

### ValidateViaIdentityExpanded
### ValidateViaJsonFilePath
```
Test-AzStackHciEdgeDevice -InputObject <IStackHciIdentity> -EdgeDeviceId <String[]> [-AdditionalInfo <String>]
Test-AzStackHciEdgeDevice -Name <String> -ResourceUri <String> -JsonFilePath <String>
[-DefaultProfile <PSObject>] [-AsJob] [-NoWait] [-WhatIf] [-Confirm]
[<CommonParameters>]
Comment on lines 246 to 249
## OUTPUTS

### System.String
### Microsoft.Azure.PowerShell.Cmdlets.StackHCI.Models.IValidateResponse

Comment on lines +18 to 20
It 'UpdateExpanded' -skip{
Update-AzStackHciCluster -ResourceGroupName $env.ResourceGroup -Name $env.ClusterName -DesiredPropertyDiagnosticLevel "Enhanced" -DesiredPropertyWindowsServerSubscription "Disabled"
}
Comment on lines 10 to 12
## SYNOPSIS
Create a EdgeDevice
Update a EdgeDevice

@YanaXu YanaXu added the autorest v4 migration pr migrating module from generated by autorest.powershell v3 to v4 label May 13, 2026
@Pan-Qi Pan-Qi added the Contains Breaking Change This PR contains breaking change label May 22, 2026
@github-actions
Copy link
Copy Markdown

To the author of the pull request,
This PR was labeled "Contains Breaking Change" because breaking changes have been detected by the static analysis pipeline.

  • According to our policy, breaking changes can only take place during major release and they must be preannounced.
  • Please follow our guide on the detailed steps.
  • Required: Please fill in the task below to facilitate our contact,you will receive notifications related to breaking changes.

@Pan-Qi Pan-Qi merged commit 71485a6 into Azure:main May 25, 2026
17 of 18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

autorest v4 migration pr migrating module from generated by autorest.powershell v3 to v4 Contains Breaking Change This PR contains breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants