diff options
| author | Christian Poessinger <christian@poessinger.com> | 2022-09-30 20:58:55 +0200 | 
|---|---|---|
| committer | Christian Poessinger <christian@poessinger.com> | 2022-09-30 20:58:55 +0200 | 
| commit | 4105b464491f72aa87765aa3b072fb56ace71b89 (patch) | |
| tree | 072e44d251fae6ab715376c1fef50c79ca0efbc8 | |
| parent | daceea11d9666b554a3ccc86d28e533a9b7a6a89 (diff) | |
| download | vyos-1x-4105b464491f72aa87765aa3b072fb56ace71b89.tar.gz vyos-1x-4105b464491f72aa87765aa3b072fb56ace71b89.zip | |
bgp: evpn: T1315: add route-target CLI node <multi/> property
FRR supports multiple route-targets to be used for import/export:
address-family l2vpn evpn
 route-target import 20:10
 route-target import 20:11
 route-target import 20:12
 route-target import 40:40
 route-target export 1:2
 route-target export 1:3
 route-target export 40:40
exit-address-family
Thus the <multi/> property is added to the relevant CLI nodes.
| -rw-r--r-- | data/templates/frr/bgpd.frr.j2 | 21 | ||||
| -rw-r--r-- | interface-definitions/include/bgp/afi-l2vpn-common.xml.i | 3 | 
2 files changed, 16 insertions, 8 deletions
| diff --git a/data/templates/frr/bgpd.frr.j2 b/data/templates/frr/bgpd.frr.j2 index bf4be23ff..e8d135c78 100644 --- a/data/templates/frr/bgpd.frr.j2 +++ b/data/templates/frr/bgpd.frr.j2 @@ -378,14 +378,19 @@ router bgp {{ system_as }} {{ 'vrf ' ~ vrf if vrf is vyos_defined }}  {%             endif %}  {%         endif %}  {%         if afi_config.route_target.both is vyos_defined %} -  route-target both {{ afi_config.route_target.both }} -{%         else %} -{%             if afi_config.route_target.export is vyos_defined %} -  route-target export {{ afi_config.route_target.export }} -{%             endif %} -{%             if afi_config.route_target.import is vyos_defined %} -  route-target import {{ afi_config.route_target.import }} -{%             endif %} +{%             for route_target in afi_config.route_target.both %} +  route-target both {{ route_target }} +{%             endfor %} +{%         endif %} +{%         if afi_config.route_target.export is vyos_defined %} +{%             for route_target in afi_config.route_target.export %} +  route-target export {{ route_target }} +{%             endfor %} +{%         endif %} +{%         if afi_config.route_target.import is vyos_defined %} +{%             for route_target in afi_config.route_target.import %} +  route-target import {{ route_target }} +{%             endfor %}  {%         endif %}  {%         if afi_config.route_map.vpn.export is vyos_defined %}    route-map vpn export {{ afi_config.route_map.vpn.export }} diff --git a/interface-definitions/include/bgp/afi-l2vpn-common.xml.i b/interface-definitions/include/bgp/afi-l2vpn-common.xml.i index d586635c8..fef3daf3b 100644 --- a/interface-definitions/include/bgp/afi-l2vpn-common.xml.i +++ b/interface-definitions/include/bgp/afi-l2vpn-common.xml.i @@ -27,6 +27,7 @@          <constraint>            <validator name="bgp-rd-rt" argument="--route-target"/>          </constraint> +        <multi/>        </properties>      </leafNode>      <leafNode name="import"> @@ -39,6 +40,7 @@          <constraint>            <validator name="bgp-rd-rt" argument="--route-target"/>          </constraint> +        <multi/>        </properties>      </leafNode>      <leafNode name="export"> @@ -51,6 +53,7 @@          <constraint>            <validator name="bgp-rd-rt" argument="--route-target"/>          </constraint> +        <multi/>        </properties>      </leafNode>    </children> | 
