Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions src/network-manager/HISTORY.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,11 @@

Release History
===============
3.1.0
+++++
* `az network manager routing-config rule-collection rule create/update`: Support comma-separated IP addresses in `--next-hop-address` for ECMP scenarios when `--next-hop-type` is `VirtualAppliance`
* Upgrade routing rule commands API version to 2025-07-01

3.0.1
+++++
* Add NG of type Subnet support for routing config
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,15 @@ class Create(AAZCommand):

:example: Create an routing rule.
az network manager routing-config rule-collection rule create --config-name TestNetworkManagerConfig --manager-name TestNetworkManager --collection-name TestNetworkManagerCollection --name TestNetworkManagerRule --resource-group "rg1" --destination {"destination_address":"10.0.0.0/16","type":"AddressPrefix"} --next-hop {"next_hop_type":"VirtualNetworkGateway"}

:example: Create an routing rule with ECMP next hop (comma-separated IP addresses).
az network manager routing-config rule-collection rule create --config-name TestNetworkManagerConfig --manager-name TestNetworkManager --collection-name TestNetworkManagerCollection --name TestNetworkManagerRule --resource-group "rg1" --destination {"destination_address":"10.0.0.0/16","type":"AddressPrefix"} --next-hop {next_hop_type:VirtualAppliance,next_hop_address:'10.1.0.4,10.1.0.5,10.1.0.6'}
"""

_aaz_info = {
"version": "2024-05-01",
"version": "2025-07-01",
"resources": [
["mgmt-plane", "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/networkmanagers/{}/routingconfigurations/{}/rulecollections/{}/rules/{}", "2024-05-01"],
["mgmt-plane", "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/networkmanagers/{}/routingconfigurations/{}/rulecollections/{}/rules/{}", "2025-07-01"],
]
}

Expand Down Expand Up @@ -116,7 +119,7 @@ def _build_arguments_schema(cls, *args, **kwargs):
next_hop = cls._args_schema.next_hop
next_hop.next_hop_address = AAZStrArg(
options=["next-hop-address"],
help="Next hop address. Only relevant if the next hop type is VirtualAppliance.",
help="Next hop address. Only relevant if the next hop type is VirtualAppliance. Supports comma-separated IP addresses for ECMP scenarios (e.g., '10.1.0.4,10.1.0.5,10.1.0.6').",
)
next_hop.next_hop_type = AAZStrArg(
options=["next-hop-type"],
Expand Down Expand Up @@ -203,7 +206,7 @@ def url_parameters(self):
def query_parameters(self):
parameters = {
**self.serialize_query_param(
"api-version", "2024-05-01",
"api-version", "2025-07-01",
required=True,
),
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,9 @@ class Delete(AAZCommand):
"""

_aaz_info = {
"version": "2024-05-01",
"version": "2025-07-01",
"resources": [
["mgmt-plane", "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/networkmanagers/{}/routingconfigurations/{}/rulecollections/{}/rules/{}", "2024-05-01"],
["mgmt-plane", "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/networkmanagers/{}/routingconfigurations/{}/rulecollections/{}/rules/{}", "2025-07-01"],
]
}

Expand Down Expand Up @@ -193,7 +193,7 @@ def query_parameters(self):
"force", self.ctx.args.force,
),
**self.serialize_query_param(
"api-version", "2024-05-01",
"api-version", "2025-07-01",
required=True,
),
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,9 @@ class List(AAZCommand):
"""

_aaz_info = {
"version": "2024-05-01",
"version": "2025-07-01",
"resources": [
["mgmt-plane", "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/networkmanagers/{}/routingconfigurations/{}/rulecollections/{}/rules", "2024-05-01"],
["mgmt-plane", "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/networkmanagers/{}/routingconfigurations/{}/rulecollections/{}/rules", "2025-07-01"],
]
}

Expand Down Expand Up @@ -167,7 +167,7 @@ def query_parameters(self):
"$top", self.ctx.args.top,
),
**self.serialize_query_param(
"api-version", "2024-05-01",
"api-version", "2025-07-01",
required=True,
),
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,9 @@ class Show(AAZCommand):
"""

_aaz_info = {
"version": "2024-05-01",
"version": "2025-07-01",
"resources": [
["mgmt-plane", "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/networkmanagers/{}/routingconfigurations/{}/rulecollections/{}/rules/{}", "2024-05-01"],
["mgmt-plane", "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/networkmanagers/{}/routingconfigurations/{}/rulecollections/{}/rules/{}", "2025-07-01"],
]
}

Expand Down Expand Up @@ -163,7 +163,7 @@ def url_parameters(self):
def query_parameters(self):
parameters = {
**self.serialize_query_param(
"api-version", "2024-05-01",
"api-version", "2025-07-01",
required=True,
),
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,9 @@ class Update(AAZCommand):
"""

_aaz_info = {
"version": "2024-05-01",
"version": "2025-07-01",
"resources": [
["mgmt-plane", "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/networkmanagers/{}/routingconfigurations/{}/rulecollections/{}/rules/{}", "2024-05-01"],
["mgmt-plane", "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/networkmanagers/{}/routingconfigurations/{}/rulecollections/{}/rules/{}", "2025-07-01"],
]
}

Expand Down Expand Up @@ -121,7 +121,7 @@ def _build_arguments_schema(cls, *args, **kwargs):
next_hop = cls._args_schema.next_hop
next_hop.next_hop_address = AAZStrArg(
options=["next-hop-address"],
help="Next hop address. Only relevant if the next hop type is VirtualAppliance.",
help="Next hop address. Only relevant if the next hop type is VirtualAppliance. Supports comma-separated IP addresses for ECMP scenarios (e.g., '10.1.0.4,10.1.0.5,10.1.0.6').",
nullable=True,
)
next_hop.next_hop_type = AAZStrArg(
Expand Down Expand Up @@ -221,7 +221,7 @@ def url_parameters(self):
def query_parameters(self):
parameters = {
**self.serialize_query_param(
"api-version", "2024-05-01",
"api-version", "2025-07-01",
required=True,
),
}
Expand Down Expand Up @@ -316,7 +316,7 @@ def url_parameters(self):
def query_parameters(self):
parameters = {
**self.serialize_query_param(
"api-version", "2024-05-01",
"api-version", "2025-07-01",
required=True,
),
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ class Wait(AAZWaitCommand):

_aaz_info = {
"resources": [
["mgmt-plane", "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/networkmanagers/{}/routingconfigurations/{}/rulecollections/{}/rules/{}", "2024-05-01"],
["mgmt-plane", "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/networkmanagers/{}/routingconfigurations/{}/rulecollections/{}/rules/{}", "2025-07-01"],
]
}

Expand Down Expand Up @@ -158,7 +158,7 @@ def url_parameters(self):
def query_parameters(self):
parameters = {
**self.serialize_query_param(
"api-version", "2024-05-01",
"api-version", "2025-07-01",
required=True,
),
}
Expand Down
Loading
Loading