summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@vyos.io>2025-11-03 13:45:57 +0000
committerGitHub <noreply@github.com>2025-11-03 13:45:57 +0000
commitad60030a813e8913dbf639aa449081ce1c8287d6 (patch)
tree2017d487746a8576275b898cc2dddd72261c2f83 /src
parent78af000fb3be20c45514bea83b12f0eb630dd7f6 (diff)
parent018b6fd1275eb1cc04da41362b9df54c0d3ccf43 (diff)
downloadvyos-1x-ad60030a813e8913dbf639aa449081ce1c8287d6.tar.gz
vyos-1x-ad60030a813e8913dbf639aa449081ce1c8287d6.zip
Merge pull request #4827 from jestabro/vyconfd-restart
T7980: Load active config on vyconfd restart
Diffstat (limited to 'src')
-rwxr-xr-xsrc/init/vyconfd.sh11
-rwxr-xr-xsrc/init/vyos-router2
-rw-r--r--src/systemd/vyconfd.service2
3 files changed, 12 insertions, 3 deletions
diff --git a/src/init/vyconfd.sh b/src/init/vyconfd.sh
new file mode 100755
index 000000000..670651f57
--- /dev/null
+++ b/src/init/vyconfd.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+#
+# Check if state file exists to determine if restart
+if [ -f /var/run/vyconfd.state ]; then
+ echo "Restarting vyconfd from active config"
+ /usr/libexec/vyos/vyconf/vyconfd --log-file /var/run/log/vyconfd.log --reload-active-config --legacy-config-path
+else
+ echo "Starting vyconfd from saved config"
+ touch /var/run/vyconfd.state
+ /usr/libexec/vyos/vyconf/vyconfd --log-file /var/run/log/vyconfd.log --legacy-config-path
+fi
diff --git a/src/init/vyos-router b/src/init/vyos-router
index 5365a40f1..794715368 100755
--- a/src/init/vyos-router
+++ b/src/init/vyos-router
@@ -594,8 +594,6 @@ start ()
disabled system_config || system_config || overall_status=1
- systemctl start vyconfd.service
-
for s in ${subinit[@]} ; do
if ! disabled $s; then
log_progress_msg $s
diff --git a/src/systemd/vyconfd.service b/src/systemd/vyconfd.service
index d23ca2202..6e6292f60 100644
--- a/src/systemd/vyconfd.service
+++ b/src/systemd/vyconfd.service
@@ -8,7 +8,7 @@ DefaultDependencies=no
After=systemd-remount-fs.service
[Service]
-ExecStart=/usr/libexec/vyos/vyconf/vyconfd --log-file /var/run/log/vyconfd.log --legacy-config-path
+ExecStart=/usr/libexec/vyos/init/vyconfd.sh
Type=exec
SyslogIdentifier=vyconfd
SyslogFacility=daemon