<feed xmlns='http://www.w3.org/2005/Atom'>
<title>vyos-1x.git/src/helpers/vyos_config_sync.py, branch rolling</title>
<subtitle>VyOS command definitions, scripts, and utilities (mirror of https://github.com/vyos/vyos-1x.git)
</subtitle>
<id>https://git.amelek.net/vyos/vyos-1x.git/atom?h=rolling</id>
<link rel='self' href='https://git.amelek.net/vyos/vyos-1x.git/atom?h=rolling'/>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/'/>
<updated>2026-05-28T13:31:26+00:00</updated>
<entry>
<title>T8502: add client support for config-sync excluded paths</title>
<updated>2026-05-28T13:31:26+00:00</updated>
<author>
<name>John Estabrook</name>
<email>jestabro@vyos.io</email>
</author>
<published>2026-05-04T19:35:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=4113da576b6f934d0340cb18ae184bb25c1619c0'/>
<id>urn:sha1:4113da576b6f934d0340cb18ae184bb25c1619c0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>http-api: T7090: Implement background configure operations for REST API</title>
<updated>2026-01-28T06:57:55+00:00</updated>
<author>
<name>Oleksandr Kuchmystyi</name>
<email>o.kuchmystyi@vyos.io</email>
</author>
<published>2026-01-23T13:15:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=7fd4b50494d3b8865a7300e97c72df2a4fe11f14'/>
<id>urn:sha1:7fd4b50494d3b8865a7300e97c72df2a4fe11f14</id>
<content type='text'>
Large config commits (`service config-sync`) can block the REST API request
path and sometimes must be deferred (e.g., when changing `service https`).

This commit introduces an in-memory background operation manager
that queues (FIFO) full configure operations (commands + commit/commit-confirm)
as single jobs, tracks status/result, and exposes active operations
via `/retrieve/background-operations`.
</content>
</entry>
<entry>
<title>T7591: remove copyright years from source files</title>
<updated>2025-06-28T21:16:52+00:00</updated>
<author>
<name>Christian Breunig</name>
<email>christian@breunig.cc</email>
</author>
<published>2025-06-28T18:51:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=1478516ae437f19ebeb7d6ff9b83dd74f8e76758'/>
<id>urn:sha1:1478516ae437f19ebeb7d6ff9b83dd74f8e76758</id>
<content type='text'>
The legal team says years are not necessary so we can go ahead with it, since
it will simplify backporting.

Automatically removed using: git ls-files | grep -v libvyosconfig | xargs sed -i -E \
's/^# Copyright (19|20)[0-9]{2}(-[0-9]{4})? VyOS maintainers.*/# Copyright VyOS maintainers and contributors &lt;maintainers@vyos.io&gt;/g'

In addition we will error-out during "make" if someone re-adds a legacy
copyright notice
</content>
</entry>
<entry>
<title>T6287: Config-sync add the ability to configure API port</title>
<updated>2024-05-01T07:04:35+00:00</updated>
<author>
<name>Viacheslav Hletenko</name>
<email>v.gletenko@vyos.io</email>
</author>
<published>2024-05-01T06:48:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=a7c3f202ffea7859463f204cccf526f7517321f6'/>
<id>urn:sha1:a7c3f202ffea7859463f204cccf526f7517321f6</id>
<content type='text'>
Add the ability to configure the API port if the API on the secondary
server works on a non-default port.
The primary node will connect to configured port for config-sync

```
set service config-sync secondary address '192.0.2.11'
set service config-sync secondary port '8443'
```
</content>
</entry>
<entry>
<title>config-sync: T6185: combine data for sections/configs in one command</title>
<updated>2024-03-29T03:15:19+00:00</updated>
<author>
<name>John Estabrook</name>
<email>jestabro@vyos.io</email>
</author>
<published>2024-03-28T19:34:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=30a530839cdbd934ea62369e385dc33fa50ab6de'/>
<id>urn:sha1:30a530839cdbd934ea62369e385dc33fa50ab6de</id>
<content type='text'>
Package path/section data in single command containing a tree (dict) of
section paths and the accompanying config data. This drops the call to
get_config_dict and the need for a list of commands in request.
</content>
</entry>
<entry>
<title>config-sync: T6145: batch section requests for commit by priority</title>
<updated>2024-03-23T01:44:51+00:00</updated>
<author>
<name>John Estabrook</name>
<email>jestabro@vyos.io</email>
</author>
<published>2024-03-22T20:06:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=50e9364575481335520f50dac834c74ef02ccfab'/>
<id>urn:sha1:50e9364575481335520f50dac834c74ef02ccfab</id>
<content type='text'>
</content>
</entry>
<entry>
<title>T6121: Extend service config-sync to new sections</title>
<updated>2024-03-15T11:56:16+00:00</updated>
<author>
<name>Viacheslav Hletenko</name>
<email>v.gletenko@vyos.io</email>
</author>
<published>2024-03-14T13:32:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=25b611f504521181f85cb4460bfdfd702c377b5e'/>
<id>urn:sha1:25b611f504521181f85cb4460bfdfd702c377b5e</id>
<content type='text'>
Extend `service config-sync` with new sections:
 - LeafNodes: pki, policy, vpn, vrf (syncs the whole sections)
 - Nodes: interfaces, protocols, service (syncs subsections)

In this cae the Node allows to uses the next level section
i.e subsection

For example any of the subsection of the node `interfaces`:
  - set service config-sync section interfaces pseudo-ethernet
  - set service config-sync section interfaces virtual-ethernet

Example of the config:
```
set service config-sync mode 'load'
set service config-sync secondary address '192.0.2.1'
set service config-sync secondary key 'xxx'
set service config-sync section firewall
set service config-sync section interfaces pseudo-ethernet
set service config-sync section interfaces virtual-ethernet
set service config-sync section nat
set service config-sync section nat66
set service config-sync section protocols static
set service config-sync section pki
set service config-sync section vrf
```
</content>
</entry>
<entry>
<title>T775: Config-sync bracketize IPv6 secondary address</title>
<updated>2023-07-09T15:53:53+00:00</updated>
<author>
<name>Viacheslav Hletenko</name>
<email>v.gletenko@vyos.io</email>
</author>
<published>2023-07-09T15:53:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=7802af3157ed1c6eee4913bbfd75351b1cccc5c5'/>
<id>urn:sha1:7802af3157ed1c6eee4913bbfd75351b1cccc5c5</id>
<content type='text'>
bracketize IPv6 remote address to avoid
Failed to parse: https://2001:db8::2/configure-section
</content>
</entry>
<entry>
<title>T775: Add service config-sync between 2 routers</title>
<updated>2023-06-30T11:59:42+00:00</updated>
<author>
<name>Viacheslav Hletenko</name>
<email>v.gletenko@vyos.io</email>
</author>
<published>2023-06-14T13:36:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=a1f140c5a5eb18cb86465bc496349d093382dfef'/>
<id>urn:sha1:a1f140c5a5eb18cb86465bc496349d093382dfef</id>
<content type='text'>
Service config-sync allows synchronizing a section of
the configuration.
As PoC allow only nat, nat66 and firewall sections

Rertreive the configuration for a section from self node and
send this configuration to the section of the 'secondary' node.

This feature adds a symlink from helper 'vyos_config_sync.py'
to '/config/scripts/commit/post-hooks.d' and config that is
located in '/run/config_sync_conf.conf'
It will synchronyze the config only if the setcion
was changed.

set service config-sync secondary address 192.0.2.11
set service config-sync secondary key xxx
set service config-sync section nat
set service config-sync section nat66
set service config-sync section firewall
set service config-sync mode load
</content>
</entry>
</feed>
