Skip to content
Merged
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
8 changes: 7 additions & 1 deletion src/managednetworkfabric/HISTORY.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,12 @@

Release History
===============

7.0.0
++++++
* This version requires a minimum of 2.66 Azure core CLI. See release notes for more details: https://github.com/MicrosoftDocs/azure-docs-cli/blob/main/docs-ref-conceptual/release-notes-azure-cli.md
* This version upgrades the internal generation tool aaz-dev-tools to 3.1.0. Refer to the release notes for more details: https://github.com/Azure/aaz-dev-tools/releases/tag/v3.1.0.

6.4.0
++++++
* Updating release version to be in sync with 6.4 RP release
Expand Down Expand Up @@ -31,7 +37,7 @@ Release History
++++++
* Added device run ro support
* Allowed null values for acl ids in nni

5.0.0
++++++
* Added Resync functionality for Network taps and Network tap rules
Expand Down
46 changes: 23 additions & 23 deletions src/managednetworkfabric/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,26 +19,26 @@ az networkfabric --help

Below is a high-level overview of managednetworkfabric commands.

| Commands | Description|
| ------------- | ------------- |
| az networkfabric acl | Manage Access Control List Resource. |
| az networkfabric controller | Manage Network Fabric Controller Resource. |
| az networkfabric device | Manage Network Device Resource. |
| az networkfabric externalnetwork | Manage External Network Resource. |
| az networkfabric fabric | Manage Network Fabric Resource. |
| az networkfabric interface | Manage Network Interface Resource. |
| az networkfabric internalnetwork | Manage Internal Network Resource. |
| az networkfabric internetgateway | Manage Internet Gateway Resource. |
| az networkfabric internetgatewayrule | Manage Internet Gateway Rule Resource. |
| az networkfabric ipcommunity | Manage Ip Community Resource. |
| az networkfabric ipextendedcommunity | Manage Ip Extended Community Resource. |
| az networkfabric ipprefix | Manage Ip Prefix Resource. |
| az networkfabric l2domain | Manage L2 Isolation Domain Resource. |
| az networkfabric l3domain | Manage L3 Isolation Domain Resource. |
| az networkfabric neighborgroup | Manage Neighbor Group Resource. |
| az networkfabric nni | Manage Network To Network Interconnect Resource. |
| az networkfabric npb | Manage Network Packet Broker Resource. |
| az networkfabric rack | Manage Network Rack Resource. |
| az networkfabric routepolicy | Manage Route Policy Resource. |
| az networkfabric tap | Manage Network Tap Resource. |
| az networkfabric taprule | Manage Network Tap Rule Resource. |
| Commands | Description |
|--------------------------------------|--------------------------------------------------|
| az networkfabric acl | Manage Access Control List Resource. |
| az networkfabric controller | Manage Network Fabric Controller Resource. |
| az networkfabric device | Manage Network Device Resource. |
| az networkfabric externalnetwork | Manage External Network Resource. |
| az networkfabric fabric | Manage Network Fabric Resource. |
| az networkfabric interface | Manage Network Interface Resource. |
| az networkfabric internalnetwork | Manage Internal Network Resource. |
| az networkfabric internetgateway | Manage Internet Gateway Resource. |
| az networkfabric internetgatewayrule | Manage Internet Gateway Rule Resource. |
| az networkfabric ipcommunity | Manage Ip Community Resource. |
| az networkfabric ipextendedcommunity | Manage Ip Extended Community Resource. |
| az networkfabric ipprefix | Manage Ip Prefix Resource. |
| az networkfabric l2domain | Manage L2 Isolation Domain Resource. |
| az networkfabric l3domain | Manage L3 Isolation Domain Resource. |
| az networkfabric neighborgroup | Manage Neighbor Group Resource. |
| az networkfabric nni | Manage Network To Network Interconnect Resource. |
| az networkfabric npb | Manage Network Packet Broker Resource. |
| az networkfabric rack | Manage Network Rack Resource. |
| az networkfabric routepolicy | Manage Route Policy Resource. |
| az networkfabric tap | Manage Network Tap Resource. |
| az networkfabric taprule | Manage Network Tap Rule Resource. |
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,7 @@
#
# Code generated by aaz-dev-tools
# --------------------------------------------------------------------------------------------

# pylint: skip-file
# flake8: noqa

Original file line number Diff line number Diff line change
Expand Up @@ -113,11 +113,17 @@ def _build_arguments_schema(cls, *args, **kwargs):
options=["--dynamic-match-configurations"],
arg_group="Properties",
help="List of dynamic match configurations.",
fmt=AAZListArgFormat(
min_length=1,
),
)
_args_schema.match_configurations = AAZListArg(
options=["--match-configurations"],
arg_group="Properties",
help="List of match configurations.",
fmt=AAZListArgFormat(
min_length=1,
),
)

