summaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorJohn Estabrook <jestabro@vyos.io>2025-07-02 13:39:26 -0500
committerJohn Estabrook <jestabro@vyos.io>2025-07-03 13:14:31 -0500
commit67f8a713c862d200a4c69b18fed81cadeee8c4bf (patch)
treee1645943d06b5ac01015f36b8ff7c5ba866ca596 /python
parent94a6154013e766f786a6e4b6eed86c6d9c6d73de (diff)
downloadvyos-1x-67f8a713c862d200a4c69b18fed81cadeee8c4bf.tar.gz
vyos-1x-67f8a713c862d200a4c69b18fed81cadeee8c4bf.zip
T7588: detach commit-confirm-notify from calling process
As we now await the call to commit-confirm, do not run commit-confirm-notify from a subshell.
Diffstat (limited to 'python')
-rw-r--r--python/vyos/config_mgmt.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/python/vyos/config_mgmt.py b/python/vyos/config_mgmt.py
index 67d03e76c..51c6f2241 100644
--- a/python/vyos/config_mgmt.py
+++ b/python/vyos/config_mgmt.py
@@ -25,10 +25,12 @@ from filecmp import cmp
from datetime import datetime
from textwrap import dedent
from pathlib import Path
-from tabulate import tabulate
from shutil import copy, chown
+from subprocess import Popen
+from subprocess import DEVNULL
from urllib.parse import urlsplit
from urllib.parse import urlunsplit
+from tabulate import tabulate
from vyos.config import Config
from vyos.configtree import ConfigTree
@@ -231,7 +233,14 @@ Proceed ?"""
else:
cmd = f'sudo -b /usr/libexec/vyos/commit-confirm-notify.py {minutes}'
- os.system(cmd)
+ Popen(
+ cmd.split(),
+ stdout=DEVNULL,
+ stderr=DEVNULL,
+ stdin=DEVNULL,
+ close_fds=True,
+ preexec_fn=os.setsid,
+ )
if self.reboot_unconfirmed:
msg = f'Initialized commit-confirm; {minutes} minutes to confirm before reboot'