Skip to content

Commit dfafdc3

Browse files
Vibhu-gslabShivani-gslabgmuloc
authored
Refactor(eos_cli_config_gen): Fixing Cli order for policy_maps.qos (aristanetworks#6283)
Co-authored-by: Shivani-gslab <[email protected]> Co-authored-by: Guillaume Mulocher <[email protected]>
1 parent 856530f commit dfafdc3

File tree

4 files changed

+20
-11
lines changed

4 files changed

+20
-11
lines changed

ansible_collections/arista/avd/extensions/molecule/eos_cli_config_gen/documentation/devices/host1.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13817,7 +13817,7 @@ class-map type pbr match-any aaa
1381713817

1381813818
| Class Name | COS | DSCP | Traffic Class | Drop Precedence | Police Rate (Burst) -> Action |
1381913819
| ---------- | --- | ---- | ------------- | --------------- | ----------------------------- |
13820-
| CM_REPLICATION_LD | - | af11 | 2 | 1 | 10 kbps (260 kbytes) -> drop-precedence<br> 30 kbps(270 kbytes) -> drop |
13820+
| CM_REPLICATION_LD | 2 | af11 | 2 | 1 | 10 kbps (260 kbytes) -> drop-precedence<br> 30 kbps(270 kbytes) -> drop |
1382113821
| CM_REPLICATION_LD_2 | - | af11 | 2 | - | - |
1382213822

1382313823
##### PM_REPLICATION_LD2
@@ -13848,6 +13848,7 @@ class-map type pbr match-any aaa
1384813848
!
1384913849
policy-map type quality-of-service PM_REPLICATION_LD
1385013850
class CM_REPLICATION_LD
13851+
set cos 2
1385113852
set dscp af11
1385213853
set traffic-class 2
1385313854
set drop-precedence 1
@@ -13859,14 +13860,14 @@ policy-map type quality-of-service PM_REPLICATION_LD
1385913860
!
1386013861
policy-map type quality-of-service PM_REPLICATION_LD2
1386113862
class CM_REPLICATION_LD
13862-
set dscp af11
1386313863
set cos 4
13864+
set dscp af11
1386413865
police rate 30 kbps burst-size 280 bytes action set dscp af11 rate 1 mbps burst-size 270 bytes
1386513866
!
1386613867
policy-map type quality-of-service PM_REPLICATION_LD3
1386713868
class CM_REPLICATION_LD
13868-
set dscp af11
1386913869
set cos 6
13870+
set dscp af11
1387013871
police rate 10000 bps burst-size 260 kbytes
1387113872
!
1387213873
policy-map type quality-of-service pmap_test1

ansible_collections/arista/avd/extensions/molecule/eos_cli_config_gen/intended/configs/host1.cfg

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5428,6 +5428,7 @@ policy-map type copp copp-system-policy
54285428
!
54295429
policy-map type quality-of-service PM_REPLICATION_LD
54305430
class CM_REPLICATION_LD
5431+
set cos 2
54315432
set dscp af11
54325433
set traffic-class 2
54335434
set drop-precedence 1
@@ -5439,14 +5440,14 @@ policy-map type quality-of-service PM_REPLICATION_LD
54395440
!
54405441
policy-map type quality-of-service PM_REPLICATION_LD2
54415442
class CM_REPLICATION_LD
5442-
set dscp af11
54435443
set cos 4
5444+
set dscp af11
54445445
police rate 30 kbps burst-size 280 bytes action set dscp af11 rate 1 mbps burst-size 270 bytes
54455446
!
54465447
policy-map type quality-of-service PM_REPLICATION_LD3
54475448
class CM_REPLICATION_LD
5448-
set dscp af11
54495449
set cos 6
5450+
set dscp af11
54505451
police rate 10000 bps burst-size 260 kbytes
54515452
!
54525453
policy-map type quality-of-service pmap_test1

ansible_collections/arista/avd/extensions/molecule/eos_cli_config_gen/inventory/host_vars/host1/policy-maps.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ policy_maps:
2525
dscp: af11
2626
traffic_class: 2
2727
drop_precedence: 1
28+
cos: 2
2829
police:
2930
rate: 10
3031
rate_unit: kbps

python-avd/pyavd/_eos_cli_config_gen/j2templates/eos/policy-maps-qos.j2

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,18 @@ policy-map type quality-of-service {{ policy_map.name }}
1212
!
1313
{% endif %}
1414
class {{ class.name }}
15-
{% for set in class.set | arista.avd.default([]) %}
16-
{% set cli_set = set | replace('_','-') | lower %}
17-
{% if cli_set in ['cos', 'dscp', 'traffic-class', 'drop-precedence'] %}
18-
set {{ cli_set }} {{ class.set[set] }}
19-
{% endif %}
20-
{% endfor %}
15+
{% if class.set.cos is arista.avd.defined %}
16+
set cos {{ class.set.cos }}
17+
{% endif %}
18+
{% if class.set.dscp is arista.avd.defined %}
19+
set dscp {{ class.set.dscp }}
20+
{% endif %}
21+
{% if class.set.traffic_class is arista.avd.defined %}
22+
set traffic-class {{ class.set.traffic_class }}
23+
{% endif %}
24+
{% if class.set.drop_precedence is arista.avd.defined %}
25+
set drop-precedence {{ class.set.drop_precedence }}
26+
{% endif %}
2127
{% if class.police is arista.avd.defined %}
2228
{% set police_cli = "police rate " %}
2329
{% if class.police.rate is arista.avd.defined and class.police.rate_burst_size is arista.avd.defined %}

0 commit comments

Comments
 (0)