From 6576f591d4415abde317fd6bc40fe3440c569f0f Mon Sep 17 00:00:00 2001 From: Roman Dodin Date: Wed, 17 May 2023 11:30:08 +0300 Subject: [PATCH 1/2] change ixp lab to peering lab --- .../{ixp-lab.md => peering-lab.md} | 21 +++++----- docs/overrides/partials/comments.html | 38 +++++++++++++++++++ mkdocs.yml | 3 +- 3 files changed, 52 insertions(+), 10 deletions(-) rename docs/lab-examples/{ixp-lab.md => peering-lab.md} (97%) create mode 100644 docs/overrides/partials/comments.html diff --git a/docs/lab-examples/ixp-lab.md b/docs/lab-examples/peering-lab.md similarity index 97% rename from docs/lab-examples/ixp-lab.md rename to docs/lab-examples/peering-lab.md index 4353f79b1..8a6388504 100644 --- a/docs/lab-examples/ixp-lab.md +++ b/docs/lab-examples/peering-lab.md @@ -1,4 +1,7 @@ -# Internet eXchange Point (IXP) lab +--- +comments: true +--- +# Peering lab Internet eXchange Points are the glue that connects the Internet. They are the physical locations where ISPs, CDNs and all other ASN holders connect to exchange traffic. While traffic exchange might sound simple, it is a complex process with lots of moving parts: @@ -15,14 +18,14 @@ The guidelines and current best practices are best to be practiced in a lab envi ## Lab summary -| Summary | | -| ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **Lab name** | IXP Lab | -| **Lab components** | [Nokia SR OS][nokia-sros], [FRRouting (FRR)][frr], [OpenBGPd][openbgpd] and [BIRD][bird] route servers | -| **Resource requirements** | :fontawesome-solid-microchip: 2 vCPU
:fontawesome-solid-memory: 6 GB | -| **Lab** | [hellt/sros-frr-ixp-lab][lab] | -| **Version information** | [`containerlab:0.39.0`][clab-install], `Nokia SR OS:23.3.R1`, [`FRR:8.4.1`][frr-container], [`BIRD:2.0.11`][bird-container], [`openbgpd:7.9`][obgpd-container] | -| **Authors** | Roman Dodin [:material-twitter:][rd-twitter] [:material-linkedin:][rd-linkedin] | +| Summary | | +| ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **Lab name** | Peering Lab | +| **Lab components** | [Nokia SR OS][nokia-sros], [FRRouting (FRR)][frr], [OpenBGPd][openbgpd] and [BIRD][bird] route servers | +| **Resource requirements** | :fontawesome-solid-microchip: 2 vCPU
:fontawesome-solid-memory: 6 GB | +| **Lab** | [hellt/sros-frr-ixp-lab][lab] | +| **Version information** | [`containerlab:0.41.1`][clab-install], `Nokia SR OS:23.3.R1`, [`FRR:8.4.1`][frr-container], [`BIRD:2.0.11`][bird-container], [`openbgpd:7.9`][obgpd-container] | +| **Authors** | Roman Dodin [:material-twitter:][rd-twitter] [:material-linkedin:][rd-linkedin] | ## Prerequisites diff --git a/docs/overrides/partials/comments.html b/docs/overrides/partials/comments.html new file mode 100644 index 000000000..3eeab3e4c --- /dev/null +++ b/docs/overrides/partials/comments.html @@ -0,0 +1,38 @@ +{% if page.meta.comments %} +

{{ lang.t("meta.comments") }}

+ + + + +{% endif %} \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml index ac5f08a6a..3b517e7dc 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -78,7 +78,7 @@ nav: - Nokia SR Linux and SONiC: lab-examples/srl-sonic.md - External bridge capability: lab-examples/ext-bridge.md - WAN topology: lab-examples/wan.md - - IXP (Internet eXchange Point) lab: lab-examples/ixp-lab.md + - Peering lab: lab-examples/peering-lab.md - Nokia SR Linux and Nokia SR OS: lab-examples/vr-sros.md - Nokia SR Linux and Juniper vMX: lab-examples/vr-vmx.md - Nokia SR Linux and Cisco XRd: lab-examples/srl-xrd.md @@ -202,6 +202,7 @@ plugins: - redirects: redirect_maps: lab-examples/tls-cert.md: https://clabs.netdevops.me/security/gnmitls/ + lab-examples/ixp-lab.md: lab-examples/peering-lab.md - typeset - glightbox From 926f26afd8e7cf5817bae56a29447ab4185e492c Mon Sep 17 00:00:00 2001 From: Roman Dodin Date: Thu, 18 May 2023 17:41:45 +0300 Subject: [PATCH 2/2] added fix for deprecated fields mapping --- docs/rn/0.41.md | 4 ++++ tests/01-smoke/01-linux-nodes.clab.yml | 2 ++ types/node_definition.go | 2 +- types/types.go | 2 +- 4 files changed, 8 insertions(+), 2 deletions(-) diff --git a/docs/rn/0.41.md b/docs/rn/0.41.md index 523bd557a..ff065dd7f 100644 --- a/docs/rn/0.41.md +++ b/docs/rn/0.41.md @@ -82,3 +82,7 @@ The deprecated fields will stay for a few months and a log message will be print * Fixed public keys population for password-less SSH access for SR Linux nodes #1384 * Added support for extracting public keys from SSH agent #1388 * Added json_schema types for SR OS #1387 + +### 0.41.2 + +* fix an issue where deprecated `mgmt_ipv6` overwrites `mgmt_ipv4` value #1397 diff --git a/tests/01-smoke/01-linux-nodes.clab.yml b/tests/01-smoke/01-linux-nodes.clab.yml index 6676dfc59..da87187c1 100644 --- a/tests/01-smoke/01-linux-nodes.clab.yml +++ b/tests/01-smoke/01-linux-nodes.clab.yml @@ -20,6 +20,8 @@ topology: - cat /etc/os-release cpu: 1.5 memory: 1G + mgmt_ipv4: 172.20.20.99 # test deprecated mgmt_ipv4 still works + mgmt_ipv6: 2001:172:20:20::99 # test deprecated mgmt_ipv6 still works l2: kind: linux image: nginx:stable-alpine diff --git a/types/node_definition.go b/types/node_definition.go index 43f22206f..89fdf9982 100644 --- a/types/node_definition.go +++ b/types/node_definition.go @@ -104,7 +104,7 @@ func (n *NodeDefinition) UnmarshalYAML(unmarshal func(interface{}) error) error if len(nd.DeprecatedMgmtIPv6) > 0 && len(nd.MgmtIPv6) == 0 { log.Warnf("Attribute \"mgmt_ipv6\" is deprecated and will be removed in future. Change it to \"mgmt-ipv6\"") - nd.MgmtIPv4 = nd.DeprecatedMgmtIPv6 + nd.MgmtIPv6 = nd.DeprecatedMgmtIPv6 } *n = (NodeDefinition)(nd.NodeDefinitionAlias) diff --git a/types/types.go b/types/types.go index ce1fc94b1..8a92d9931 100644 --- a/types/types.go +++ b/types/types.go @@ -81,7 +81,7 @@ func (m *MgmtNet) UnmarshalYAML(unmarshal func(interface{}) error) error { // map old to new if old defined but new not if len(mn.DeprecatedIPv6Subnet) > 0 && len(mn.IPv6Subnet) == 0 { log.Warnf("Attribute \"ipv6_subnet\" is deprecated and will be removed in the future. Change it to \"ipv6-subnet\"") - mn.IPv4Subnet = mn.DeprecatedIPv6Subnet + mn.IPv6Subnet = mn.DeprecatedIPv6Subnet } *m = (MgmtNet)(mn.MgmtNetAlias)