Skip to content

Commit

Permalink
[decap] Enhance ipinip.json.j2 template to use new db schema
Browse files Browse the repository at this point in the history
Signed-off-by: Longxiang Lyu <lolv@microsoft.com>
  • Loading branch information
lolyu committed May 31, 2024
1 parent 8e50490 commit d3cb0f2
Show file tree
Hide file tree
Showing 5 changed files with 292 additions and 21 deletions.
29 changes: 24 additions & 5 deletions dockers/docker-orchagent/ipinip.json.j2
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,6 @@
{
"TUNNEL_DECAP_TABLE:IPINIP_TUNNEL" : {
"tunnel_type":"IPINIP",
"dst_ip":"{% for prefix in ipv4_addresses|sort %}{{ prefix | ip }}{% if not loop.last %},{% endif %}{% endfor %}",
"dscp_mode":"uniform",
{% if "mlnx" in DEVICE_METADATA.localhost.platform %}
"ecn_mode":"standard",
Expand All @@ -59,15 +58,24 @@
"ttl_mode":"pipe"
},
"OP": "SET"
}
}{% if ipv4_addresses %},
{% endif %}
{% if ipv4_loopback_addresses and ipv6_loopback_addresses %} ,
{% for prefix in ipv4_addresses|sort %}
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:{{ prefix | ip }}" : {
"term_type":"P2MP"
},
"OP": "SET"
}{% if not loop.last %},
{% endif %}
{% endfor %}
{% endif %}
{% if ipv4_loopback_addresses and ipv6_loopback_addresses %},
{% endif %}
{% if ipv6_loopback_addresses %}
{
"TUNNEL_DECAP_TABLE:IPINIP_V6_TUNNEL" : {
"tunnel_type":"IPINIP",
"dst_ip":"{% for prefix in ipv6_addresses|sort %}{{ prefix | ip }}{% if not loop.last %},{% endif %}{% endfor %}",
"dscp_mode":"uniform",
{% if "mlnx" in DEVICE_METADATA.localhost.platform %}
"ecn_mode":"standard",
Expand All @@ -77,8 +85,19 @@
"ttl_mode":"pipe"
},
"OP": "SET"
}
}{% if ipv6_addresses %},
{% endif %}
{% for prefix in ipv6_addresses|sort %}
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_V6_TUNNEL:{{ prefix | ip }}" : {
"term_type":"P2MP"
},
"OP": "SET"
}{% if not loop.last %},
{% endif %}
{% endfor %}
{% endif %}

]
{% endif %}

53 changes: 49 additions & 4 deletions src/sonic-config-engine/tests/multi_npu_data/py2/ipinip.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,67 @@
{
"TUNNEL_DECAP_TABLE:IPINIP_TUNNEL" : {
"tunnel_type":"IPINIP",
"dst_ip":"10.0.0.0,10.1.0.1,10.1.0.3,10.1.0.32,8.0.0.0",
"dscp_mode":"uniform",
"ecn_mode":"copy_from_outer",
"ttl_mode":"pipe"
},
"OP": "SET"
}
,
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:10.0.0.0" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:10.1.0.1" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:10.1.0.3" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:10.1.0.32" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:8.0.0.0" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TABLE:IPINIP_V6_TUNNEL" : {
"tunnel_type":"IPINIP",
"dst_ip":"fc00:1::32,fc00::1,fd00:1::32",
"dscp_mode":"uniform",
"ecn_mode":"copy_from_outer",
"ttl_mode":"pipe"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_V6_TUNNEL:fc00:1::32" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_V6_TUNNEL:fc00::1" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_V6_TUNNEL:fd00:1::32" : {
"term_type":"P2MP"
},
"OP": "SET"
}
]
53 changes: 49 additions & 4 deletions src/sonic-config-engine/tests/multi_npu_data/py3/ipinip.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,67 @@
{
"TUNNEL_DECAP_TABLE:IPINIP_TUNNEL" : {
"tunnel_type":"IPINIP",
"dst_ip":"10.0.0.0,10.1.0.1,10.1.0.3,10.1.0.32,8.0.0.0",
"dscp_mode":"uniform",
"ecn_mode":"copy_from_outer",
"ttl_mode":"pipe"
},
"OP": "SET"
}
,
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:10.0.0.0" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:10.1.0.1" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:10.1.0.3" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:10.1.0.32" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:8.0.0.0" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TABLE:IPINIP_V6_TUNNEL" : {
"tunnel_type":"IPINIP",
"dst_ip":"fc00:1::32,fc00::1,fd00:1::32",
"dscp_mode":"uniform",
"ecn_mode":"copy_from_outer",
"ttl_mode":"pipe"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_V6_TUNNEL:fc00:1::32" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_V6_TUNNEL:fc00::1" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_V6_TUNNEL:fd00:1::32" : {
"term_type":"P2MP"
},
"OP": "SET"
}
]
89 changes: 85 additions & 4 deletions src/sonic-config-engine/tests/sample_output/py2/ipinip.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,103 @@
{
"TUNNEL_DECAP_TABLE:IPINIP_TUNNEL" : {
"tunnel_type":"IPINIP",
"dst_ip":"10.0.0.56,10.0.0.58,10.0.0.60,10.0.0.62,10.1.0.32,10.21.0.64,10.21.64.2,192.168.0.1,192.168.200.1",
"dscp_mode":"uniform",
"ecn_mode":"copy_from_outer",
"ttl_mode":"pipe"
},
"OP": "SET"
}
,
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:10.0.0.56" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:10.0.0.58" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:10.0.0.60" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:10.0.0.62" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:10.1.0.32" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:10.21.0.64" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:10.21.64.2" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:192.168.0.1" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_TUNNEL:192.168.200.1" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TABLE:IPINIP_V6_TUNNEL" : {
"tunnel_type":"IPINIP",
"dst_ip":"fc00:1::32,fc00::71,fc00::75,fc00::79,fc00::7d",
"dscp_mode":"uniform",
"ecn_mode":"copy_from_outer",
"ttl_mode":"pipe"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_V6_TUNNEL:fc00:1::32" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_V6_TUNNEL:fc00::71" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_V6_TUNNEL:fc00::75" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_V6_TUNNEL:fc00::79" : {
"term_type":"P2MP"
},
"OP": "SET"
},
{
"TUNNEL_DECAP_TERM_TABLE:IPINIP_V6_TUNNEL:fc00::7d" : {
"term_type":"P2MP"
},
"OP": "SET"
}
]
Loading

0 comments on commit d3cb0f2

Please sign in to comment.