[Network] Add New/Get/Remove-AzVirtualNetworkApplianceCapability cmdlets For VNRA - #30173
Mangilal Bishnoi (iml-v) wants to merge 3 commits into
Conversation
|
Azure Pipelines: There may be pipelines that require an authorized user to comment /azp run to run. |
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
The base cmdlet contains a compilation error and does not fully validate documented capability/IP-version combinations.
Get a fresh assessment by requesting another Copilot review.
Review effort: Lite
Findings: 1
Open (3)
What changed in this PR
Adds PowerShell cmdlets for managing Virtual Network Appliance capabilities, including generated SDK support, documentation, exports, changelog, and unit tests.
Changes:
- Added New, Get, and Remove cmdlets.
- Added capability models and SDK operations.
- Added help files, exports, and client-side unit tests.
| File | Description |
|---|---|
VirtualNetworkApplianceCapabilityBaseCmdlet.cs |
Shared capability logic and payload creation |
NewVirtualNetworkApplianceCapabilityCommand.cs |
Creates capabilities |
GetVirtualNetworkApplianceCapabilityCommand.cs |
Retrieves capabilities |
RemoveVirtualNetworkApplianceCapabilityCommand.cs |
Removes capabilities |
PSVirtualNetworkApplianceCapability.cs |
PowerShell output model |
Get-AzVirtualNetworkApplianceCapability.md |
Get cmdlet help |
New-AzVirtualNetworkApplianceCapability.md |
New cmdlet help |
Remove-AzVirtualNetworkApplianceCapability.md |
Remove cmdlet help |
ChangeLog.md |
Release notes |
Az.Network.psd1 |
Cmdlet exports |
VirtualNetworkApplianceCapabilityUnitTests.cs |
Unit coverage |
| Generated SDK files | API operations, models, polymorphism, and client wiring |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
8d570ae to
47db9a0
Compare
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
The create path does not enforce the documented capability kind and IP-version combinations.
Get a fresh assessment by requesting another Copilot review.
Review effort: Lite
Findings: 2
Open (3)
Resolved since last review (2)
|
/azp run |
|
Commenter does not have sufficient privileges for PR 30173 in repo Azure/azure-powershell |
|
/azp run |
|
Azure Pipelines: Successfully started running 3 pipeline(s). |
f628872 to
2999ddd
Compare
…eCapability for create, drop stale CreateOrUpdate hierarchy Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
/azp run |
|
Azure Pipelines: Successfully started running 3 pipeline(s). |



Adds Azure PowerShell cmdlets to manage the Virtual Network Appliance capability child
resource (
Microsoft.Network/virtualNetworkAppliances/capabilities, api-version2026-03-01).New cmdlets (
Az.Network):New-AzVirtualNetworkApplianceCapability— create a capability on an appliance.Get-AzVirtualNetworkApplianceCapability— get one capability, or list all on an appliance.Remove-AzVirtualNetworkApplianceCapability— delete a capability.The capability is a discriminated resource selected by
-Kind, covering all four kinds:PLGatewayFastpath,PLGateway,PLIPForwarders, andNAT64.-IpVersionis required for thePrivate Link kinds (the service validates it against the kind: FastPath →
DualStack;PLGateway/PLIPForwarders→IPv6) and is not accepted for the property-lessNAT64kind.kind,linkedResourceId, andprovisioningStateare read-only.Includes: the generated SDK capability operations/models, PS model, AutoMapper-free projection,
ChangeLog.md, platyPS markdown help for all three cmdlets, module landing-page entries, and unittests for the client-side kind/ipVersion logic.
Cmdlet design review:
Notes for reviewers
Network SDK regeneration for that version.
feature-enabled dual-stack environment is available; client-side logic is covered by unit tests in
this PR.
Mandatory Checklist
Please choose the target release of Azure PowerShell. (⚠️ Target release is a different concept from API readiness. Please click below links for details.)
Check this box to confirm: I have read the Submitting Changes section of
CONTRIBUTING.mdand reviewed the following information:ChangeLog.mdfile(s) appropriatelysrc/{{SERVICE}}/{{SERVICE}}/ChangeLog.md.## Upcoming Releaseheader in the past tense.ChangeLog.mdif no new release is required, such as fixing test case only.