diff --git a/ansible_collections/arista/avd/docs/porting-guides/5.x.x.md b/ansible_collections/arista/avd/docs/porting-guides/5.x.x.md index 4f5039a82d3..21db5ede6a1 100644 --- a/ansible_collections/arista/avd/docs/porting-guides/5.x.x.md +++ b/ansible_collections/arista/avd/docs/porting-guides/5.x.x.md @@ -397,6 +397,28 @@ As of AVD 5.0.0 "null" option for esp integrity and encryption has been replaced + encryption: disabled ``` +### `router_traffic_engineering.enabled` is required + +In AVD 4.0.0, setting `enabled: true` under `router_traffic_engineering` was not +required and it was possible to render + +```eos +router traffic-engineering +``` + +using the following input + +```yaml +router_traffic_engineering: +``` + +As of AVD 5.0.0, the `enabled` keyword is required under `router_traffic_engineering`: + +```yaml +router_traffic_engineering: + enabled: true +``` + ### Removal of default type `switched` from ethernet interfaces and port-channel interfaces In AVD 4.0.0, we had "switched" as the default value for `ethernet_interfaces[].type` and `port_channel_interfaces[].type`. diff --git a/ansible_collections/arista/avd/docs/release-notes/5.x.x.md b/ansible_collections/arista/avd/docs/release-notes/5.x.x.md index 0cf3ee96bd8..094c2963a4c 100644 --- a/ansible_collections/arista/avd/docs/release-notes/5.x.x.md +++ b/ansible_collections/arista/avd/docs/release-notes/5.x.x.md @@ -84,11 +84,15 @@ See the [porting guide](../porting-guides/5.x.x.md#no-auto-conversion-of-old-dat See the [porting guide](../porting-guides/5.x.x.md#ip_securitysa_policiesespintegrity-and-encryption-null-option-has-been-replaced-with-disabled) for details. +#### `router_traffic_engineering.enabled` is required + +See the [porting guide](../porting-guides/5.x.x.md#router_traffic_engineeringenabled-is-required) for details. + #### Removal of schema in JSON format The `eos_cli_config_gen.jsonschema.json` is no longer generated. This schema was not being used and had never been complete. -### Removal of default type `switched` from ethernet interfaces and port-channel interfaces +#### Removal of default type `switched` from ethernet interfaces and port-channel interfaces Starting AVD 5.0.0, the default value for `type` in `ethernet_interfaces` and `port_channel_interfaces` is no longer supported. The `type` key must now be explicitly defined in the input variables if it is needed in the configuration and documentation. diff --git a/ansible_collections/arista/avd/roles/eos_cli_config_gen/docs/tables/router-traffic-engineering.md b/ansible_collections/arista/avd/roles/eos_cli_config_gen/docs/tables/router-traffic-engineering.md index 776cfcd828b..1cd693aba58 100644 --- a/ansible_collections/arista/avd/roles/eos_cli_config_gen/docs/tables/router-traffic-engineering.md +++ b/ansible_collections/arista/avd/roles/eos_cli_config_gen/docs/tables/router-traffic-engineering.md @@ -8,7 +8,7 @@ | Variable | Type | Required | Default | Value Restrictions | Description | | -------- | ---- | -------- | ------- | ------------------ | ----------- | | [router_traffic_engineering](## "router_traffic_engineering") | Dictionary | | | | | - | [  enabled](## "router_traffic_engineering.enabled") | Boolean | | | | | + | [  enabled](## "router_traffic_engineering.enabled") | Boolean | Required | | | | | [  router_id](## "router_traffic_engineering.router_id") | Dictionary | | | | | | [    ipv4](## "router_traffic_engineering.router_id.ipv4") | String | | | | | | [    ipv6](## "router_traffic_engineering.router_id.ipv6") | String | | | | | @@ -34,7 +34,7 @@ ```yaml router_traffic_engineering: - enabled: + enabled: router_id: ipv4: ipv6: diff --git a/python-avd/pyavd/_eos_cli_config_gen/j2templates/documentation/router-traffic-engineering.j2 b/python-avd/pyavd/_eos_cli_config_gen/j2templates/documentation/router-traffic-engineering.j2 index eaca60f4a77..6f6f6fce37a 100644 --- a/python-avd/pyavd/_eos_cli_config_gen/j2templates/documentation/router-traffic-engineering.j2 +++ b/python-avd/pyavd/_eos_cli_config_gen/j2templates/documentation/router-traffic-engineering.j2 @@ -4,14 +4,11 @@ that can be found in the LICENSE file. #} {# doc - router traffic engineering #} -{# for AVD 5.0.0, the first part of the if statement will be removed #} -{% if router_traffic_engineering is arista.avd.defined or router_traffic_engineering.enabled is arista.avd.defined(true) %} +{% if router_traffic_engineering.enabled is arista.avd.defined(true) %} ### Router Traffic-Engineering -{% if router_traffic_engineering.enabled is arista.avd.defined(true) %} - Traffic Engineering is enabled. -{% endif %} {% if router_traffic_engineering.segment_routing is arista.avd.defined %} #### Segment Routing Summary diff --git a/python-avd/pyavd/_eos_cli_config_gen/j2templates/eos/router-traffic-engineering.j2 b/python-avd/pyavd/_eos_cli_config_gen/j2templates/eos/router-traffic-engineering.j2 index 2587c85b842..30fe2f83fd7 100644 --- a/python-avd/pyavd/_eos_cli_config_gen/j2templates/eos/router-traffic-engineering.j2 +++ b/python-avd/pyavd/_eos_cli_config_gen/j2templates/eos/router-traffic-engineering.j2 @@ -4,8 +4,7 @@ that can be found in the LICENSE file. #} {# eos - router traffic engineering #} -{# for AVD 5.0.0, the first part of the if statement will be removed #} -{% if router_traffic_engineering is arista.avd.defined or router_traffic_engineering.enabled is arista.avd.defined(true) %} +{% if router_traffic_engineering.enabled is arista.avd.defined(true) %} ! router traffic-engineering {% if router_traffic_engineering.segment_routing is arista.avd.defined %} 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 f087b550f2f..f0e8fb0b319 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 @@ -16583,6 +16583,7 @@ keys: keys: enabled: type: bool + required: true router_id: type: dict keys: diff --git a/python-avd/pyavd/_eos_cli_config_gen/schema/schema_fragments/router_traffic_engineering.schema.yml b/python-avd/pyavd/_eos_cli_config_gen/schema/schema_fragments/router_traffic_engineering.schema.yml index c9e99fbacad..ada25642e51 100644 --- a/python-avd/pyavd/_eos_cli_config_gen/schema/schema_fragments/router_traffic_engineering.schema.yml +++ b/python-avd/pyavd/_eos_cli_config_gen/schema/schema_fragments/router_traffic_engineering.schema.yml @@ -11,6 +11,7 @@ keys: keys: enabled: type: bool + required: true router_id: type: dict keys: