diff --git a/.github/workflows/cicd.yml b/.github/workflows/cicd.yml index 39eac984..ddec23fc 100644 --- a/.github/workflows/cicd.yml +++ b/.github/workflows/cicd.yml @@ -9,11 +9,11 @@ on: pull_request: env: - MKDOCS_MATERIAL_VER: 9.6.16-insiders-4.53.16-hellt + MKDOCS_MATERIAL_IMAGE: ghcr.io/eda-labs/mkdocs-material:v9.7.1-1 jobs: docs-test: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 @@ -24,7 +24,7 @@ jobs: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - - run: docker run -v $(pwd):/docs --entrypoint mkdocs ghcr.io/srl-labs/mkdocs-material-insiders:$MKDOCS_MATERIAL_VER build --clean --strict + - run: docker run -v $(pwd):/docs --entrypoint mkdocs ${MKDOCS_MATERIAL_IMAGE} build --clean --strict - name: Cache htmltest external links id: cache-htmltest @@ -71,7 +71,7 @@ jobs: # - run: docker run -v $(pwd):/docs --entrypoint ash ghcr.io/srl-labs/mkdocs-material-insiders:$MKDOCS_MATERIAL_VER -c 'git config --global --add safe.directory /docs; mkdocs gh-deploy --force' publish-docs: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 env: BRANCH_NAME: ${{ github.head_ref || github.ref_name }} steps: @@ -89,7 +89,7 @@ jobs: - name: Build docs run: | - docker run --env CI=true --env MKDOCS_GIT_COMMITTERS_APIKEY=${{ secrets.GITHUB_TOKEN }} -v $(pwd):/docs --user $(id -u):$(id -g) --entrypoint mkdocs ghcr.io/srl-labs/mkdocs-material-insiders:$MKDOCS_MATERIAL_VER build + docker run --env CI=true --env MKDOCS_GIT_COMMITTERS_APIKEY=${{ secrets.GITHUB_TOKEN }} -v $(pwd):/docs --user $(id -u):$(id -g) --entrypoint mkdocs ${MKDOCS_MATERIAL_IMAGE} build - name: Publish to Cloudflare Pages uses: cloudflare/wrangler-action@v3 diff --git a/Makefile b/Makefile index 809246e8..62712429 100644 --- a/Makefile +++ b/Makefile @@ -1,43 +1,33 @@ -MKDOCS_VER = 9.6.1 -# insiders version/tag https://github.com/srl-labs/mkdocs-material-insiders/pkgs/container/mkdocs-material-insiders -# when changing the version, update the version in the cicd.yml file -MKDOCS_INS_VER = 9.6.16-insiders-4.53.16-hellt +MKDOCS_VERSION ?= v9.7.1-1 +MKDOCS_INET_IMAGE := ghcr.io/eda-labs/mkdocs-material:$(MKDOCS_VERSION) .PHONY: docs docs: - docker run --rm -v $$(pwd):/docs --entrypoint mkdocs registry.srlinux.dev/pub/mkdocs-material-insiders:$(MKDOCS_INS_VER) build --clean --strict + docker run --rm -v $$(pwd):/docs --entrypoint mkdocs ${MKDOCS_INET_IMAGE} build --clean --strict -# serve the site locally using mkdocs-material public container -.PHONY: serve -serve: - docker run -it --rm -p 8001:8000 -v $$(pwd):/docs squidfunk/mkdocs-material:$(MKDOCS_VER) - -# serve the site locally using mkdocs-material insiders container -.PHONY: serve-insiders -serve-insiders: +# serve the doc site locally with full site rendered on each change (slower) +.PHONY: serve-docs-full +serve-docs-full: docker run -it --rm -p 8001:8000 -v $$(pwd):/docs registry.srlinux.dev/pub/mkdocs-material-insiders:$(MKDOCS_INS_VER) -# serve the site locally using mkdocs-material insiders container using dirty-reloader -.PHONY: serve-insiders-dirty -serve-insiders-dirty: - docker run -it --rm -p 8001:8000 -v $$(pwd):/docs registry.srlinux.dev/pub/mkdocs-material-insiders:$(MKDOCS_INS_VER) serve --dirtyreload -a 0.0.0.0:8000 - +# serve the doc site locally with dirty reload (faster, but toc updates may require a manual stop/start) .PHONY: serve-docs -serve-docs: serve-insiders-dirty +serve-docs: + docker run -it --rm -p 8001:8000 -v $$(pwd):/docs ${MKDOCS_INET_IMAGE} serve --dirtyreload -a 0.0.0.0:8000 .PHONY: htmltest htmltest: - docker run --rm -v $$(pwd):/docs --entrypoint mkdocs registry.srlinux.dev/pub/mkdocs-material-insiders:$(MKDOCS_INS_VER) build --clean --strict + docker run --rm -v $$(pwd):/docs --entrypoint mkdocs ${MKDOCS_INET_IMAGE} build --clean --strict docker run --rm -v $$(pwd):/test wjdp/htmltest --conf ./site/htmltest.yml rm -rf ./site build-insiders: - docker run -v $$(pwd):/docs --entrypoint mkdocs registry.srlinux.dev/pub/mkdocs-material-insiders:$(MKDOCS_INS_VER) build --clean --strict + docker run -v $$(pwd):/docs --entrypoint mkdocs ${MKDOCS_INET_IMAGE} build --clean --strict push-docs: # push docs to gh-pages branch manually. Use when pipeline misbehaves - docker run -v ${SSH_AUTH_SOCK}:/ssh-agent --env SSH_AUTH_SOCK=/ssh-agent --env GIT_SSH_COMMAND="ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no" -v $$(pwd):/docs --entrypoint mkdocs ghcr.io/srl-labs/mkdocs-material-insiders:$(MKDOCS_INS_VER) gh-deploy --force --strict + docker run -v ${SSH_AUTH_SOCK}:/ssh-agent --env SSH_AUTH_SOCK=/ssh-agent --env GIT_SSH_COMMAND="ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no" -v $$(pwd):/docs --entrypoint mkdocs ${MKDOCS_INET_IMAGE} gh-deploy --force --strict -add-no-index: # replace noindex commen in main template to include robots noindex instruction. This is needed prior pushing to staging, so that staging is not indexed by robots +add-no-index: # replace noindex comment in main template to include robots noindex instruction. This is needed prior pushing to staging, so that staging is not indexed by robots sed -i 's///g' docs/overrides/main.html # build html docs and push to staging1 server - https://hellt.github.io/learn-srlinux-stage1 diff --git a/docs/get-started/cli.md b/docs/get-started/cli.md index 9e540257..be235e2d 100644 --- a/docs/get-started/cli.md +++ b/docs/get-started/cli.md @@ -33,7 +33,7 @@ Hitting the ? in the CLI will list all available **local** commands: ```srl --{ running }--[ ]-- -A:leaf1# +A:admin@leaf1# Local commands: acl Top level container for configuration and operational state related to access control lists (ACLs) bfd Context to configure BFD parameters and report BFD sessions state @@ -56,7 +56,7 @@ If you press ? again, you will see all available commands, local and ```srl --{ running }--[ ]-- -A:leaf1# +A:admin@leaf1# Local commands: acl Top level container for configuration and operational state related to access control lists (ACLs) bfd Context to configure BFD parameters and report BFD sessions state @@ -118,7 +118,7 @@ As said, in this mode a user can execute operational and show commands. To give Ping is an operational command. --{ running }--[ ]-- -A:leaf1# ping network-instance mgmt 172.20.20.1 +A:admin@leaf1# ping network-instance mgmt 172.20.20.1 Using network instance mgmt PING 172.20.20.1 (172.20.20.1) 56(84) bytes of data. 64 bytes from 172.20.20.1: icmp_seq=1 ttl=64 time=5.59 ms @@ -130,7 +130,7 @@ PING 172.20.20.1 (172.20.20.1) 56(84) bytes of data. ```srl --{ running }--[ ]-- -A:leaf1# show version +A:admin@leaf1# show version -------------------------------------------------- Hostname : leaf1 Chassis Type : 7220 IXR-D2L @@ -154,10 +154,10 @@ The `candidate` mode is the mode in which a user performs configuration changes ```srl title="Enter candidate mode from running mode" --{ running }--[ ]-- -A:leaf1# enter candidate +A:admin@leaf1# enter candidate --{ candidate shared default }--[ ]-- -A:leaf1# +A:admin@leaf1# ``` You can immediately notice how the prompt changed. Now it shows the following information: @@ -177,10 +177,10 @@ Think about counters, like interface statistics, or the system uptime, or BGP pe ```srl title="Enter candidate mode from running mode" --{ running }--[ ]-- -A:leaf1# enter state +A:admin@leaf1# enter state --{ state }--[ ]-- -A:leaf1# +A:admin@leaf1# ``` /// admonition | Changing between CLI modes @@ -219,17 +219,17 @@ Let's select `mgmt0` or type it in and press Enter to enter the `inte ```srl --{ running }--[ ]-- -A:leaf1# interface mgmt0 +A:admin@leaf1# interface mgmt0 --{ running }--[ interface mgmt0 ]-- -A:leaf1# +A:admin@leaf1# ``` The prompt changed to show the current context - `[ interface mgmt0 ]`. Recall, that SR Linux CLI is context-aware, therefore using the ? key now will show you the different local commands, as you are standing in a different current context. ```srl --{ running }--[ interface mgmt0 ]-- -A:leaf1# +A:admin@leaf1# Local commands: admin-state* The configured, desired state of the interface description* A user-configured description of the interface @@ -253,14 +253,14 @@ By typing `subinterface` and pressing TAB you will see autosuggested ```srl title="Accept suggested subinterface index with TAB key" --{ running }--[ interface mgmt0 ]-- -A:leaf1# subinterface 0 +A:admin@leaf1# subinterface 0 ``` Now the prompt changed to show the current context - `[ interface mgmt0 subinterface 0 ]`. ```srl --{ running }--[ interface mgmt0 subinterface 0 ]-- -A:leaf1# +A:admin@leaf1# ``` ### Exiting contexts @@ -269,19 +269,18 @@ To exit from the current context use `exit` command, that takes an optional argu ```srl title="exit brings you one level up in the context hierarchy" --{ running }--[ interface mgmt0 subinterface 0 ]-- -A:leaf1# exit - +A:admin@leaf1# exit --{ running }--[ interface mgmt0 ]-- -A:leaf1# +A:admin@leaf1# ``` If you want to exit to a specific parent context from the current one, you can leverage `exit to` variant: ```srl --{ running }--[ interface mgmt0 subinterface 0 ]-- -A:leaf1# exit to - interface - root +A:admin@leaf1# exit to + interface + root ``` The autosuggestion window will list all parent contexts (`interface`, `root`) that you can exit to from your current context. @@ -290,10 +289,10 @@ And lastly, you can also navigate to whatever context from any other context by ```srl --{ running }--[ interface mgmt0 subinterface 0 ]-- -A:leaf1# / system information +A:admin@leaf1# / system information --{ running }--[ system information ]-- -A:leaf1# +A:admin@leaf1# ``` ### Command scope @@ -302,7 +301,7 @@ When you're in a context, your commands are scoped to that context. For example, ```srl --{ running }--[ interface mgmt0 subinterface 0 ]-- -A:leaf1# tree +A:admin@leaf1# tree subinterface +-- type +-- description @@ -318,7 +317,7 @@ If you want to change the context of a given command you provide the context as ```srl --{ running }--[ interface mgmt0 subinterface 0 ]-- -A:leaf1# tree /system information +A:admin@leaf1# tree /system information information +-- contact +-- location @@ -328,7 +327,7 @@ Even `show` commands that we will explore later are context-aware. For example, ```srl --{ running }--[ interface mgmt0 subinterface 0 ]-- -A:leaf1# show version +A:admin@leaf1# show version Parsing error: Unknown token 'version'. Options are ['#', '..', '/', '>', '>>', 'all', 'brief', 'detail', 'queue-detail', '|', '}'] ``` @@ -337,7 +336,7 @@ And that is because in the current context there is no `version` command that `s ```srl --{ running }--[ interface mgmt0 subinterface 0 ]-- -A:leaf1# show / version +A:admin@leaf1# show / version ----------------------------------------------------- Hostname : leaf1 Chassis Type : 7220 IXR-D2L @@ -354,17 +353,17 @@ While we are in the running mode, lets go once again to the `mgmt0` interface co ```srl --{ running }--[ ]-- -A:leaf1# interface mgmt0 +A:admin@leaf1# interface mgmt0 --{ running }--[ interface mgmt0 ]-- -A:leaf1# +A:admin@leaf1# ``` Now let's run the `info` command: ```srl --{ running }--[ interface mgmt0 ]-- -A:leaf1# info +A:admin@leaf1# info admin-state enable subinterface 0 { admin-state enable @@ -389,10 +388,10 @@ What happens, if we switch to the `state` mode right from the `interface mgmt0` ```srl --{ running }--[ interface mgmt0 ]-- -A:leaf1# enter state +A:admin@leaf1# enter state --{ state }--[ interface mgmt0 ]-- -A:leaf1# info +A:admin@leaf1# info admin-state enable mtu 1514 ifindex 1077952510 @@ -427,7 +426,7 @@ Even though `info` behaves differently depending on the CLI mode, you don't need ```srl --{ state }--[ interface mgmt0 ]-- -A:leaf1# info from running +A:admin@leaf1# info from running admin-state enable subinterface 0 { admin-state enable @@ -451,7 +450,7 @@ There was a lot of information when we ran `info` while in the `state` mode. If ```srl --{ state }--[ interface mgmt0 ]-- -A:leaf1# info depth 1 +A:admin@leaf1# info depth 1 admin-state enable mtu 1514 ifindex 1077952510 @@ -498,37 +497,39 @@ A:leaf1# info depth 1 } ``` -### with context +### path context + +The last positional argument of the `info` command sets the context from which you want to retrieve the information. This allows you to fetch information from any context without changing your current context. +Simply provide the target context as the last argument to the `info` command. -Another useful argument to the `info` command is context argument that is the last element of the command. It allows you to specify the context from which you want to retrieve the information. It would be not cool to first ask you to move in a certain context to retrieve the information from. +```srl +--{ running }--[ ]-- +A:admin@leaf1# info from state /system information + description "SRLinux-v25.10.1-399-g90c1dbe35ef 7220 IXR-D2L Copyright (c) 2000-2025 Nokia." + current-datetime "2026-01-09T08:48:07.062Z (now)" + last-booted "2026-01-09T08:28:48.317Z (19 minutes ago)" + version v25.10.1-399-g90c1dbe35ef +``` -Thus, you can simply provide the target context as the last argument to the `info` command. And you can combine it with the `from` and `depth` arguments as well. +> And you can combine it with the `from` and `depth` arguments as well. + +When `info` is executed with the path argument, it will return information from the specified context as shown above. In case it is desired to get information from the provided context but from the root of the context tree, add `with-context` argument to the `info` command: ```srl ---{ state }--[ interface mgmt0 ]-- -A:leaf1# info from running /system banner +--{ running }--[ ]-- +A:admin@leaf1# info with-context from state /system information system { - banner { - login-banner "................................................................ -: Welcome to Nokia SR Linux! : -: Open Network OS for the NetOps era. : -: : -: This is a freely distributed official container image. : -: Use it - Share it : -: : -: Get started: https://learn.srlinux.dev : -: Container: https://go.srlinux.dev/container-image : -: Docs: https://doc.srlinux.dev/24-7 : -: Rel. notes: https://doc.srlinux.dev/rn24-7-2 : -: YANG: https://yang.srlinux.dev/v24.7.2 : -: Discord: https://go.srlinux.dev/discord : -: Contact: https://go.srlinux.dev/contact-sales : -................................................................ -" + information { + description "SRLinux-v25.10.1-399-g90c1dbe35ef 7220 IXR-D2L Copyright (c) 2000-2025 Nokia. Kernel 6.17.8-orbstack-00308-g8f9c941121b1 #1 SMP PREEMPT Thu Nov 20 09:34:02 UTC 2025" + current-datetime "2026-01-09T08:56:36.142Z (now)" + last-booted "2026-01-09T08:28:48.317Z (27 minutes ago)" + version v25.10.1-399-g90c1dbe35ef } } ``` +What changed is that now the output starts from the root of the state tree, showing the full path to the `/system/information` context. + ## Output modifiers Output modifiers allow you to process the output of the commands (such as `info` output) and modify it. They should be provided after the command and after the pipe - | - key. @@ -541,7 +542,7 @@ Can be useful when you want to see the large output of the `info` or `show` comm ```srl --{ state }--[ interface mgmt0 ]-- -A:leaf1# info | more +A:admin@leaf1# info | more admin-state enable mtu 1514 ifindex 1077952510 @@ -588,7 +589,7 @@ It is primarily used with the `info` output. For example, if you want to convert ```srl --{ running }--[ interface mgmt0 ]-- -A:leaf1# info | as json +A:admin@leaf1# info | as json { "name": "mgmt0", "admin-state": "enable", @@ -617,7 +618,7 @@ A:leaf1# info | as json ```srl --{ running }--[ interface mgmt0 ]-- -A:leaf1# info | as yaml +A:admin@leaf1# info | as yaml --- name: mgmt0 admin-state: enable @@ -653,7 +654,7 @@ Naturally, the first command you execute on a system is the `show version` comma ```srl --{ running }--[ interface mgmt0 ]-- -A:leaf1# show /version +A:admin@leaf1# show /version -------------------------------------------------- Hostname : leaf1 Chassis Type : 7220 IXR-D2L @@ -676,7 +677,7 @@ Let's look at the example where we use the `show interface` command: ```srl --{ running }--[ ]-- -A:leaf1# show interface mgmt0 +A:admin@leaf1# show interface mgmt0 ============================================================================ mgmt0 is up, speed 1G, type None mgmt0.0 is up @@ -697,20 +698,20 @@ Another, more elaborated example is showing the `bgp` summary of the management ```srl --{ running }--[ ]-- -A:leaf1# show network-instance mgmt protocols bgp summary +A:admin@leaf1# show network-instance mgmt protocols bgp summary ``` It doesn't yield any output, since we don't have any BGP sessions configured, but it is a good example of how the show command follows the same schema, because to enter into the bgp context for configuration we would type the following: ```srl --{ running }--[ ]-- -A:leaf1# enter candidate +A:admin@leaf1# enter candidate --{ candidate shared default }--[ ]-- -A:leaf1# network-instance mgmt protocols bgp +A:admin@leaf1# network-instance mgmt protocols bgp --{ * candidate shared default }--[ network-instance mgmt protocols bgp ]-- -A:leaf1# +A:admin@leaf1# ``` _Konsequent, praktisch, gut._ diff --git a/docs/get-started/index.md b/docs/get-started/index.md index 67a8fe69..a97801d7 100644 --- a/docs/get-started/index.md +++ b/docs/get-started/index.md @@ -25,7 +25,7 @@ SR Linux uses the following release numbering convention: The last minor release of the year (e.g 24.10) - is considered the long term release and will get security and bug fixes longer than the other minor releases in the same major release. -This getting started tutorial is based on **SR Linux 24.10.X** version and will adapt to newer releases over time. If you are using a different version, you may see slight differences in the command outputs. +This getting started tutorial is based on **SR Linux 25.10.X** version and will adapt to newer releases over time. If you are using a different version, you may see slight differences in the command outputs. Let us know in the comments, or in our [Discord](https://discord.gg/tZvgjQ6PZf), if you would notice any discrepancies. /// @@ -39,8 +39,8 @@ This portal does not substitute but augments the official SR Linux documentation 1. SR Linux documentation collection - https://documentation.nokia.com/srlinux 2. Short and sweet URLs with the release version being part of the URL - 1. https://doc.srlinux.dev/22-11 for the main documentation pages of SR Linux 22.11 release. - 2. https://doc.srlinux.dev/rn22-11-2 for a direct link to Release Notes. + 1. https://doc.srlinux.dev/25-10 for the main documentation pages of SR Linux 25.10 release. + 2. https://doc.srlinux.dev/rn25-10-1 for a direct link to Release Notes[^1]. 3. Nokia Network Infrastructure documentation collection - https://bit.ly/iondoc ## SR Linux videos @@ -54,3 +54,4 @@ If your way of learning is through videos, you will appreciate short and to-the- More than just a lab service, **My DCF Learning Labs** offers lab exercises complete with inline instructions and solutions, giving you everything you need in one easy-to-use browser-based application - access multiple lab types and exercises to develop your SR Linux skills. [Learn more](https://www.nokia.com/networks/training/dcf/my-dcf-learning-labs/?utm_source=Learn+SR+Linux) about My DCF Learning Labs and [watch a tutorial](https://www.youtube.com/watch?v=ycDNLoYrdko), or [request your free access now](https://forms.office.com/e/x8d1P1rdNt). +[^1]: You need to have an account on Nokia support portal to access the Release Notes. diff --git a/docs/get-started/lab.md b/docs/get-started/lab.md index c58596c0..b90ea226 100644 --- a/docs/get-started/lab.md +++ b/docs/get-started/lab.md @@ -39,7 +39,7 @@ Everything is ready for the lab deployment. We are going to spin up this lovely How do we deploy it? Enter in some directory where the lab is about to be cloned and run this one-liner: ```{.bash .no-select} -sudo containerlab deploy -c -t \ +containerlab deploy -c -t \ https://github.com/srl-labs/srlinux-getting-started #(1)! ``` @@ -55,9 +55,9 @@ In less than a minute, you should have the lab running with the summary table of +---+---------+--------------+------------------------------------+---------------+---------+----------------+----------------------+ | 1 | client1 | 9b3955f9ab50 | ghcr.io/srl-labs/network-multitool | linux | running | 172.20.20.8/24 | 2001:172:20:20::8/64 | | 2 | client2 | 50d068413361 | ghcr.io/srl-labs/network-multitool | linux | running | 172.20.20.4/24 | 2001:172:20:20::4/64 | -| 3 | leaf1 | f1643c11603b | ghcr.io/nokia/srlinux:24.10.4 | nokia_srlinux | running | 172.20.20.7/24 | 2001:172:20:20::7/64 | -| 4 | leaf2 | fb50f174cb73 | ghcr.io/nokia/srlinux:24.10.4 | nokia_srlinux | running | 172.20.20.6/24 | 2001:172:20:20::6/64 | -| 5 | spine1 | 8162d45caac9 | ghcr.io/nokia/srlinux:24.10.4 | nokia_srlinux | running | 172.20.20.5/24 | 2001:172:20:20::5/64 | +| 3 | leaf1 | f1643c11603b | ghcr.io/nokia/srlinux:25.10 | nokia_srlinux | running | 172.20.20.7/24 | 2001:172:20:20::7/64 | +| 4 | leaf2 | fb50f174cb73 | ghcr.io/nokia/srlinux:25.10 | nokia_srlinux | running | 172.20.20.6/24 | 2001:172:20:20::6/64 | +| 5 | spine1 | 8162d45caac9 | ghcr.io/nokia/srlinux:25.10 | nokia_srlinux | running | 172.20.20.5/24 | 2001:172:20:20::5/64 | +---+---------+--------------+------------------------------------+---------------+---------+----------------+----------------------+ ``` @@ -131,8 +131,8 @@ Warning: Permanently added 'leaf1' (ED25519) to the list of known hosts. : Get started: https://learn.srlinux.dev : : Container: https://go.srlinux.dev/container-image : : Docs: https://doc.srlinux.dev/24-10 : -: Rel. notes: https://doc.srlinux.dev/rn24-10-4 : -: YANG: https://yang.srlinux.dev/v24.10.4 : +: Rel. notes: https://doc.srlinux.dev/rn25-10-1 : +: YANG: https://yang.srlinux.dev/v25.10.1 : : Discord: https://go.srlinux.dev/discord : : Contact: https://go.srlinux.dev/contact-sales : ................................................................ @@ -142,7 +142,7 @@ Welcome to the srlinux CLI. Type 'help' (and press ) if you need any help using this. --{ running }--[ ]-- -A:leaf1# +A:admin@leaf1# ``` @@ -157,15 +157,15 @@ Alright, we are in, let's get familiar with the SR Linux CLI! Here are some useful commands to manage your lab: ```bash title="List lab nodes" -sudo containerlab inspect --all +containerlab inspect --all ``` ```bash title="destroy the get started lab (execute from within the srlinux-getting-started directory)" -sudo containerlab destroy -c +containerlab destroy -c ``` ```bash title="redeploy the get started lab" -sudo containerlab deploy -c -t \ +containerlab redeploy -c -t \ https://github.com/srl-labs/srlinux-getting-started ``` diff --git a/docs/ndk/guide/dev/go/with-bond/index.md b/docs/ndk/guide/dev/go/with-bond/index.md index b4205fa9..2bd46762 100644 --- a/docs/ndk/guide/dev/go/with-bond/index.md +++ b/docs/ndk/guide/dev/go/with-bond/index.md @@ -26,7 +26,7 @@ cd ndk-greeter-go /// note attrs: {class: inline end} -[Containerlab v0.68.0](https://containerlab.dev/install) version, `srl-labs/bond` v0.3.0 and SR Linux 25.3 are used in this tutorial. Users are advised to use these version to have the same outputs as in this tutorial. +[Containerlab v0.68.0](https://containerlab.dev/install) version, `srl-labs/bond` v0.3.0 and SR Linux 25.10 are used in this tutorial. Users are advised to use these versions to have the same outputs as in this tutorial. Newer versions of Containerlab and SR Linux should work as well, but the outputs might be slightly different. ///