diff --git a/docker/main/rootfs/usr/local/go2rtc/create_config.py b/docker/main/rootfs/usr/local/go2rtc/create_config.py index 82656e695..a7ffaf2da 100644 --- a/docker/main/rootfs/usr/local/go2rtc/create_config.py +++ b/docker/main/rootfs/usr/local/go2rtc/create_config.py @@ -18,11 +18,12 @@ sys.path.remove("/opt/frigate") FRIGATE_ENV_VARS = {k: v for k, v in os.environ.items() if k.startswith("FRIGATE_")} # read docker secret files as env vars too -for secret_file in os.listdir("/run/secrets"): - if secret_file.startswith("FRIGATE_"): - FRIGATE_ENV_VARS[secret_file] = Path( - os.path.join("/run/secrets", secret_file) - ).read_text() +if os.path.isdir("/run/secrets"): + for secret_file in os.listdir("/run/secrets"): + if secret_file.startswith("FRIGATE_"): + FRIGATE_ENV_VARS[secret_file] = Path( + os.path.join("/run/secrets", secret_file) + ).read_text() config_file = os.environ.get("CONFIG_FILE", "/config/config.yml") diff --git a/frigate/config.py b/frigate/config.py index f014fd501..8cd286fa1 100644 --- a/frigate/config.py +++ b/frigate/config.py @@ -49,11 +49,12 @@ DEFAULT_TIME_FORMAT = "%m/%d/%Y %H:%M:%S" FRIGATE_ENV_VARS = {k: v for k, v in os.environ.items() if k.startswith("FRIGATE_")} # read docker secret files as env vars too -for secret_file in os.listdir("/run/secrets"): - if secret_file.startswith("FRIGATE_"): - FRIGATE_ENV_VARS[secret_file] = Path( - os.path.join("/run/secrets", secret_file) - ).read_text() +if os.path.isdir("/run/secrets"): + for secret_file in os.listdir("/run/secrets"): + if secret_file.startswith("FRIGATE_"): + FRIGATE_ENV_VARS[secret_file] = Path( + os.path.join("/run/secrets", secret_file) + ).read_text() DEFAULT_TRACKED_OBJECTS = ["person"] DEFAULT_LISTEN_AUDIO = ["bark", "fire_alarm", "scream", "speech", "yell"] diff --git a/frigate/plus.py b/frigate/plus.py index f6f65fc1f..88e025596 100644 --- a/frigate/plus.py +++ b/frigate/plus.py @@ -37,7 +37,9 @@ class PlusApi: self.key = None if PLUS_ENV_VAR in os.environ: self.key = os.environ.get(PLUS_ENV_VAR) - elif PLUS_ENV_VAR in os.listdir("/run/secrets"): + elif os.path.isdir("/run/secrets") and PLUS_ENV_VAR in os.listdir( + "/run/secrets" + ): self.key = Path(os.path.join("/run/secrets", PLUS_ENV_VAR)).read_text() # check for the addon options file elif os.path.isfile("/data/options.json"):