Skip to content

Commit ca4583a

Browse files
authored
Merge branch 'main' into isra-fel/azure-core-1-50-0
2 parents 86085b8 + 00d42d0 commit ca4583a

File tree

1,574 files changed

+299264
-439672
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,574 files changed

+299264
-439672
lines changed

.github/CODEOWNERS

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
11
# @wyunchi-ms @dolauli @isra-fel are from the Azure PowerShell team. Adding them ensures they can merge the PR for those modules.
2+
23
# To make sure Network PRs go to the right branch, e.g. network-april
34
/src/Compute/ @ookoka @haagha @audreyttt @wyunchi-ms @dolauli @isra-fel @VeryEarly @YanaXu @vidai-msft @NoriZC @notyashhh @Pan-Qi @DanielMicrosoft
4-
/src/PolicyInsights/ @pilor @wyunchi-ms @dolauli @isra-fel @VeryEarly @YanaXu @vidai-msft @NoriZC @notyashhh @Pan-Qi @DanielMicrosoft
5-
/src/Batch/ @wiboris @dpwatrous @wyunchi-ms @dolauli @isra-fel @VeryEarly @YanaXu @vidai-msft @NoriZC @notyashhh @Pan-Qi @DanielMicrosoft
6-
7-
# Make sure Device Registry team gets notified of any DeviceRegistry PRs:
8-
# PRLabel: %Device Registry
9-
/src/DeviceRegistry/ @marcodalessandro @rohankhandelwal @riteshrao @davidemontanari @wyunchi-ms @dolauli @isra-fel @VeryEarly @YanaXu @vidai-msft @NoriZC @notyashhh @Pan-Qi @DanielMicrosoft
105

116
# Make sure changes to .github folder go through our team's double check
127
/.github/ @wyunchi-ms @dolauli @isra-fel @VeryEarly @YanaXu @vidai-msft @NoriZC @notyashhh @Pan-Qi @DanielMicrosoft

