diff options
author | Alejandro Sirgo Rica <asirgo@soleta.eu> | 2024-09-27 14:01:38 +0200 |
---|---|---|
committer | Alejandro Sirgo Rica <asirgo@soleta.eu> | 2024-09-27 14:27:00 +0200 |
commit | 9c2ae873f2e52a596b60a277b64d8cf2130eba40 (patch) | |
tree | 55a6d2705fce19dd308e6364a9cdf600087723b3 | |
parent | 8754c21694b5dff69105a0d9b739dd87088626ee (diff) |
live: disable browser operations if the binary is missing
Add shutils.which checks before every browser operations to
skip the subprocess call if the binary is missing.
-rwxr-xr-x | ogclient | 4 | ||||
-rw-r--r-- | src/live/ogOperations.py | 5 |
2 files changed, 7 insertions, 2 deletions
@@ -13,6 +13,7 @@ import logging import argparse import platform import subprocess +import shutil try: from signal import SIG_DFL, SIGPIPE except ImportError: @@ -79,7 +80,8 @@ def main(): LOGLEVEL = CONFIG['opengnsys']['log'] if MODE == 'live': - proc = subprocess.Popen(["browser", "-qws", URL]) + if shutil.which('browser'): + proc = subprocess.Popen(["browser", "-qws", URL]) if MODE != 'windows': signal.signal(SIGPIPE, SIG_DFL) diff --git a/src/live/ogOperations.py b/src/live/ogOperations.py index 76999ba..77e6514 100644 --- a/src/live/ogOperations.py +++ b/src/live/ogOperations.py @@ -48,6 +48,9 @@ class OgLiveOperations: self._smb_pass = config['samba']['pass'] def _restartBrowser(self, url): + if not shutil.which('browser'): + return + try: proc = subprocess.call(["pkill", "-9", "browser"]) proc = subprocess.Popen(["browser", "-qws", url]) @@ -353,7 +356,7 @@ class OgLiveOperations: umount_cache() if subprocess.run(cmd_ethtool).returncode != 0: logging.error('Error running ethtool subprocess') - if subprocess.run(cmd_browser).returncode != 0: + if shutil.which('browser') and subprocess.run(cmd_browser).returncode != 0: logging.error('Error terminating ogBrowser process') if subprocess.run(cmd_busybox) != 0: logging.error('Error running "busybox poweroff" subprocess') |