summaryrefslogtreecommitdiff
path: root/src/services/vyos-commitd
diff options
context:
space:
mode:
authorJohn Estabrook <jestabro@vyos.io>2025-09-10 20:39:56 -0500
committerJohn Estabrook <jestabro@vyos.io>2025-09-18 07:43:20 -0500
commitb9dcbdeb8ba43618cb7d88583ac47b394ad81ae1 (patch)
treed643955b9fe0919cb267c7ee5f4d368f7adba1f9 /src/services/vyos-commitd
parent563b50f5b0ae249e92c33ed4da7756a0805c7125 (diff)
downloadvyos-1x-b9dcbdeb8ba43618cb7d88583ac47b394ad81ae1.tar.gz
vyos-1x-b9dcbdeb8ba43618cb7d88583ac47b394ad81ae1.zip
T7737: inject env vars provided by vyconfd session
Diffstat (limited to 'src/services/vyos-commitd')
-rwxr-xr-xsrc/services/vyos-commitd15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/services/vyos-commitd b/src/services/vyos-commitd
index 620d7eb6e..3fa581f02 100755
--- a/src/services/vyos-commitd
+++ b/src/services/vyos-commitd
@@ -73,6 +73,9 @@ class Session:
# pylint: disable=too-many-instance-attributes
session_id: str = ''
+ session_pid: int = None
+ sudo_user: str = None
+ user: str = None
dry_run: bool = False
atomic: bool = False
background: bool = False
@@ -228,6 +231,18 @@ def initialization(session: Session) -> Session:
config = Config(config_source=configsource)
+ # required by protobuf schema; non-existence will raise early error
+ if session.session_pid:
+ os.environ['SESSION_PID'] = str(session.session_pid)
+
+ # required by protobuf schema; may be empty string
+ if session.sudo_user:
+ os.environ['SUDO_USER'] = session.sudo_user
+
+ # required by protobuf schema; may be empty string
+ if session.user:
+ os.environ['USER'] = session.user
+
dependent_func: dict[str, list[typing.Callable]] = {}
setattr(config, 'dependent_func', dependent_func)