.github/agents/computePR.agent.md

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
---
2+
name: Compute PowerShell Pull Request Agent
3+
description: Specialized agent for creating PowerShell pull requests based on a design request
4+
---
5+
6+
The user is going to ask you to implement a new feature in existing C# code for a Powershell cmdlet. You will write tests, make code changes, add help docs, and add changelog.
7+
You are an engineering assistant helping Azure PowerShell contributors update or add parameters to Compute cmdlets. Your job is to accurately locate the cmdlet implementation, modify parameters and execution flow, apply PowerShell/ComputeRP conventions, and produce all required artifacts (code, docs, tests, and changelog). Prioritize correctness, least-risk edits, and traceability.
8+
9+
# Scope
10+
- Module: Azure PowerShell Compute
11+
- Cmdlet files live under `src/Compute/Compute/**`
12+
- You will read and reason about C# cmdlet sources, strategy classes, model classes, and test assets
13+
14+
# Objectives
15+
1) Identify the correct cmdlet file and confirm the cmdlet mapping.
16+
2) Add or modify parameters with proper metadata and mapping.
17+
3) Update all required files (code, help, tests, changelog).
18+
19+
# Ground Truth & Location Rules
20+
- Primary cmdlet implementation: `src/Compute/Compute/…/<command>.cs`
21+
- Example: `New-AzVM``NewAzureVMCommand.cs`
22+
- Confirm mapping via `[Cmdlet("Verb", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "Noun", ...)]`
23+
- Example: `[Cmdlet("New", AzureRMPrefix + "VM", …)]``New-AzVM`
24+
- Related execution may be in associated strategy files (e.g., `VirtualMachineStrategy.cs`)
25+
- Model classes representing Swagger schema live in: `src/Compute/Compute/Models/<command>.cs`
26+
27+
# Parameter Authoring Rules
28+
- Parameters are usually declared at the top of the cmdlet C# file.
29+
- Parameters have metadata that may specify parameter sets or `Mandatory` status.
30+
- **Mapping requirement:** Variables in **PowerShell objects must have a `set`** method to be bound from parameters. Follow the structure of existing parameters
31+
- Keep parameter names, types, and sets consistent with the cmdlet design
32+
33+
# Execution Flow Rules
34+
- `ExecuteCmdlet()` implements logic per **parameter set** (usually via `switch`).
35+
- `DefaultExecuteCmdlet()` handles **DefaultParameterSet**.
36+
- Additional methods (e.g., `CreateConfigAsync()`) may be invoked directly or via a `*Strategy` file.
37+
- **Editing a parameter set requires updating the full call stack**:
38+
- For DefaultParameterSet ⇒ adjust `DefaultExecuteCmdlet()` path.
39+
- For other sets ⇒ adjust their specific methods and any strategy indirections.
40+
- Not all files will have these methods or follow this format, so use the existing patterns when adding new parameters.
41+
42+
# Built-in Utilities (apply exactly)
43+
- Determine if a value was passed:
44+
- `IsParameterBound(c => c.<ParameterName>)`
45+
46+
- If required details are missing, make a comment and request clarification from the owning team.
47+
48+
# Required Artifacts to Update
49+
1) **Changelog**
50+
- `src/Compute/Compute/ChangeLog.md`
51+
- Describe customer-visible changes (new parameter, behavior change, etc.).
52+
2) **Model Class** (Swagger mapping)
53+
- `src/Compute/Compute/Models/<model>.cs`
54+
- Add/adjust properties to represent the API schema.
55+
3) **Cmdlet Implementation**
56+
- `src/Compute/Compute/<usually Generated or Manual or Strategies>/…/<command>.cs`
57+
- Add/modify parameters, validation, binding, and execution paths.
58+
- If code is split, also update related files (e.g., `NewAzureVMCommand.cs`, `VirtualMachineStrategy.cs`).
59+
4) **Help Content**
60+
- `src/Compute/Compute/help/<command>.md`
61+
- Regenerate using the module's help script: Update-MarkdownHelp -Path ./src/Compute/Compute/help/New-AzVM.md -AlphabeticParamsOrder -UseFullTypeName
62+
- Ensure examples cover new parameters.
63+
- New parameters should go at the end of the parameter list.
64+
5) **Tests**
65+
- PowerShell scenario test: `src/Compute/Compute.Test/ScenarioTests/<resourceTests>.ps1`
66+
- C# test reference: `src/Compute/Compute.Test/ScenarioTests/<resourceTests>.cs`
67+
- Add cases for: presence/absence of the new parameter, parameter set routing, validation, and expected side effects. Use existing tests for reference on how to create new tests.
68+
- Always create a new test instead of modifying existing tests.
69+
70+
# Quality & Safety Checklist (enforce before finalizing)
71+
- Cmdlet attribute matches `<Verb>-Az<Noun>` and correct parameter sets.
72+
- New/changed parameters have clear `Parameter` metadata (sets, `Mandatory`, `HelpMessage` if applicable).
73+
- `ExecuteCmdlet()` routes correctly; Default vs non-default paths updated.
74+
- `IsParameterBound` used to detect passed values; no reliance on null for "not provided".
75+
- Help regenerated and examples verified.
76+
- Scenario tests cover success/failure paths.
77+
- `ChangeLog.md` describes changes simply, similar to existing changelog descriptions.

.github/policies/resourceManagement.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3063,6 +3063,8 @@ configuration:
30633063
- mentionUsers:
30643064
mentionees:
30653065
- AzmonLogA
3066+
- raronen
3067+
- MeirMen
30663068
replyTemplate: Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc ${mentionees}.
30673069
assignMentionees: False
30683070
- if:

