<feed xmlns='http://www.w3.org/2005/Atom'>
<title>veeos-1x.git/src/services/vyos-configd, branch current</title>
<subtitle>VyOS command definitions, scripts, and utilities (mirror of https://github.com/vyos-contrib/veeos-1x.git)
</subtitle>
<id>https://git.amelek.net/vyos-contrib/veeos-1x.git/atom?h=current</id>
<link rel='self' href='https://git.amelek.net/vyos-contrib/veeos-1x.git/atom?h=current'/>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos-contrib/veeos-1x.git/'/>
<updated>2025-01-31T18:06:46+00:00</updated>
<entry>
<title>configd: T7119: fix misleading debug messages</title>
<updated>2025-01-31T18:06:46+00:00</updated>
<author>
<name>John Estabrook</name>
<email>jestabro@vyos.io</email>
</author>
<published>2025-01-31T17:31:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos-contrib/veeos-1x.git/commit/?id=213440666e0d2379ed3e686e0e66ec535d0c4d45'/>
<id>urn:sha1:213440666e0d2379ed3e686e0e66ec535d0c4d45</id>
<content type='text'>
An artifact of T6899 included a report of 'error_code 1' on success: for
consistency with shim error codes 1 == SUCCESS, however, the debug
message is misleading and is here corrected.
</content>
</entry>
<entry>
<title>configd: T7119: normalize formatting</title>
<updated>2025-01-31T18:06:46+00:00</updated>
<author>
<name>John Estabrook</name>
<email>jestabro@vyos.io</email>
</author>
<published>2025-01-31T17:29:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos-contrib/veeos-1x.git/commit/?id=0f0fb0415227444d8465d502bbac030b1ab0be13'/>
<id>urn:sha1:0f0fb0415227444d8465d502bbac030b1ab0be13</id>
<content type='text'>
</content>
</entry>
<entry>
<title>configd: T6747: use one long-lived instance of FRRender (#4274)</title>
<updated>2025-01-06T17:05:06+00:00</updated>
<author>
<name>Christian Breunig</name>
<email>christian@breunig.cc</email>
</author>
<published>2025-01-06T17:05:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos-contrib/veeos-1x.git/commit/?id=f9f4137d09564da90a18fec9c9d7ceb64cb6c736'/>
<id>urn:sha1:f9f4137d09564da90a18fec9c9d7ceb64cb6c736</id>
<content type='text'>
* smoketest: T6747: call wait after commit() only for FRR related tests

Commit 702a60a8de28 ("smoketest: T6746: wait after commit() until frr-reload
is no longer running") added a guard timeout for every commit executed via CLI
smoketests. This commit changes the bahavior to only add the guard timeout
for FRR related testscases.

This improves the overall smoketest time.

* configd: T6747: use one long-lived instance of FRRender

Previously there was one FRRender() instance per config session. This resulted
in re-rendering the FRR configuration every time a new config session was
created.

Example:

  vyos@vyos:~$ configure
  vyos@vyos# set interfaces dummy dum0 description foo
  vyos@vyos# commit
  vyos@vyos# exit

  vyos@vyos:~$ configure
  vyos@vyos# set interfaces dummy dum0 description bar
  vyos@vyos# commit
  vyos@vyos# exit

In the past this caused a re-render of the FRR configuration as the delta check
added in commit ec80c75d6776 ("frrender: T6746: only re-render FRR config if
config_dict did change") evaluated to false, as it operated on a new instance
of the FRRender class.

With this change there is no FRR re-render, as there is nothing to update
in FRR.</content>
</entry>
<entry>
<title>frr: T6746: additional improvements after 10.2 upgrade (#4259)</title>
<updated>2024-12-30T19:35:08+00:00</updated>
<author>
<name>Christian Breunig</name>
<email>christian@breunig.cc</email>
</author>
<published>2024-12-30T19:35:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos-contrib/veeos-1x.git/commit/?id=ec80c75d677608da438a9360657d9729296afc73'/>
<id>urn:sha1:ec80c75d677608da438a9360657d9729296afc73</id>
<content type='text'>
* smoketest: T6746: add substring search in getFRRconfig()

Some daemons (e.g. bgpd) have several nested substrings/sections like

router bgp 100
 address-family ipv4 unicast
 ..
 exit-address-family
exit

We can now use getFRRconfig() with the substring option to extract only
 address-family ipv4 unicast
 ..
 exit-address-family

Making config validation more granular

* frrender: T6746: only re-render FRR config if config_dict did change

* frrender: T6746: fix naming glitch isis/eigrp

* frrender: T6746: add --stdout option when running with debug flags

* smoketest: T6746: remove unneeded commit_guard time

It was an invalid workarround as the underlaying issue seems to be a race
condition in CStore.

The commit process is not finished until all pending files from
VYATTA_CHANGES_ONLY_DIR are copied to VYATTA_ACTIVE_CONFIGURATION_DIR. This is
done inside libvyatta-cfg1 and the FUSE UnionFS part. On large non-interactive
commits FUSE UnionFS might not replicate the real state in time, leading to
errors when querying the working and effective configuration.

TO BE DELETED AFTER SWITCH TO IN MEMORY CONFIG</content>
</entry>
<entry>
<title>frrender: T6746: move get_frrender_dict from vyos.configdict to this module</title>
<updated>2024-12-18T21:40:05+00:00</updated>
<author>
<name>Christian Breunig</name>
<email>christian@breunig.cc</email>
</author>
<published>2024-12-18T18:25:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos-contrib/veeos-1x.git/commit/?id=77628e49379066e07b4046a00007187263e7206b'/>
<id>urn:sha1:77628e49379066e07b4046a00007187263e7206b</id>
<content type='text'>
Keep all FRRender stuff in one place.
</content>
</entry>
<entry>
<title>vyos-configd: T6746: render resulting FRR configuration only once</title>
<updated>2024-12-18T18:17:33+00:00</updated>
<author>
<name>Christian Breunig</name>
<email>christian@breunig.cc</email>
</author>
<published>2024-12-18T18:17:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos-contrib/veeos-1x.git/commit/?id=75de2fa91c7d727eef9d38d045e0e04fba218695'/>
<id>urn:sha1:75de2fa91c7d727eef9d38d045e0e04fba218695</id>
<content type='text'>
Previously the FRR configuration was rendered via Jinja2 on every call to
get_frrendet_dict() - but it was used/applied only once.

We save the CPU cycles and render the FRR configuration only once prior to
applying it in FRR.
</content>
</entry>
<entry>
<title>configd: T6746: handle FRR config reload as last step in commit</title>
<updated>2024-12-16T21:24:50+00:00</updated>
<author>
<name>Christian Breunig</name>
<email>christian@breunig.cc</email>
</author>
<published>2024-12-11T19:14:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos-contrib/veeos-1x.git/commit/?id=55683a8406e17408021437cb35b57c48bd8b2ab1'/>
<id>urn:sha1:55683a8406e17408021437cb35b57c48bd8b2ab1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>frr: T6746: integrate FRRender class into vyos-configd</title>
<updated>2024-12-16T21:24:50+00:00</updated>
<author>
<name>Christian Breunig</name>
<email>christian@breunig.cc</email>
</author>
<published>2024-12-08T15:33:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos-contrib/veeos-1x.git/commit/?id=779f311e7fe81e3c85de28f13e4e12e33b255483'/>
<id>urn:sha1:779f311e7fe81e3c85de28f13e4e12e33b255483</id>
<content type='text'>
When running under vyos-configd only a single apply() is done as last step in
the commit algorithm. FRRender class address is provided via an attribute from
vyos-configd process.
</content>
</entry>
<entry>
<title>configd: T6899: use multipart message instead of extra exchange</title>
<updated>2024-11-19T12:46:09+00:00</updated>
<author>
<name>John Estabrook</name>
<email>jestabro@vyos.io</email>
</author>
<published>2024-11-18T21:37:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos-contrib/veeos-1x.git/commit/?id=f38a402f158dad178165e330f292393278705281'/>
<id>urn:sha1:f38a402f158dad178165e330f292393278705281</id>
<content type='text'>
</content>
</entry>
<entry>
<title>configd: T6608: report uncaught config script exceptions as commit error</title>
<updated>2024-09-22T14:19:57+00:00</updated>
<author>
<name>John Estabrook</name>
<email>jestabro@vyos.io</email>
</author>
<published>2024-09-21T01:46:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos-contrib/veeos-1x.git/commit/?id=5034db86b8c43846475e9876116e55a189fe7d06'/>
<id>urn:sha1:5034db86b8c43846475e9876116e55a189fe7d06</id>
<content type='text'>
In the case of config mode script exceptions other than ConfigError,
vyos-configd would previously trigger the shim to re-run the script in
the CLI context. The use of config dependencies require this case to
return a commit error. A traceback is returned as output, consistent
with running without vyos-configd support.
</content>
</entry>
</feed>
