Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 7 additions & 4 deletions python/daqconf/get_session_env_var.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,19 +3,21 @@
import sys

def get_session_env_var(
oksfile: str, session_name: str, requested_env_var_name: str
oksfile: str, session_name: str, requested_env_var_name: str, quiet: bool = False
) -> str | None:
"""Script to get the value of an environment variable in the specified Session of the
specified OKS database file"""
db = conffwk.Configuration("oksconflibs:" + oksfile)
if session_name == "":
print(f"Error: the session name needs to be specified", file=sys.stderr)
if not quiet:
print(f"Error: the session name needs to be specified", file=sys.stderr)
return
else:
try:
session = db.get_dal("Session", session_name)
except:
print(f"Error: could not find Session \"{session_name}\" in file \"{oksfile}\"", file=sys.stderr)
if not quiet:
print(f"Error: could not find Session \"{session_name}\" in file \"{oksfile}\"", file=sys.stderr)
return

schemafiles = [
Expand All @@ -40,7 +42,8 @@ def get_session_env_var(

# Return the value, or complain and return None if the env var was not found
if existing_env_var is None:
print(f"Error: could not find env var \"{requested_env_var_name}\" in Session \"{session_name}\"", file=sys.stderr)
if not quiet:
print(f"Error: could not find env var \"{requested_env_var_name}\" in Session \"{session_name}\"", file=sys.stderr)
return
else:
value = existing_env_var.value
Expand Down
5 changes: 3 additions & 2 deletions scripts/daqconf_get_session_env_var
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,11 @@ from daqconf.get_session_env_var import get_session_env_var
@click.argument('oks_session_name')
@click.argument('oksfile')
@click.argument('env_var_name', required=True, nargs=1)
def daqconf_get_session_env_var(oksfile, oks_session_name, env_var_name):
@click.argument('quiet', required=False, nargs=1, default=False)
def daqconf_get_session_env_var(oksfile, oks_session_name, env_var_name, quiet):
"""Script to get the value of an environment variable in the specified Session of the
specified OKS database file. If the env var does not exist, '<None>' is returned."""
value = get_session_env_var(oksfile, oks_session_name, env_var_name)
value = get_session_env_var(oksfile, oks_session_name, env_var_name, quiet)
if value:
print(value)

Expand Down
Loading