From 9f4b086bb796cbbaecefe06bb1cf18f6fe2e254c Mon Sep 17 00:00:00 2001 From: Roman Dodin Date: Wed, 14 Apr 2021 14:43:21 +0200 Subject: [PATCH 1/5] fixed typo --- docs/manual/nodes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/manual/nodes.md b/docs/manual/nodes.md index cb19c558c..8a8571360 100644 --- a/docs/manual/nodes.md +++ b/docs/manual/nodes.md @@ -171,7 +171,7 @@ As a result of such label distribution, node1 will have the following labels: ```bash label1: node_value1 # most specific label wins label2: value2 # inherited from defaults section -label2: value3 # inherited from kinds section +label3: value3 # inherited from kinds section ``` ### mgmt_ipv4 From 6739d7cb6bf853c51b13c979ce38e098683ad259 Mon Sep 17 00:00:00 2001 From: Roman Dodin Date: Wed, 14 Apr 2021 14:55:51 +0200 Subject: [PATCH 2/5] ignore shields as they hit api limit --- docs/htmltest.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/htmltest.yml b/docs/htmltest.yml index 951f445e0..329da8a43 100644 --- a/docs/htmltest.yml +++ b/docs/htmltest.yml @@ -3,6 +3,7 @@ DirectoryPath: ./site IgnoreURLs: - fonts.gstatic.com + - img.shields.io IgnoreDirectoryMissingTrailingSlash: true IgnoreAltMissing: true IgnoreSSLVerify: true From 86a3d7e8622d8a98757035a644a623a48d7e5794 Mon Sep 17 00:00:00 2001 From: Roman Dodin Date: Tue, 20 Apr 2021 21:28:53 +0200 Subject: [PATCH 3/5] removed a mention about templated configs --- docs/manual/nodes.md | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/docs/manual/nodes.md b/docs/manual/nodes.md index 8a8571360..17c24b35e 100644 --- a/docs/manual/nodes.md +++ b/docs/manual/nodes.md @@ -59,11 +59,7 @@ docker tag srlinux:20.6.1-286 srlinux:latest Some containerized NOSes require a license to operate. With `license` property a user sets a path to a license file that a node will use. The license file will then be mounted to the container by the path that is defined by the `kind/type` of the node. ### config -For the specific kinds its possible to pass a path to a config template file that a node will use. - -The template engine is [Go template](https://golang.org/pkg/text/template/). The [srlconfig.tpl](https://github.com/srl-labs/containerlab/blob/master/templates/srl/srlconfig.tpl) template is used by default for Nokia SR Linux nodes and can be used to create configuration templates for SR Linux nodes. - -Supported for: Nokia SR Linux. +For some kinds its possible to pass a path to a config file that a node will use on start instead of a bare config. Check documentation for a specific kind to see if `config` element is supported. ### binds In order to expose host files to the containerized nodes a user can leverage the bind mount capability. From 7701e079fd025a8da5fcb604e8d487348d5f873b Mon Sep 17 00:00:00 2001 From: Roman Dodin Date: Thu, 22 Apr 2021 13:34:18 +0200 Subject: [PATCH 4/5] added clarifications to conf artifacts --- docs/manual/conf-artifacts.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/docs/manual/conf-artifacts.md b/docs/manual/conf-artifacts.md index f0e73e863..bdb535207 100644 --- a/docs/manual/conf-artifacts.md +++ b/docs/manual/conf-artifacts.md @@ -3,12 +3,15 @@ When containerlab deploys a lab it creates a Lab Directory in the **current work Things like: * Root CA certificate and node' TLS certificate and private keys -* node config file (if applicable) +* node config file (if applicable and supported by the kind) * node-specific files and directories that are required to launch the container * license files if needed all these artifacts will be available under a Lab Directory. +!!!note + If you configure a node with [`binds`](nodes.md#binds) mounts and the source of the bind is not within the lab directory already, containerlab will copy over the source files/dirs into the lab directory on users behalf. + ### Identifying a lab directory The lab directory name follows the `clab-` template. Thus, if the name of your lab is `srl02` you will find the `clab-srl02` directory created in the current working directory. @@ -25,7 +28,7 @@ drwxr-xr-x 3 root root 79 Dec 1 22:11 srl2 The contents of this directory will contain kind-specific files and directories. Containerlab will name directories after the node names and will only created those if they are needed. For instance, by default any node of kind `linux` will not have it's own directory under the Lab Directory. ### Persistance of a lab directory -When a user first deploy a lab, the Lab Directory gets created. Depending on a node's kind, this directory might act as a persistent storage area for a node. A common case is having the configuration file saved when the changes are made to the node via management interfaces. +When a user first deploy a lab, the Lab Directory gets created if it was not present. Depending on a node's kind, this directory might act as a persistent storage area for a node. A common case is having the configuration file saved when the changes are made to the node via management interfaces. Below is an example of the `srl1` node directory contents. It keeps a directory that is mounted to containers configuration path, as well as stores additional files needed to launch and configure the node. From b8eb3832c3b134d252437276c126520d2c106197 Mon Sep 17 00:00:00 2001 From: Roman Dodin Date: Wed, 19 May 2021 12:34:44 +0200 Subject: [PATCH 5/5] release 0.14.0 --- docs/rn/0.14.0.md | 29 +++++++++++++++++++++++++++++ mkdocs.yml | 1 + 2 files changed, 30 insertions(+) create mode 100644 docs/rn/0.14.0.md diff --git a/docs/rn/0.14.0.md b/docs/rn/0.14.0.md new file mode 100644 index 000000000..304b87ece --- /dev/null +++ b/docs/rn/0.14.0.md @@ -0,0 +1,29 @@ +# Release 0.14.0 +:material-calendar: 2021-05-19 + +## Container runtime support +Michael Kashin (@networkop) delivered a massive infrastructure improvement by adding the foundation that allows containerlab to run on multiple container runtimes such as `containerd`, `podman` and the likes. + +For the end users of containerlab that will give more flexibility on platforms selection where containerlab can run. + +## Arista `et` interfaces +Steve Ulrich (@sulrich) added support for synchronization the ENV vars passed to cEOS node and the respective container command. This makes it possible to set the cEOS specific env vars and be sure that they will be mirrored in the CMD instruction of the container. + +This allowed for users to, for example, overwrite the `INTFTYPE` env var to allow for using `et` interfaces with cEOS. This is documented in the [ceos kind docs](../manual/kinds/ceos.md). + + +## `nodeDir` path variable +Markus Vahlenkamp (@steiler) added support for `$nodeDir` variable that you can now use in the bind paths. This is useful to simplify the configuration artifacts mapping when they are kept in the node specific directories. Read more on this in the [nodes/binds](../manual/nodes.md#binds) documentation section. + +## Improved SR OS (`vr-sros`) boot procedure +With hellt/vrnetlab v0.3.1 we added a hardened process of SR OS boot sequence. Before that fix the vr-sros nodes might get problems in attaching container interfaces in time. Starting with v0.3.1 that issue is no more and vr-sros nodes will wait till the dataplane interfaces will show up in the container namespace. + +## Miscellaneous +* [fixed](https://github.com/srl-labs/containerlab/commit/dbbd248591036c1e8263132e35743af2dacc6a4c) bridge attachment issue +* [fixed](https://github.com/srl-labs/containerlab/commit/c1d64ff538aadcabbe1bd5f2920ed40a198177ec) docker repo naming resolution which prevented pulling certainly formatted repositories +* [fixed](https://github.com/srl-labs/containerlab/commit/edc72080eab97aa809485ba4823e570cc5898e17) Arista cEOS configuration regeneration and management interface addressing. +* @networkop added support for predefined mac addresses that containerlab uses for veth interfaces. The MAC OUI is `00:c1:ab` for all containerlab interfaces. +* @networkop added support for max-workers argument for `delete` command. + +## New contributors +Thanks to [@sulrich](https://github.com/sulrich), [@blinklet](https://github.com/blinklet) and [@networkop](https://github.com/networkop) for providing some of these enhancements/fixes and joining our [contributors ranks](https://github.com/srl-labs/containerlab/graphs/contributors)! \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml index d74cbf675..225c09be7 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -71,6 +71,7 @@ nav: - BGP VPLS between Nokia and Juniper: lab-examples/bgp-vpls-nok-jun.md - Multi-node labs: lab-examples/multinode.md - Release notes: + - 0.14.0: rn/0.14.0.md - 0.13.0: rn/0.13.0.md - 0.12.0: rn/0.12.0.md - 0.11.0: rn/0.11.0.md