From b9dcbdeb8ba43618cb7d88583ac47b394ad81ae1 Mon Sep 17 00:00:00 2001 From: John Estabrook Date: Wed, 10 Sep 2025 20:39:56 -0500 Subject: T7737: inject env vars provided by vyconfd session --- src/services/vyos-commitd | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'src/services/vyos-commitd') 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) -- cgit v1.2.3