From 3c71198f0cd346131dba4e5e79b2bb008bd13ac5 Mon Sep 17 00:00:00 2001 From: Shivani-gslab Date: Mon, 15 Jul 2024 15:46:01 +0530 Subject: [PATCH] fixing the schema --- .../docs/tables/ethernet-interfaces.md | 58 ++--- .../docs/tables/port-channel-interfaces.md | 58 ++--- .../schema/eos_cli_config_gen.jsonschema.json | 66 +++-- .../schema/eos_cli_config_gen.schema.yml | 78 ++++-- .../ethernet_interfaces.schema.yml | 38 ++- .../port_channel_interfaces.schema.yml | 38 ++- .../schema/eos_designs.jsonschema.json | 231 ++++++++++++++---- 7 files changed, 420 insertions(+), 147 deletions(-) diff --git a/ansible_collections/arista/avd/roles/eos_cli_config_gen/docs/tables/ethernet-interfaces.md b/ansible_collections/arista/avd/roles/eos_cli_config_gen/docs/tables/ethernet-interfaces.md index 471b9a69c6e..1b33793ce5f 100644 --- a/ansible_collections/arista/avd/roles/eos_cli_config_gen/docs/tables/ethernet-interfaces.md +++ b/ansible_collections/arista/avd/roles/eos_cli_config_gen/docs/tables/ethernet-interfaces.md @@ -417,7 +417,7 @@ | [          - <str>](## "ethernet_interfaces.[].switchport.trunk.groups.[]") | String | | | | Trunk group name.
Warning: This should not be combined with `ethernet_ineterfaces[].trunk_groups`. | | [      dot1q](## "ethernet_interfaces.[].switchport.dot1q") | Dictionary | | | | | | [        ethertype](## "ethernet_interfaces.[].switchport.dot1q.ethertype") | Integer | | | Min: 1536
Max: 65535 | Ethertype/TPID (Tag Protocol IDentifier) for VLAN tagged frames. | - | [        vlan_tag](## "ethernet_interfaces.[].switchport.dot1q.vlan_tag") | String | | | Valid Values:
- disallowed
- required | Allow/disallow VLAN tagged Frames. | + | [        vlan_tag](## "ethernet_interfaces.[].switchport.dot1q.vlan_tag") | String | | | Valid Values:
- disallowed
- required | Allow/disallow VLAN tagged frames. | | [      source_interface](## "ethernet_interfaces.[].switchport.source_interface") | String | | | Valid Values:
- tx
- tx multicast | tx: Allow bridged packets to go out of the source interface.
tx multicast: Allow multicast packets only to go out of the source interface. | | [      access_vlan](## "ethernet_interfaces.[].switchport.access_vlan") | Integer | | | Min: 1
Max: 4094 | Set VLAN when interface is in access mode.
Warning: This should not be combined with `ethernet_interfaces[].mode = access/dot1q-tunnel`. | | [      phone](## "ethernet_interfaces.[].switchport.phone") | Dictionary | | | | | @@ -428,29 +428,29 @@ | [      vlan_translations](## "ethernet_interfaces.[].switchport.vlan_translations") | Dictionary | | | | Warning: This should not be combined with `ethernet_interfaces[].vlan_translations`. | | [        direction_in](## "ethernet_interfaces.[].switchport.vlan_translations.direction_in") | List, items: Dictionary | | | | Map ingress packets only. | | [          - required](## "ethernet_interfaces.[].switchport.vlan_translations.direction_in.[].required") | Boolean | | | | Drop the packets that do not match any VLAN mapping. | - | [            from](## "ethernet_interfaces.[].switchport.vlan_translations.direction_in.[].from") | Integer | | | | VLAN ID or range of VLAN IDs to map from. | - | [            to](## "ethernet_interfaces.[].switchport.vlan_translations.direction_in.[].to") | Integer | | | | VLAN ID to map to. | + | [            from](## "ethernet_interfaces.[].switchport.vlan_translations.direction_in.[].from") | Integer | | | Min: 1
Max: 4094 | VLAN ID or range of VLAN IDs to map from. | + | [            to](## "ethernet_interfaces.[].switchport.vlan_translations.direction_in.[].to") | Integer | | | Min: 1
Max: 4094 | VLAN ID to map to. | | [            dot1q_tunnel](## "ethernet_interfaces.[].switchport.vlan_translations.direction_in.[].dot1q_tunnel") | Boolean | | | | | - | [            inner_from](## "ethernet_interfaces.[].switchport.vlan_translations.direction_in.[].inner_from") | Integer | | | | Inner VLAN ID to map from. | + | [            inner_from](## "ethernet_interfaces.[].switchport.vlan_translations.direction_in.[].inner_from") | Integer | | | Min: 1
Max: 4094 | Inner VLAN ID to map from. | | [        direction_out](## "ethernet_interfaces.[].switchport.vlan_translations.direction_out") | List, items: Dictionary | | | | Map egress packets only. | - | [          - from](## "ethernet_interfaces.[].switchport.vlan_translations.direction_out.[].from") | Integer | Required | | | VLAN ID or range of VLAN IDs to map from. | - | [            to](## "ethernet_interfaces.[].switchport.vlan_translations.direction_out.[].to") | Integer | | | | VLAN ID to map to. | + | [          - from](## "ethernet_interfaces.[].switchport.vlan_translations.direction_out.[].from") | Integer | Required | | Min: 1
Max: 4094 | VLAN ID or range of VLAN IDs to map from. | + | [            to](## "ethernet_interfaces.[].switchport.vlan_translations.direction_out.[].to") | Integer | | | Min: 1
Max: 4094 | VLAN ID to map to. | | [            dot1q_tunnel](## "ethernet_interfaces.[].switchport.vlan_translations.direction_out.[].dot1q_tunnel") | Dictionary | | | | | | [              all](## "ethernet_interfaces.[].switchport.vlan_translations.direction_out.[].dot1q_tunnel.all") | Boolean | | | | | - | [              to](## "ethernet_interfaces.[].switchport.vlan_translations.direction_out.[].dot1q_tunnel.to") | Integer | | | | VLAN ID or range(s) of VLAN IDs to map to. | - | [            inner_to](## "ethernet_interfaces.[].switchport.vlan_translations.direction_out.[].inner_to") | Integer | | | | Inner VLAN ID to map to. | + | [              to](## "ethernet_interfaces.[].switchport.vlan_translations.direction_out.[].dot1q_tunnel.to") | Integer | | | Min: 1
Max: 4094 | VLAN ID or range(s) of VLAN IDs to map to. | + | [            inner_to](## "ethernet_interfaces.[].switchport.vlan_translations.direction_out.[].inner_to") | Integer | | | Min: 1
Max: 4094 | Inner VLAN ID to map to. | | [        direction_both](## "ethernet_interfaces.[].switchport.vlan_translations.direction_both") | List, items: Dictionary | | | | Map both egress and ingress packets. | - | [          - from](## "ethernet_interfaces.[].switchport.vlan_translations.direction_both.[].from") | Integer | Required | | | VLAN ID or range of VLAN IDs to map from. | - | [            to](## "ethernet_interfaces.[].switchport.vlan_translations.direction_both.[].to") | Integer | Required | | | VLAN ID to map to. | + | [          - from](## "ethernet_interfaces.[].switchport.vlan_translations.direction_both.[].from") | Integer | Required | | Min: 1
Max: 4094 | VLAN ID or range of VLAN IDs to map from. | + | [            to](## "ethernet_interfaces.[].switchport.vlan_translations.direction_both.[].to") | Integer | Required | | Min: 1
Max: 4094 | VLAN ID to map to. | | [            dot1q_tunnel](## "ethernet_interfaces.[].switchport.vlan_translations.direction_both.[].dot1q_tunnel") | Boolean | | | | | - | [            inner_from](## "ethernet_interfaces.[].switchport.vlan_translations.direction_both.[].inner_from") | Integer | | | | Inner VLAN ID to map from. | - | [            network](## "ethernet_interfaces.[].switchport.vlan_translations.direction_both.[].network") | Boolean | | | | Use network-side VLAN ID. | + | [            inner_from](## "ethernet_interfaces.[].switchport.vlan_translations.direction_both.[].inner_from") | Integer | | | Min: 1
Max: 4094 | Inner VLAN ID to map from. | + | [            network](## "ethernet_interfaces.[].switchport.vlan_translations.direction_both.[].network") | Boolean | | | | Enable use of network-side VLAN ID.
This setting can be enabled only when inner_from is defined. | | [      vlan_forwarding_accept_all](## "ethernet_interfaces.[].switchport.vlan_forwarding_accept_all") | Boolean | | | | | | [      backup_link](## "ethernet_interfaces.[].switchport.backup_link") | Dictionary | | | | | | [        interface](## "ethernet_interfaces.[].switchport.backup_link.interface") | String | | | | Backup interface. Example - Ethernet4, Vlan10 etc. | - | [        prefer_vlan](## "ethernet_interfaces.[].switchport.backup_link.prefer_vlan") | Integer | | | Min: 1
Max: 4094 | VLANs to carry on the backup interface. | + | [        prefer_vlan](## "ethernet_interfaces.[].switchport.backup_link.prefer_vlan") | String | | | | VLANs to carry on the backup interface (1-4094). | | [      backup](## "ethernet_interfaces.[].switchport.backup") | Dictionary | | | | The `backup_link` is required for this setting. | - | [        dest_macaddr](## "ethernet_interfaces.[].switchport.backup.dest_macaddr") | String | | | | Destination MAC address for MAC move updates.
Example: 01:00:00:00:00:00 | + | [        dest_macaddr](## "ethernet_interfaces.[].switchport.backup.dest_macaddr") | String | | | Pattern: ^([0-9a-f]{2}:){5}[0-9a-f]{2}$ | Destination MAC address for MAC move updates.
The mac address should be multicast or broadcast.
Example: 01:00:00:00:00:00 | | [        initial_mac_move_delay](## "ethernet_interfaces.[].switchport.backup.initial_mac_move_delay") | Integer | | | Min: 0
Max: 65535 | Initial MAC move delay in milliseconds. | | [        mac_move_burst](## "ethernet_interfaces.[].switchport.backup.mac_move_burst") | Integer | | | Min: 0
Max: 65535 | Size of MAC move bursts in milliseconds. | | [        mac_move_burst_interval](## "ethernet_interfaces.[].switchport.backup.mac_move_burst_interval") | Integer | | | Min: 0
Max: 65535 | MAC move burst interval in milliseconds. | @@ -1234,7 +1234,7 @@ # Ethertype/TPID (Tag Protocol IDentifier) for VLAN tagged frames. ethertype: - # Allow/disallow VLAN tagged Frames. + # Allow/disallow VLAN tagged frames. vlan_tag: # tx: Allow bridged packets to go out of the source interface. @@ -1269,46 +1269,47 @@ - required: # VLAN ID or range of VLAN IDs to map from. - from: + from: # VLAN ID to map to. - to: + to: dot1q_tunnel: # Inner VLAN ID to map from. - inner_from: + inner_from: # Map egress packets only. direction_out: # VLAN ID or range of VLAN IDs to map from. - - from: + - from: # VLAN ID to map to. - to: + to: dot1q_tunnel: all: # VLAN ID or range(s) of VLAN IDs to map to. - to: + to: # Inner VLAN ID to map to. - inner_to: + inner_to: # Map both egress and ingress packets. direction_both: # VLAN ID or range of VLAN IDs to map from. - - from: + - from: # VLAN ID to map to. - to: + to: dot1q_tunnel: # Inner VLAN ID to map from. - inner_from: + inner_from: - # Use network-side VLAN ID. + # Enable use of network-side VLAN ID. + # This setting can be enabled only when inner_from is defined. network: vlan_forwarding_accept_all: backup_link: @@ -1316,13 +1317,14 @@ # Backup interface. Example - Ethernet4, Vlan10 etc. interface: - # VLANs to carry on the backup interface. - prefer_vlan: + # VLANs to carry on the backup interface (1-4094). + prefer_vlan: # The `backup_link` is required for this setting. backup: # Destination MAC address for MAC move updates. + # The mac address should be multicast or broadcast. # Example: 01:00:00:00:00:00 dest_macaddr: diff --git a/ansible_collections/arista/avd/roles/eos_cli_config_gen/docs/tables/port-channel-interfaces.md b/ansible_collections/arista/avd/roles/eos_cli_config_gen/docs/tables/port-channel-interfaces.md index be0d6ff63ec..73a7108748d 100644 --- a/ansible_collections/arista/avd/roles/eos_cli_config_gen/docs/tables/port-channel-interfaces.md +++ b/ansible_collections/arista/avd/roles/eos_cli_config_gen/docs/tables/port-channel-interfaces.md @@ -260,7 +260,7 @@ | [          - range](## "port_channel_interfaces.[].switchport.port_security.vlans.[].range") | String | Required, Unique | | | VLAN ID or range(s) of VLAN IDs, <1-4094>.
Example:
- 3
- 1,3
- 1-10
| | [            mac_address_maximum](## "port_channel_interfaces.[].switchport.port_security.vlans.[].mac_address_maximum") | Integer | | | | | | [      trunk](## "port_channel_interfaces.[].switchport.trunk") | Dictionary | | | | | - | [        allowed_vlan](## "port_channel_interfaces.[].switchport.trunk.allowed_vlan") | String | | | | VLAN ID or range(s) of VLAN IDs.
Warning: This should not be combined with `port_channel_interfaces.mode = trunk`. | + | [        allowed_vlan](## "port_channel_interfaces.[].switchport.trunk.allowed_vlan") | String | | | | VLAN ID or range(s) of VLAN IDs (1-4094).
Warning: This should not be combined with `port_channel_interfaces.mode = trunk`. | | [        native_vlan](## "port_channel_interfaces.[].switchport.trunk.native_vlan") | Integer | | | Min: 1
Max: 4094 | Set native VLAN when interface is in trunking mode.
Warning: This should not be combined with `port_channel_interfaces[].native_vlan`. | | [        native_vlan_tag](## "port_channel_interfaces.[].switchport.trunk.native_vlan_tag") | Boolean | | | | If setting both native_vlan and native_vlan_tag, native_vlan_tag takes precedence.
Warning: This should not be combined with `port_channel_interfaces[].native_vlan_tag`. | | [        private_vlan_secondary](## "port_channel_interfaces.[].switchport.trunk.private_vlan_secondary") | Boolean | | | | Enable secondary VLAN mapping for a private vlan.
Warning: This should not be combined with `port_channel_interfaces[].trunk_private_vlan_secondary`. | @@ -279,29 +279,29 @@ | [      vlan_translations](## "port_channel_interfaces.[].switchport.vlan_translations") | Dictionary | | | | Warning: This should not be combined with `port_channel_interfaces[].vlan_translations`. | | [        direction_in](## "port_channel_interfaces.[].switchport.vlan_translations.direction_in") | List, items: Dictionary | | | | Map ingress packets only. | | [          - required](## "port_channel_interfaces.[].switchport.vlan_translations.direction_in.[].required") | Boolean | | | | Drop the packets that do not match any VLAN mapping. | - | [            from](## "port_channel_interfaces.[].switchport.vlan_translations.direction_in.[].from") | Integer | | | | VLAN ID or range of VLAN IDs to map from. | - | [            to](## "port_channel_interfaces.[].switchport.vlan_translations.direction_in.[].to") | Integer | | | | VLAN ID to map to. | + | [            from](## "port_channel_interfaces.[].switchport.vlan_translations.direction_in.[].from") | Integer | | | Min: 1
Max: 4094 | VLAN ID or range of VLAN IDs to map from. | + | [            to](## "port_channel_interfaces.[].switchport.vlan_translations.direction_in.[].to") | Integer | | | Min: 1
Max: 4094 | VLAN ID to map to. | | [            dot1q_tunnel](## "port_channel_interfaces.[].switchport.vlan_translations.direction_in.[].dot1q_tunnel") | Boolean | | | | | - | [            inner_from](## "port_channel_interfaces.[].switchport.vlan_translations.direction_in.[].inner_from") | Integer | | | | Inner VLAN ID to map from. | + | [            inner_from](## "port_channel_interfaces.[].switchport.vlan_translations.direction_in.[].inner_from") | Integer | | | Min: 1
Max: 4094 | Inner VLAN ID to map from. | | [        direction_out](## "port_channel_interfaces.[].switchport.vlan_translations.direction_out") | List, items: Dictionary | | | | Map egress packets only. | - | [          - from](## "port_channel_interfaces.[].switchport.vlan_translations.direction_out.[].from") | Integer | Required | | | VLAN ID or range of VLAN IDs to map from. | - | [            to](## "port_channel_interfaces.[].switchport.vlan_translations.direction_out.[].to") | Integer | | | | VLAN ID to map to. | + | [          - from](## "port_channel_interfaces.[].switchport.vlan_translations.direction_out.[].from") | Integer | Required | | Min: 1
Max: 4094 | VLAN ID or range of VLAN IDs to map from. | + | [            to](## "port_channel_interfaces.[].switchport.vlan_translations.direction_out.[].to") | Integer | | | Min: 1
Max: 4094 | VLAN ID to map to. | | [            dot1q_tunnel](## "port_channel_interfaces.[].switchport.vlan_translations.direction_out.[].dot1q_tunnel") | Dictionary | | | | | | [              all](## "port_channel_interfaces.[].switchport.vlan_translations.direction_out.[].dot1q_tunnel.all") | Boolean | | | | | - | [              to](## "port_channel_interfaces.[].switchport.vlan_translations.direction_out.[].dot1q_tunnel.to") | Integer | | | | VLAN ID or range(s) of VLAN IDs to map to. | - | [            inner_to](## "port_channel_interfaces.[].switchport.vlan_translations.direction_out.[].inner_to") | Integer | | | | Inner VLAN ID to map to. | + | [              to](## "port_channel_interfaces.[].switchport.vlan_translations.direction_out.[].dot1q_tunnel.to") | Integer | | | Min: 1
Max: 4094 | VLAN ID or range(s) of VLAN IDs to map to. | + | [            inner_to](## "port_channel_interfaces.[].switchport.vlan_translations.direction_out.[].inner_to") | Integer | | | Min: 1
Max: 4094 | Inner VLAN ID to map to. | | [        direction_both](## "port_channel_interfaces.[].switchport.vlan_translations.direction_both") | List, items: Dictionary | | | | Map both egress and ingress packets. | - | [          - from](## "port_channel_interfaces.[].switchport.vlan_translations.direction_both.[].from") | Integer | Required | | | VLAN ID or range of VLAN IDs to map from. | - | [            to](## "port_channel_interfaces.[].switchport.vlan_translations.direction_both.[].to") | Integer | Required | | | VLAN ID to map to. | + | [          - from](## "port_channel_interfaces.[].switchport.vlan_translations.direction_both.[].from") | Integer | Required | | Min: 1
Max: 4094 | VLAN ID or range of VLAN IDs to map from. | + | [            to](## "port_channel_interfaces.[].switchport.vlan_translations.direction_both.[].to") | Integer | Required | | Min: 1
Max: 4094 | VLAN ID to map to. | | [            dot1q_tunnel](## "port_channel_interfaces.[].switchport.vlan_translations.direction_both.[].dot1q_tunnel") | Boolean | | | | | - | [            inner_from](## "port_channel_interfaces.[].switchport.vlan_translations.direction_both.[].inner_from") | Integer | | | | Inner VLAN ID to map from. | - | [            network](## "port_channel_interfaces.[].switchport.vlan_translations.direction_both.[].network") | Boolean | | | | Use network-side VLAN ID. | + | [            inner_from](## "port_channel_interfaces.[].switchport.vlan_translations.direction_both.[].inner_from") | Integer | | | Min: 1
Max: 4094 | Inner VLAN ID to map from. | + | [            network](## "port_channel_interfaces.[].switchport.vlan_translations.direction_both.[].network") | Boolean | | | | Enable use of network-side VLAN ID.
This setting can be enabled only when inner_from is defined. | | [      vlan_forwarding_accept_all](## "port_channel_interfaces.[].switchport.vlan_forwarding_accept_all") | Boolean | | | | | | [      backup_link](## "port_channel_interfaces.[].switchport.backup_link") | Dictionary | | | | | | [        interface](## "port_channel_interfaces.[].switchport.backup_link.interface") | String | Required | | | Backup interface. Example - Ethernet4, Vlan10 etc. | - | [        prefer_vlan](## "port_channel_interfaces.[].switchport.backup_link.prefer_vlan") | Integer | | | Min: 1
Max: 4094 | VLANs to carry on the backup interface. | + | [        prefer_vlan](## "port_channel_interfaces.[].switchport.backup_link.prefer_vlan") | String | | | | VLANs to carry on the backup interface (1-4094). | | [      backup](## "port_channel_interfaces.[].switchport.backup") | Dictionary | | | | The `backup_link` is required for this setting. | - | [        dest_macaddr](## "port_channel_interfaces.[].switchport.backup.dest_macaddr") | String | | | | Destination MAC address for MAC move updates.
Example: 01:00:00:00:00:00 | + | [        dest_macaddr](## "port_channel_interfaces.[].switchport.backup.dest_macaddr") | String | | | Pattern: ^([0-9a-f]{2}:){5}[0-9a-f]{2}$ | Destination MAC address for MAC move updates.
The mac address should be multicast or broadcast.
Example: 01:00:00:00:00:00 | | [        initial_mac_move_delay](## "port_channel_interfaces.[].switchport.backup.initial_mac_move_delay") | Integer | | | Min: 0
Max: 65535 | Initial MAC move delay in milliseconds. | | [        mac_move_burst](## "port_channel_interfaces.[].switchport.backup.mac_move_burst") | Integer | | | Min: 0
Max: 65535 | Size of MAC move bursts in milliseconds. | | [        mac_move_burst_interval](## "port_channel_interfaces.[].switchport.backup.mac_move_burst_interval") | Integer | | | Min: 0
Max: 65535 | MAC move burst interval in milliseconds. | @@ -807,7 +807,7 @@ mac_address_maximum: trunk: - # VLAN ID or range(s) of VLAN IDs. + # VLAN ID or range(s) of VLAN IDs (1-4094). # Warning: This should not be combined with `port_channel_interfaces.mode = trunk`. allowed_vlan: @@ -865,46 +865,47 @@ - required: # VLAN ID or range of VLAN IDs to map from. - from: + from: # VLAN ID to map to. - to: + to: dot1q_tunnel: # Inner VLAN ID to map from. - inner_from: + inner_from: # Map egress packets only. direction_out: # VLAN ID or range of VLAN IDs to map from. - - from: + - from: # VLAN ID to map to. - to: + to: dot1q_tunnel: all: # VLAN ID or range(s) of VLAN IDs to map to. - to: + to: # Inner VLAN ID to map to. - inner_to: + inner_to: # Map both egress and ingress packets. direction_both: # VLAN ID or range of VLAN IDs to map from. - - from: + - from: # VLAN ID to map to. - to: + to: dot1q_tunnel: # Inner VLAN ID to map from. - inner_from: + inner_from: - # Use network-side VLAN ID. + # Enable use of network-side VLAN ID. + # This setting can be enabled only when inner_from is defined. network: vlan_forwarding_accept_all: backup_link: @@ -912,13 +913,14 @@ # Backup interface. Example - Ethernet4, Vlan10 etc. interface: - # VLANs to carry on the backup interface. - prefer_vlan: + # VLANs to carry on the backup interface (1-4094). + prefer_vlan: # The `backup_link` is required for this setting. backup: # Destination MAC address for MAC move updates. + # The mac address should be multicast or broadcast. # Example: 01:00:00:00:00:00 dest_macaddr: diff --git a/python-avd/pyavd/_eos_cli_config_gen/schema/eos_cli_config_gen.jsonschema.json b/python-avd/pyavd/_eos_cli_config_gen/schema/eos_cli_config_gen.jsonschema.json index 17e968291dd..71100f995b2 100644 --- a/python-avd/pyavd/_eos_cli_config_gen/schema/eos_cli_config_gen.jsonschema.json +++ b/python-avd/pyavd/_eos_cli_config_gen/schema/eos_cli_config_gen.jsonschema.json @@ -5781,7 +5781,7 @@ }, "vlan_tag": { "type": "string", - "description": "Allow/disallow VLAN tagged Frames.", + "description": "Allow/disallow VLAN tagged frames.", "enum": [ "disallowed", "required" @@ -5872,11 +5872,15 @@ }, "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -5886,6 +5890,8 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" } @@ -5905,11 +5911,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -5922,6 +5932,8 @@ }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range(s) of VLAN IDs to map to.", "title": "To" } @@ -5934,6 +5946,8 @@ }, "inner_to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map to.", "title": "Inner To" } @@ -5956,11 +5970,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -5970,12 +5988,14 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" }, "network": { "type": "boolean", - "description": "Use network-side VLAN ID.", + "description": "Enable use of network-side VLAN ID.\nThis setting can be enabled only when inner_from is defined.", "title": "Network" } }, @@ -6010,10 +6030,8 @@ "title": "Interface" }, "prefer_vlan": { - "type": "integer", - "minimum": 1, - "maximum": 4094, - "description": "VLANs to carry on the backup interface.", + "type": "string", + "description": "VLANs to carry on the backup interface (1-4094).", "title": "Prefer VLAN" } }, @@ -6029,7 +6047,8 @@ "properties": { "dest_macaddr": { "type": "string", - "description": "Destination MAC address for MAC move updates.\nExample: 01:00:00:00:00:00", + "pattern": "^([0-9a-f]{2}:){5}[0-9a-f]{2}$", + "description": "Destination MAC address for MAC move updates.\nThe mac address should be multicast or broadcast.\nExample: 01:00:00:00:00:00", "title": "Dest Macaddr" }, "initial_mac_move_delay": { @@ -16267,7 +16286,7 @@ "properties": { "allowed_vlan": { "type": "string", - "description": "VLAN ID or range(s) of VLAN IDs.\nWarning: This should not be combined with `port_channel_interfaces.mode = trunk`.", + "description": "VLAN ID or range(s) of VLAN IDs (1-4094).\nWarning: This should not be combined with `port_channel_interfaces.mode = trunk`.", "title": "Allowed VLAN" }, "native_vlan": { @@ -16404,11 +16423,15 @@ }, "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -16418,6 +16441,8 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" } @@ -16437,11 +16462,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -16454,6 +16483,8 @@ }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range(s) of VLAN IDs to map to.", "title": "To" } @@ -16466,6 +16497,8 @@ }, "inner_to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map to.", "title": "Inner To" } @@ -16488,11 +16521,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -16502,12 +16539,14 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" }, "network": { "type": "boolean", - "description": "Use network-side VLAN ID.", + "description": "Enable use of network-side VLAN ID.\nThis setting can be enabled only when inner_from is defined.", "title": "Network" } }, @@ -16542,10 +16581,8 @@ "title": "Interface" }, "prefer_vlan": { - "type": "integer", - "minimum": 1, - "maximum": 4094, - "description": "VLANs to carry on the backup interface.", + "type": "string", + "description": "VLANs to carry on the backup interface (1-4094).", "title": "Prefer VLAN" } }, @@ -16564,7 +16601,8 @@ "properties": { "dest_macaddr": { "type": "string", - "description": "Destination MAC address for MAC move updates.\nExample: 01:00:00:00:00:00", + "pattern": "^([0-9a-f]{2}:){5}[0-9a-f]{2}$", + "description": "Destination MAC address for MAC move updates.\nThe mac address should be multicast or broadcast.\nExample: 01:00:00:00:00:00", "title": "Dest Macaddr" }, "initial_mac_move_delay": { diff --git a/python-avd/pyavd/_eos_cli_config_gen/schema/eos_cli_config_gen.schema.yml b/python-avd/pyavd/_eos_cli_config_gen/schema/eos_cli_config_gen.schema.yml index 0a68d2691f6..2670f2528a6 100644 --- a/python-avd/pyavd/_eos_cli_config_gen/schema/eos_cli_config_gen.schema.yml +++ b/python-avd/pyavd/_eos_cli_config_gen/schema/eos_cli_config_gen.schema.yml @@ -3448,6 +3448,8 @@ keys: keys: allowed_vlan: type: str + convert_types: + - int description: 'VLAN ID or range(s) of VLAN IDs. Warning: This should not be combined with `ethernet_interfaces[].mode @@ -3492,7 +3494,7 @@ keys: frames. vlan_tag: type: str - description: Allow/disallow VLAN tagged Frames. + description: Allow/disallow VLAN tagged frames. valid_values: - disallowed - required @@ -3565,16 +3567,22 @@ keys: type: int convert_types: - str + min: 1 + max: 4094 description: VLAN ID or range of VLAN IDs to map from. to: type: int convert_types: - str + min: 1 + max: 4094 description: VLAN ID to map to. dot1q_tunnel: type: bool inner_from: type: int + min: 1 + max: 4094 convert_types: - str description: Inner VLAN ID to map from. @@ -3588,12 +3596,16 @@ keys: type: int convert_types: - str + min: 1 + max: 4094 description: VLAN ID or range of VLAN IDs to map from. required: true to: type: int convert_types: - str + min: 1 + max: 4094 description: VLAN ID to map to. dot1q_tunnel: type: dict @@ -3604,9 +3616,13 @@ keys: type: int convert_types: - str + min: 1 + max: 4094 description: VLAN ID or range(s) of VLAN IDs to map to. inner_to: type: int + min: 1 + max: 4094 convert_types: - str description: Inner VLAN ID to map to. @@ -3620,12 +3636,16 @@ keys: type: int convert_types: - str + min: 1 + max: 4094 description: VLAN ID or range of VLAN IDs to map from. required: true to: type: int convert_types: - str + min: 1 + max: 4094 description: VLAN ID to map to. required: true dot1q_tunnel: @@ -3634,10 +3654,14 @@ keys: type: int convert_types: - str + min: 1 + max: 4094 description: Inner VLAN ID to map from. network: type: bool - description: Use network-side VLAN ID. + description: 'Enable use of network-side VLAN ID. + + This setting can be enabled only when inner_from is defined.' vlan_forwarding_accept_all: type: bool backup_link: @@ -3647,20 +3671,21 @@ keys: type: str description: Backup interface. Example - Ethernet4, Vlan10 etc. prefer_vlan: - type: int + type: str convert_types: - - str - min: 1 - max: 4094 - description: VLANs to carry on the backup interface. + - int + description: VLANs to carry on the backup interface (1-4094). backup: type: dict description: The `backup_link` is required for this setting. keys: dest_macaddr: type: str + pattern: ^([0-9a-f]{2}:){5}[0-9a-f]{2}$ description: 'Destination MAC address for MAC move updates. + The mac address should be multicast or broadcast. + Example: 01:00:00:00:00:00' initial_mac_move_delay: type: int @@ -9641,7 +9666,9 @@ keys: keys: allowed_vlan: type: str - description: 'VLAN ID or range(s) of VLAN IDs. + convert_types: + - int + description: 'VLAN ID or range(s) of VLAN IDs (1-4094). Warning: This should not be combined with `port_channel_interfaces.mode = trunk`.' @@ -9755,11 +9782,15 @@ keys: description: Drop the packets that do not match any VLAN mapping. from: type: int + min: 1 + max: 4094 convert_types: - str description: VLAN ID or range of VLAN IDs to map from. to: type: int + min: 1 + max: 4094 convert_types: - str description: VLAN ID to map to. @@ -9767,6 +9798,8 @@ keys: type: bool inner_from: type: int + min: 1 + max: 4094 convert_types: - str description: Inner VLAN ID to map from. @@ -9778,12 +9811,16 @@ keys: keys: from: type: int + min: 1 + max: 4094 convert_types: - str description: VLAN ID or range of VLAN IDs to map from. required: true to: type: int + min: 1 + max: 4094 convert_types: - str description: VLAN ID to map to. @@ -9794,11 +9831,15 @@ keys: type: bool to: type: int + min: 1 + max: 4094 convert_types: - str description: VLAN ID or range(s) of VLAN IDs to map to. inner_to: type: int + min: 1 + max: 4094 convert_types: - str description: Inner VLAN ID to map to. @@ -9810,12 +9851,16 @@ keys: keys: from: type: int + min: 1 + max: 4094 convert_types: - str description: VLAN ID or range of VLAN IDs to map from. required: true to: type: int + min: 1 + max: 4094 convert_types: - str description: VLAN ID to map to. @@ -9824,12 +9869,16 @@ keys: type: bool inner_from: type: int + min: 1 + max: 4094 convert_types: - str description: Inner VLAN ID to map from. network: type: bool - description: Use network-side VLAN ID. + description: 'Enable use of network-side VLAN ID. + + This setting can be enabled only when inner_from is defined.' vlan_forwarding_accept_all: type: bool backup_link: @@ -9840,20 +9889,21 @@ keys: required: true description: Backup interface. Example - Ethernet4, Vlan10 etc. prefer_vlan: - type: int + type: str convert_types: - - str - min: 1 - max: 4094 - description: VLANs to carry on the backup interface. + - int + description: VLANs to carry on the backup interface (1-4094). backup: type: dict description: The `backup_link` is required for this setting. keys: dest_macaddr: type: str + pattern: ^([0-9a-f]{2}:){5}[0-9a-f]{2}$ description: 'Destination MAC address for MAC move updates. + The mac address should be multicast or broadcast. + Example: 01:00:00:00:00:00' initial_mac_move_delay: type: int diff --git a/python-avd/pyavd/_eos_cli_config_gen/schema/schema_fragments/ethernet_interfaces.schema.yml b/python-avd/pyavd/_eos_cli_config_gen/schema/schema_fragments/ethernet_interfaces.schema.yml index 0b8d44120c6..3a94d2b27be 100644 --- a/python-avd/pyavd/_eos_cli_config_gen/schema/schema_fragments/ethernet_interfaces.schema.yml +++ b/python-avd/pyavd/_eos_cli_config_gen/schema/schema_fragments/ethernet_interfaces.schema.yml @@ -1434,6 +1434,8 @@ keys: keys: allowed_vlan: type: str + convert_types: + - int description: |- VLAN ID or range(s) of VLAN IDs. Warning: This should not be combined with `ethernet_interfaces[].mode = trunk`. @@ -1475,7 +1477,7 @@ keys: description: Ethertype/TPID (Tag Protocol IDentifier) for VLAN tagged frames. vlan_tag: type: str - description: Allow/disallow VLAN tagged Frames. + description: Allow/disallow VLAN tagged frames. valid_values: - disallowed - required @@ -1542,16 +1544,22 @@ keys: type: int convert_types: - str + min: 1 + max: 4094 description: VLAN ID or range of VLAN IDs to map from. to: type: int convert_types: - str + min: 1 + max: 4094 description: VLAN ID to map to. dot1q_tunnel: type: bool inner_from: type: int + min: 1 + max: 4094 convert_types: - str description: Inner VLAN ID to map from. @@ -1565,12 +1573,16 @@ keys: type: int convert_types: - str + min: 1 + max: 4094 description: VLAN ID or range of VLAN IDs to map from. required: true to: type: int convert_types: - str + min: 1 + max: 4094 description: VLAN ID to map to. dot1q_tunnel: type: dict @@ -1581,9 +1593,13 @@ keys: type: int convert_types: - str + min: 1 + max: 4094 description: VLAN ID or range(s) of VLAN IDs to map to. inner_to: type: int + min: 1 + max: 4094 convert_types: - str description: Inner VLAN ID to map to. @@ -1597,12 +1613,16 @@ keys: type: int convert_types: - str + min: 1 + max: 4094 description: VLAN ID or range of VLAN IDs to map from. required: true to: type: int convert_types: - str + min: 1 + max: 4094 description: VLAN ID to map to. required: true dot1q_tunnel: @@ -1611,10 +1631,14 @@ keys: type: int convert_types: - str + min: 1 + max: 4094 description: Inner VLAN ID to map from. network: type: bool - description: Use network-side VLAN ID. + description: |- + Enable use of network-side VLAN ID. + This setting can be enabled only when inner_from is defined. vlan_forwarding_accept_all: type: bool backup_link: @@ -1624,20 +1648,20 @@ keys: type: str description: Backup interface. Example - Ethernet4, Vlan10 etc. prefer_vlan: - type: int + type: str convert_types: - - str - min: 1 - max: 4094 - description: VLANs to carry on the backup interface. + - int + description: VLANs to carry on the backup interface (1-4094). backup: type: dict description: The `backup_link` is required for this setting. keys: dest_macaddr: type: str + pattern: "^([0-9a-f]{2}:){5}[0-9a-f]{2}$" description: |- Destination MAC address for MAC move updates. + The mac address should be multicast or broadcast. Example: 01:00:00:00:00:00 initial_mac_move_delay: type: int diff --git a/python-avd/pyavd/_eos_cli_config_gen/schema/schema_fragments/port_channel_interfaces.schema.yml b/python-avd/pyavd/_eos_cli_config_gen/schema/schema_fragments/port_channel_interfaces.schema.yml index 1eb94176198..2856219bdb6 100644 --- a/python-avd/pyavd/_eos_cli_config_gen/schema/schema_fragments/port_channel_interfaces.schema.yml +++ b/python-avd/pyavd/_eos_cli_config_gen/schema/schema_fragments/port_channel_interfaces.schema.yml @@ -908,8 +908,10 @@ keys: keys: allowed_vlan: type: str + convert_types: + - int description: |- - VLAN ID or range(s) of VLAN IDs. + VLAN ID or range(s) of VLAN IDs (1-4094). Warning: This should not be combined with `port_channel_interfaces.mode = trunk`. native_vlan: type: int @@ -1013,11 +1015,15 @@ keys: description: Drop the packets that do not match any VLAN mapping. from: type: int + min: 1 + max: 4094 convert_types: - str description: VLAN ID or range of VLAN IDs to map from. to: type: int + min: 1 + max: 4094 convert_types: - str description: VLAN ID to map to. @@ -1025,6 +1031,8 @@ keys: type: bool inner_from: type: int + min: 1 + max: 4094 convert_types: - str description: Inner VLAN ID to map from. @@ -1036,12 +1044,16 @@ keys: keys: from: type: int + min: 1 + max: 4094 convert_types: - str description: VLAN ID or range of VLAN IDs to map from. required: true to: type: int + min: 1 + max: 4094 convert_types: - str description: VLAN ID to map to. @@ -1052,11 +1064,15 @@ keys: type: bool to: type: int + min: 1 + max: 4094 convert_types: - str description: VLAN ID or range(s) of VLAN IDs to map to. inner_to: type: int + min: 1 + max: 4094 convert_types: - str description: Inner VLAN ID to map to. @@ -1068,12 +1084,16 @@ keys: keys: from: type: int + min: 1 + max: 4094 convert_types: - str description: VLAN ID or range of VLAN IDs to map from. required: true to: type: int + min: 1 + max: 4094 convert_types: - str description: VLAN ID to map to. @@ -1082,12 +1102,16 @@ keys: type: bool inner_from: type: int + min: 1 + max: 4094 convert_types: - str description: Inner VLAN ID to map from. network: type: bool - description: Use network-side VLAN ID. + description: |- + Enable use of network-side VLAN ID. + This setting can be enabled only when inner_from is defined. vlan_forwarding_accept_all: type: bool backup_link: @@ -1098,20 +1122,20 @@ keys: required: true description: Backup interface. Example - Ethernet4, Vlan10 etc. prefer_vlan: - type: int + type: str convert_types: - - str - min: 1 - max: 4094 - description: VLANs to carry on the backup interface. + - int + description: VLANs to carry on the backup interface (1-4094). backup: type: dict description: The `backup_link` is required for this setting. keys: dest_macaddr: type: str + pattern: "^([0-9a-f]{2}:){5}[0-9a-f]{2}$" description: |- Destination MAC address for MAC move updates. + The mac address should be multicast or broadcast. Example: 01:00:00:00:00:00 initial_mac_move_delay: type: int diff --git a/python-avd/pyavd/_eos_designs/schema/eos_designs.jsonschema.json b/python-avd/pyavd/_eos_designs/schema/eos_designs.jsonschema.json index cbe4504e6d9..2f932343d46 100644 --- a/python-avd/pyavd/_eos_designs/schema/eos_designs.jsonschema.json +++ b/python-avd/pyavd/_eos_designs/schema/eos_designs.jsonschema.json @@ -11341,7 +11341,7 @@ }, "vlan_tag": { "type": "string", - "description": "Allow/disallow VLAN tagged Frames.", + "description": "Allow/disallow VLAN tagged frames.", "enum": [ "disallowed", "required" @@ -11432,11 +11432,15 @@ }, "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -11446,6 +11450,8 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" } @@ -11465,11 +11471,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -11482,6 +11492,8 @@ }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range(s) of VLAN IDs to map to.", "title": "To" } @@ -11494,6 +11506,8 @@ }, "inner_to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map to.", "title": "Inner To" } @@ -11516,11 +11530,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -11530,12 +11548,14 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" }, "network": { "type": "boolean", - "description": "Use network-side VLAN ID.", + "description": "Enable use of network-side VLAN ID.\nThis setting can be enabled only when inner_from is defined.", "title": "Network" } }, @@ -11570,10 +11590,8 @@ "title": "Interface" }, "prefer_vlan": { - "type": "integer", - "minimum": 1, - "maximum": 4094, - "description": "VLANs to carry on the backup interface.", + "type": "string", + "description": "VLANs to carry on the backup interface (1-4094).", "title": "Prefer VLAN" } }, @@ -11589,7 +11607,8 @@ "properties": { "dest_macaddr": { "type": "string", - "description": "Destination MAC address for MAC move updates.\nExample: 01:00:00:00:00:00", + "pattern": "^([0-9a-f]{2}:){5}[0-9a-f]{2}$", + "description": "Destination MAC address for MAC move updates.\nThe mac address should be multicast or broadcast.\nExample: 01:00:00:00:00:00", "title": "Dest Macaddr" }, "initial_mac_move_delay": { @@ -14623,7 +14642,7 @@ "properties": { "allowed_vlan": { "type": "string", - "description": "VLAN ID or range(s) of VLAN IDs.\nWarning: This should not be combined with `port_channel_interfaces.mode = trunk`.", + "description": "VLAN ID or range(s) of VLAN IDs (1-4094).\nWarning: This should not be combined with `port_channel_interfaces.mode = trunk`.", "title": "Allowed VLAN" }, "native_vlan": { @@ -14760,11 +14779,15 @@ }, "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -14774,6 +14797,8 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" } @@ -14793,11 +14818,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -14810,6 +14839,8 @@ }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range(s) of VLAN IDs to map to.", "title": "To" } @@ -14822,6 +14853,8 @@ }, "inner_to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map to.", "title": "Inner To" } @@ -14844,11 +14877,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -14858,12 +14895,14 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" }, "network": { "type": "boolean", - "description": "Use network-side VLAN ID.", + "description": "Enable use of network-side VLAN ID.\nThis setting can be enabled only when inner_from is defined.", "title": "Network" } }, @@ -14898,10 +14937,8 @@ "title": "Interface" }, "prefer_vlan": { - "type": "integer", - "minimum": 1, - "maximum": 4094, - "description": "VLANs to carry on the backup interface.", + "type": "string", + "description": "VLANs to carry on the backup interface (1-4094).", "title": "Prefer VLAN" } }, @@ -14920,7 +14957,8 @@ "properties": { "dest_macaddr": { "type": "string", - "description": "Destination MAC address for MAC move updates.\nExample: 01:00:00:00:00:00", + "pattern": "^([0-9a-f]{2}:){5}[0-9a-f]{2}$", + "description": "Destination MAC address for MAC move updates.\nThe mac address should be multicast or broadcast.\nExample: 01:00:00:00:00:00", "title": "Dest Macaddr" }, "initial_mac_move_delay": { @@ -17930,7 +17968,7 @@ }, "vlan_tag": { "type": "string", - "description": "Allow/disallow VLAN tagged Frames.", + "description": "Allow/disallow VLAN tagged frames.", "enum": [ "disallowed", "required" @@ -18021,11 +18059,15 @@ }, "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -18035,6 +18077,8 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" } @@ -18054,11 +18098,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -18071,6 +18119,8 @@ }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range(s) of VLAN IDs to map to.", "title": "To" } @@ -18083,6 +18133,8 @@ }, "inner_to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map to.", "title": "Inner To" } @@ -18105,11 +18157,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -18119,12 +18175,14 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" }, "network": { "type": "boolean", - "description": "Use network-side VLAN ID.", + "description": "Enable use of network-side VLAN ID.\nThis setting can be enabled only when inner_from is defined.", "title": "Network" } }, @@ -18159,10 +18217,8 @@ "title": "Interface" }, "prefer_vlan": { - "type": "integer", - "minimum": 1, - "maximum": 4094, - "description": "VLANs to carry on the backup interface.", + "type": "string", + "description": "VLANs to carry on the backup interface (1-4094).", "title": "Prefer VLAN" } }, @@ -18178,7 +18234,8 @@ "properties": { "dest_macaddr": { "type": "string", - "description": "Destination MAC address for MAC move updates.\nExample: 01:00:00:00:00:00", + "pattern": "^([0-9a-f]{2}:){5}[0-9a-f]{2}$", + "description": "Destination MAC address for MAC move updates.\nThe mac address should be multicast or broadcast.\nExample: 01:00:00:00:00:00", "title": "Dest Macaddr" }, "initial_mac_move_delay": { @@ -24824,7 +24881,7 @@ }, "vlan_tag": { "type": "string", - "description": "Allow/disallow VLAN tagged Frames.", + "description": "Allow/disallow VLAN tagged frames.", "enum": [ "disallowed", "required" @@ -24915,11 +24972,15 @@ }, "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -24929,6 +24990,8 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" } @@ -24948,11 +25011,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -24965,6 +25032,8 @@ }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range(s) of VLAN IDs to map to.", "title": "To" } @@ -24977,6 +25046,8 @@ }, "inner_to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map to.", "title": "Inner To" } @@ -24999,11 +25070,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -25013,12 +25088,14 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" }, "network": { "type": "boolean", - "description": "Use network-side VLAN ID.", + "description": "Enable use of network-side VLAN ID.\nThis setting can be enabled only when inner_from is defined.", "title": "Network" } }, @@ -25053,10 +25130,8 @@ "title": "Interface" }, "prefer_vlan": { - "type": "integer", - "minimum": 1, - "maximum": 4094, - "description": "VLANs to carry on the backup interface.", + "type": "string", + "description": "VLANs to carry on the backup interface (1-4094).", "title": "Prefer VLAN" } }, @@ -25072,7 +25147,8 @@ "properties": { "dest_macaddr": { "type": "string", - "description": "Destination MAC address for MAC move updates.\nExample: 01:00:00:00:00:00", + "pattern": "^([0-9a-f]{2}:){5}[0-9a-f]{2}$", + "description": "Destination MAC address for MAC move updates.\nThe mac address should be multicast or broadcast.\nExample: 01:00:00:00:00:00", "title": "Dest Macaddr" }, "initial_mac_move_delay": { @@ -35310,7 +35386,7 @@ "properties": { "allowed_vlan": { "type": "string", - "description": "VLAN ID or range(s) of VLAN IDs.\nWarning: This should not be combined with `port_channel_interfaces.mode = trunk`.", + "description": "VLAN ID or range(s) of VLAN IDs (1-4094).\nWarning: This should not be combined with `port_channel_interfaces.mode = trunk`.", "title": "Allowed VLAN" }, "native_vlan": { @@ -35447,11 +35523,15 @@ }, "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -35461,6 +35541,8 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" } @@ -35480,11 +35562,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -35497,6 +35583,8 @@ }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range(s) of VLAN IDs to map to.", "title": "To" } @@ -35509,6 +35597,8 @@ }, "inner_to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map to.", "title": "Inner To" } @@ -35531,11 +35621,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -35545,12 +35639,14 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" }, "network": { "type": "boolean", - "description": "Use network-side VLAN ID.", + "description": "Enable use of network-side VLAN ID.\nThis setting can be enabled only when inner_from is defined.", "title": "Network" } }, @@ -35585,10 +35681,8 @@ "title": "Interface" }, "prefer_vlan": { - "type": "integer", - "minimum": 1, - "maximum": 4094, - "description": "VLANs to carry on the backup interface.", + "type": "string", + "description": "VLANs to carry on the backup interface (1-4094).", "title": "Prefer VLAN" } }, @@ -35607,7 +35701,8 @@ "properties": { "dest_macaddr": { "type": "string", - "description": "Destination MAC address for MAC move updates.\nExample: 01:00:00:00:00:00", + "pattern": "^([0-9a-f]{2}:){5}[0-9a-f]{2}$", + "description": "Destination MAC address for MAC move updates.\nThe mac address should be multicast or broadcast.\nExample: 01:00:00:00:00:00", "title": "Dest Macaddr" }, "initial_mac_move_delay": { @@ -54385,7 +54480,7 @@ "properties": { "allowed_vlan": { "type": "string", - "description": "VLAN ID or range(s) of VLAN IDs.\nWarning: This should not be combined with `port_channel_interfaces.mode = trunk`.", + "description": "VLAN ID or range(s) of VLAN IDs (1-4094).\nWarning: This should not be combined with `port_channel_interfaces.mode = trunk`.", "title": "Allowed VLAN" }, "native_vlan": { @@ -54522,11 +54617,15 @@ }, "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -54536,6 +54635,8 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" } @@ -54555,11 +54656,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -54572,6 +54677,8 @@ }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range(s) of VLAN IDs to map to.", "title": "To" } @@ -54584,6 +54691,8 @@ }, "inner_to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map to.", "title": "Inner To" } @@ -54606,11 +54715,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -54620,12 +54733,14 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" }, "network": { "type": "boolean", - "description": "Use network-side VLAN ID.", + "description": "Enable use of network-side VLAN ID.\nThis setting can be enabled only when inner_from is defined.", "title": "Network" } }, @@ -54660,10 +54775,8 @@ "title": "Interface" }, "prefer_vlan": { - "type": "integer", - "minimum": 1, - "maximum": 4094, - "description": "VLANs to carry on the backup interface.", + "type": "string", + "description": "VLANs to carry on the backup interface (1-4094).", "title": "Prefer VLAN" } }, @@ -54682,7 +54795,8 @@ "properties": { "dest_macaddr": { "type": "string", - "description": "Destination MAC address for MAC move updates.\nExample: 01:00:00:00:00:00", + "pattern": "^([0-9a-f]{2}:){5}[0-9a-f]{2}$", + "description": "Destination MAC address for MAC move updates.\nThe mac address should be multicast or broadcast.\nExample: 01:00:00:00:00:00", "title": "Dest Macaddr" }, "initial_mac_move_delay": { @@ -57692,7 +57806,7 @@ }, "vlan_tag": { "type": "string", - "description": "Allow/disallow VLAN tagged Frames.", + "description": "Allow/disallow VLAN tagged frames.", "enum": [ "disallowed", "required" @@ -57783,11 +57897,15 @@ }, "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -57797,6 +57915,8 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" } @@ -57816,11 +57936,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -57833,6 +57957,8 @@ }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range(s) of VLAN IDs to map to.", "title": "To" } @@ -57845,6 +57971,8 @@ }, "inner_to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map to.", "title": "Inner To" } @@ -57867,11 +57995,15 @@ "properties": { "from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID or range of VLAN IDs to map from.", "title": "From" }, "to": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "VLAN ID to map to.", "title": "To" }, @@ -57881,12 +58013,14 @@ }, "inner_from": { "type": "integer", + "minimum": 1, + "maximum": 4094, "description": "Inner VLAN ID to map from.", "title": "Inner From" }, "network": { "type": "boolean", - "description": "Use network-side VLAN ID.", + "description": "Enable use of network-side VLAN ID.\nThis setting can be enabled only when inner_from is defined.", "title": "Network" } }, @@ -57921,10 +58055,8 @@ "title": "Interface" }, "prefer_vlan": { - "type": "integer", - "minimum": 1, - "maximum": 4094, - "description": "VLANs to carry on the backup interface.", + "type": "string", + "description": "VLANs to carry on the backup interface (1-4094).", "title": "Prefer VLAN" } }, @@ -57940,7 +58072,8 @@ "properties": { "dest_macaddr": { "type": "string", - "description": "Destination MAC address for MAC move updates.\nExample: 01:00:00:00:00:00", + "pattern": "^([0-9a-f]{2}:){5}[0-9a-f]{2}$", + "description": "Destination MAC address for MAC move updates.\nThe mac address should be multicast or broadcast.\nExample: 01:00:00:00:00:00", "title": "Dest Macaddr" }, "initial_mac_move_delay": {