ChangeLog.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,41 @@
1+
## 15.1.0 - December 2025
2+
#### Az.AppConfiguration 2.0.1
3+
* Fixed GitHub issue #23731 'Problem with Get-AzAppConfigurationKeyValue when more that 100 records are present'
4+
- Fixed 'NextLink' property to give absolute URI, allowing subsequent pages of results to be retrieved.
5+
6+
#### Az.Compute 11.1.0
7+
* Added '-ResiliencyView' parameter to 'Get-AzVmssVM' cmdlet
8+
- Retrieves the resilient VM deletion status for Virtual Machine Scale Set (VMSS) VMs
9+
- Indicates whether automatic delete retries are in progress, failed, or not started
10+
- Supports monitoring the real-time status of the Resilient Delete feature
11+
12+
#### Az.CosmosDB 1.19.0
13+
* Added fleet management support for Cosmos DB accounts.
14+
* Added support for priority based execution.
15+
16+
#### Az.ElasticSan 1.6.0
17+
* Reverted changes for auto scale, pre-backup, and pre-restore
18+
- 'New-AzElasticSan'
19+
- 'Update-AzElasticSan'
20+
- 'Test-AzElasticSanVolumeBackup'
21+
- 'Test-AzElasticSanVolumeRestore'
22+
23+
#### Az.Functions 4.3.0
24+
* Added FlexConsumption support to Get-AzFunctionAppAvailableLocation, which returns a list of regions that supported Flex Consumption, including locations supporting zone redundancy (currently applied only to Flex Consumption)
25+
* Added a new cmdlet Get-AzFunctionAppFlexConsumptionRuntime to retrieve Flex Consumption runtimes for a specified location
26+
* Added a new parameter set to New-AzFunctionApp to support Flex Consumption function apps [#24349]
27+
* Refreshed stack definitions
28+
29+
#### Az.Network 7.24.0
30+
* Added support for 'RecordType' property in 'New-AzNetworkWatcherFlowLog' and 'Set-AzNetworkWatcherFlowLog' cmdlets.
31+
* Added property 'NvaInterfaceConfiguration' to Network Virtual Appliances, as well as support for them in following cmdlets:
32+
- 'New-AzNetworkVirtualAppliance'
33+
- 'Get-AzNetworkVirtualAppliance'
34+
* Added cmdlet to take the NvaInterfaceConfigurations properties on the Network Virtual Appliance:
35+
- 'New-AzNvaInterfaceConfiguration' to build individual interface configuration for network virtual appliance.
36+
* Removed the None from the accepted value for the property 'Sensitivity'
37+
- Updated 'New-AzApplicationGatewayFirewallPolicyManagedRuleOverride' cmdlet
38+
139
## 15.0.0 - November 2025
240
#### Az.Accounts 5.3.1
341
* Updated Azure.Core from 1.45.0 to 1.47.3

documentation/SyntaxChangeLog/SyntaxChangeLog-Az15.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,33 @@
1+
## 15.1.0 - December 2025
2+
#### Az.Compute 11.1.0
3+
* Modified cmdlet `Get-AzVmssVM`
4+
- Added parameter `-ResiliencyView`
5+
#### Az.CosmosDB 1.19.0
6+
* Modified cmdlet `New-AzCosmosDBAccount`
7+
- Added parameters `-EnablePriorityBasedExecution`, `-DefaultPriorityLevel`
8+
* Modified cmdlet `New-AzCosmosDBSqlVectorIndex`
9+
- Added parameters `-QuantizationByteSize`, `-IndexingSearchListSize`, `-VectorIndexShardKey`
10+
* Modified cmdlet `Restore-AzCosmosDBAccount`
11+
- Added parameter `-SourceBackupLocation`
12+
* Modified cmdlet `Update-AzCosmosDBAccount`
13+
- Added parameters `-EnablePriorityBasedExecution`, `-DefaultPriorityLevel`
14+
* Added cmdlet `Add-AzCosmosDBFleetspaceAccount`, `Get-AzCosmosDBFleet`, `Get-AzCosmosDBFleetspace`, `Get-AzCosmosDBFleetspaceAccount`, `New-AzCosmosDBFleet`, `New-AzCosmosDBFleetspace`, `Remove-AzCosmosDBFleet`, `Remove-AzCosmosDBFleetspace`, `Remove-AzCosmosDBFleetspaceAccount`, `Update-AzCosmosDBFleet`, `Update-AzCosmosDBFleetspace`
15+
#### Az.Migrate 2.10.1
16+
* Modified cmdlet `New-AzMigrateServerReplication`
17+
- Added parameter `-TargetCapacityReservationGroupId`
18+
* Modified cmdlet `Set-AzMigrateServerReplication`
19+
- Added parameter `-TargetCapacityReservationGroupId`
20+
* Modified cmdlet `Start-AzMigrateServerMigration`
21+
- Added parameter `-TargetCapacityReservationGroupId`
22+
#### Az.Network 7.24.0
23+
* Modified cmdlet `New-AzNetworkVirtualAppliance`
24+
- Added parameter `-NvaInterfaceConfiguration`
25+
* Modified cmdlet `New-AzNetworkWatcherFlowLog`
26+
- Added parameter `-RecordType`
27+
* Modified cmdlet `Set-AzNetworkWatcherFlowLog`
28+
- Added parameter `-RecordType`
29+
* Added cmdlet `New-AzNvaInterfaceConfiguration`
30+
131
## 15.0.0 - November 2025
232
#### Az.Advisor 3.0.0
333
* Modified cmdlet `Set-AzAdvisorConfiguration`
@@ -1130,3 +1160,4 @@
11301160
* Added cmdlet `Update-AzWorkloadsProviderInstance`
11311161

11321162

1163+

documentation/breaking-changes/upcoming-breaking-changes.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -483,7 +483,7 @@ Preview modules are not included in this list. Read more about [module version t
483483
- This change will take effect on '11/3/2025'- The change is expected to take effect from Az version : '15.0.0'
484484
- The change is expected to take effect in 'Az.Monitor' from version : '7.0.0'
485485

486-
- Parameter breaking-change will happen to all parameter sets
486+
- Parameter breaking-change will happen to parameter set `NewAzSubscriptionDiagnosticSetting_CreateExpanded`
487487
- `-Log`
488488
- The parameter : 'Log' is changing.
489489
The type of the parameter is changing from 'Array' to 'List'.

eng/emitter-package.json

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,19 +3,19 @@
33
"version": "0.1.0",
44
"type": "module",
55
"dependencies": {
6-
"@typespec/compiler": "1.5.0",
6+
"@typespec/compiler": "1.7.0",
77
"@azure-tools/typespec-powershell": "0.0.x",
8-
"@azure-tools/typespec-autorest": "0.61.0",
9-
"@azure-tools/typespec-azure-core": "0.61.0",
10-
"@azure-tools/typespec-azure-resource-manager": "0.61.0",
11-
"@azure-tools/typespec-client-generator-core": "0.61.0",
12-
"@azure-tools/typespec-azure-rulesets": "0.61.0",
13-
"@typespec/http": "1.5.0",
14-
"@typespec/openapi": "1.5.0",
15-
"@typespec/rest": "0.75.0",
16-
"@typespec/streams": "0.75.0",
17-
"@typespec/versioning": "0.75.0",
18-
"@typespec/xml": "0.75.0",
8+
"@azure-tools/typespec-autorest": "0.63.0",
9+
"@azure-tools/typespec-azure-core": "0.63.0",
10+
"@azure-tools/typespec-azure-resource-manager": "0.63.0",
11+
"@azure-tools/typespec-client-generator-core": "0.63.0",
12+
"@azure-tools/typespec-azure-rulesets": "0.63.0",
13+
"@typespec/http": "1.7.0",
14+
"@typespec/openapi": "1.7.0",
15+
"@typespec/rest": "0.77.0",
16+
"@typespec/streams": "0.77.0",
17+
"@typespec/versioning": "0.77.0",
18+
"@typespec/xml": "0.77.0",
1919
"@azure-tools/typespec-liftr-base": "0.10.0"
2020
},
2121
"private": true
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<Project Sdk="Microsoft.NET.Sdk">
2+
<PropertyGroup>
3+
<PsModuleName>DurableTask</PsModuleName>
4+
<PsRootModuleName>DurableTask</PsRootModuleName>
5+
<PsModuleFolder>DurableTask.Autorest</PsModuleFolder>
6+
<RootNamespace>Microsoft.Azure.PowerShell.Cmdlets.DurableTask</RootNamespace>
7+
</PropertyGroup>
8+
9+
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory).., build.proj))\src\Az.autorest.props" />
10+
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory).., build.proj))\src\Az.Post.props" />
11+
</Project>

0 commit comments

Comments
 (0)