dynamic_match_configurations = cls._args_schema.dynamic_match_configurations
Expand All @@ -127,14 +133,23 @@ def _build_arguments_schema(cls, *args, **kwargs):
_element.ip_groups = AAZListArg(
options=["ip-groups"],
help="List of IP Groups.",
fmt=AAZListArgFormat(
min_length=1,
),
)
_element.port_groups = AAZListArg(
options=["port-groups"],
help="List of the port groups.",
fmt=AAZListArgFormat(
min_length=1,
),
)
_element.vlan_groups = AAZListArg(
options=["vlan-groups"],
help="List of vlan groups.",
fmt=AAZListArgFormat(
min_length=1,
),
)

ip_groups = cls._args_schema.dynamic_match_configurations.Element.ip_groups
Expand All @@ -152,6 +167,9 @@ def _build_arguments_schema(cls, *args, **kwargs):
_element.ip_prefixes = AAZListArg(
options=["ip-prefixes"],
help="List of IP Prefixes.",
fmt=AAZListArgFormat(
min_length=1,
),
)
_element.name = AAZStrArg(
options=["name"],
Expand Down Expand Up @@ -182,6 +200,9 @@ def _build_arguments_schema(cls, *args, **kwargs):
_element.ports = AAZListArg(
options=["ports"],
help="List of the ports that need to be matched.",
fmt=AAZListArgFormat(
min_length=1,
),
)

ports = cls._args_schema.dynamic_match_configurations.Element.port_groups.Element.ports
Expand All @@ -205,6 +226,9 @@ def _build_arguments_schema(cls, *args, **kwargs):
_element.vlans = AAZListArg(
options=["vlans"],
help="List of vlans.",
fmt=AAZListArgFormat(
min_length=1,
),
)

vlans = cls._args_schema.dynamic_match_configurations.Element.vlan_groups.Element.vlans
Expand All @@ -221,6 +245,9 @@ def _build_arguments_schema(cls, *args, **kwargs):
_element.actions = AAZListArg(
options=["actions"],
help="List of actions that need to be performed for the matched conditions.",
fmt=AAZListArgFormat(
min_length=1,
),
)
_element.ip_address_type = AAZStrArg(
options=["ip-address-type"],
Expand All @@ -233,6 +260,9 @@ def _build_arguments_schema(cls, *args, **kwargs):
_element.match_conditions = AAZListArg(
options=["match-conditions"],
help="List of the match conditions.",
fmt=AAZListArgFormat(
min_length=1,
),
)
_element.match_configuration_name = AAZStrArg(
options=["match-configuration-name"],
Expand Down Expand Up @@ -277,14 +307,23 @@ def _build_arguments_schema(cls, *args, **kwargs):
_element.dscp_markings = AAZListArg(
options=["dscp-markings"],
help="List of DSCP Markings that need to be matched.",
fmt=AAZListArgFormat(
min_length=1,
),
)
_element.ether_types = AAZListArg(
options=["ether-types"],
help="List of ether type values that need to be matched.",
fmt=AAZListArgFormat(
min_length=1,
),
)
_element.fragments = AAZListArg(
options=["fragments"],
help="List of IP fragment packets that need to be matched.",
fmt=AAZListArgFormat(
min_length=1,
),
)
_element.ip_condition = AAZObjectArg(
options=["ip-condition"],
Expand All @@ -293,6 +332,9 @@ def _build_arguments_schema(cls, *args, **kwargs):
_element.ip_lengths = AAZListArg(
options=["ip-lengths"],
help="List of IP Lengths that need to be matched.",
fmt=AAZListArgFormat(
min_length=1,
),
)
_element.port_condition = AAZObjectArg(
options=["port-condition"],
Expand All @@ -301,10 +343,16 @@ def _build_arguments_schema(cls, *args, **kwargs):
_element.protocol_types = AAZListArg(
options=["protocol-types"],
help="List of the protocols that need to be matched.",
fmt=AAZListArgFormat(
min_length=1,
),
)
_element.ttl_values = AAZListArg(
options=["ttl-values"],
help="List of TTL [Time To Live] values that need to be matched.",
fmt=AAZListArgFormat(
min_length=1,
),
)
_element.vlan_match_condition = AAZObjectArg(
options=["vlan-match-condition"],
Expand Down Expand Up @@ -336,10 +384,16 @@ def _build_arguments_schema(cls, *args, **kwargs):
ip_condition.ip_group_names = AAZListArg(
options=["ip-group-names"],
help="The List of IP Group Names that need to be matched.",
fmt=AAZListArgFormat(
min_length=1,
),
)
ip_condition.ip_prefix_values = AAZListArg(
options=["ip-prefix-values"],
help="The list of IP Prefixes that need to be matched.",
fmt=AAZListArgFormat(
min_length=1,
),
)
ip_condition.prefix_type = AAZStrArg(
options=["prefix-type"],
Expand Down Expand Up @@ -396,6 +450,9 @@ def _build_arguments_schema(cls, *args, **kwargs):
port_condition.port_group_names = AAZListArg(
options=["port-group-names"],
help="List of the port Group Names that need to be matched.",
fmt=AAZListArgFormat(
min_length=1,
),
)
port_condition.port_type = AAZStrArg(
options=["port-type"],
Expand All @@ -408,6 +465,9 @@ def _build_arguments_schema(cls, *args, **kwargs):
port_condition.ports = AAZListArg(
options=["ports"],
help="List of the Ports that need to be matched.",
fmt=AAZListArgFormat(
min_length=1,
),
)

flags = cls._args_schema.match_configurations.Element.match_conditions.Element.port_condition.flags
Expand Down Expand Up @@ -445,14 +505,23 @@ def _build_arguments_schema(cls, *args, **kwargs):
vlan_match_condition.inner_vlans = AAZListArg(
options=["inner-vlans"],
help="List of inner vlans that need to be matched.",
fmt=AAZListArgFormat(
min_length=1,
),
)
vlan_match_condition.vlan_group_names = AAZListArg(
options=["vlan-group-names"],
help="List of vlan group names that need to be matched.",
fmt=AAZListArgFormat(
min_length=1,
),
)
vlan_match_condition.vlans = AAZListArg(
options=["vlans"],
help="List of vlans that need to be matched.",
fmt=AAZListArgFormat(
min_length=1,
),
)

inner_vlans = cls._args_schema.match_configurations.Element.match_conditions.Element.vlan_match_condition.inner_vlans
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@ class List(AAZCommand):
]
}

AZ_SUPPORT_PAGINATION = True

def _handler(self, command_args):
super()._handler(command_args)
return self.build_paging(self._execute_operations, self._output)
Expand All @@ -52,12 +54,12 @@ def _build_arguments_schema(cls, *args, **kwargs):

def _execute_operations(self):
self.pre_operations()
condition_0 = has_value(self.ctx.args.resource_group) and has_value(self.ctx.subscription_id)
condition_1 = has_value(self.ctx.subscription_id) and has_value(self.ctx.args.resource_group) is not True
condition_0 = has_value(self.ctx.subscription_id) and has_value(self.ctx.args.resource_group) is not True
condition_1 = has_value(self.ctx.args.resource_group) and has_value(self.ctx.subscription_id)
if condition_0:
self.AccessControlListsListByResourceGroup(ctx=self.ctx)()
if condition_1:
self.AccessControlListsListBySubscription(ctx=self.ctx)()
if condition_1:
self.AccessControlListsListByResourceGroup(ctx=self.ctx)()
self.post_operations()

@register_callback
Expand All @@ -73,7 +75,7 @@ def _output(self, *args, **kwargs):
next_link = self.deserialize_output(self.ctx.vars.instance.next_link)
return result, next_link

class AccessControlListsListByResourceGroup(AAZHttpOperation):
class AccessControlListsListBySubscription(AAZHttpOperation):
CLIENT_TYPE = "MgmtClient"

def __call__(self, *args, **kwargs):
Expand All @@ -87,7 +89,7 @@ def __call__(self, *args, **kwargs):
@property
def url(self):
return self.client.format_url(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedNetworkFabric/accessControlLists",
"/subscriptions/{subscriptionId}/providers/Microsoft.ManagedNetworkFabric/accessControlLists",
**self.url_parameters
)

Expand All @@ -102,10 +104,6 @@ def error_format(self):
@property
def url_parameters(self):
parameters = {
**self.serialize_url_param(
"resourceGroupName", self.ctx.args.resource_group,
required=True,
),
**self.serialize_url_param(
"subscriptionId", self.ctx.subscription_id,
required=True,
Expand Down Expand Up @@ -423,7 +421,7 @@ def _build_schema_on_200(cls):

return cls._schema_on_200

class AccessControlListsListBySubscription(AAZHttpOperation):
class AccessControlListsListByResourceGroup(AAZHttpOperation):
CLIENT_TYPE = "MgmtClient"

def __call__(self, *args, **kwargs):
Expand All @@ -437,7 +435,7 @@ def __call__(self, *args, **kwargs):
@property
def url(self):
return self.client.format_url(
"/subscriptions/{subscriptionId}/providers/Microsoft.ManagedNetworkFabric/accessControlLists",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedNetworkFabric/accessControlLists",
**self.url_parameters
)

Expand All @@ -452,6 +450,10 @@ def error_format(self):
@property
def url_parameters(self):
parameters = {
**self.serialize_url_param(
"resourceGroupName", self.ctx.args.resource_group,
required=True,
),
**self.serialize_url_param(
"subscriptionId", self.ctx.subscription_id,
required=True,
Expand Down
Loading