diff --git a/docs/docs/configuration/index.md b/docs/docs/configuration/index.md index 246445575..0c46c4028 100644 --- a/docs/docs/configuration/index.md +++ b/docs/docs/configuration/index.md @@ -52,10 +52,9 @@ mqtt: # NOTE: must be unique if you are running multiple instances client_id: frigate # Optional: user - user: mqtt_user # NOTE: MQTT user can be specified with an environment variables that must begin with 'FRIGATE_'. # e.g. user: '{FRIGATE_MQTT_USER}' - password: password + user: mqtt_user # Optional: password # NOTE: MQTT password can be specified with an environment variables that must begin with 'FRIGATE_'. # e.g. password: '{FRIGATE_MQTT_PASSWORD}' diff --git a/frigate/config.py b/frigate/config.py index 059858fbc..7c4e945aa 100644 --- a/frigate/config.py +++ b/frigate/config.py @@ -863,12 +863,10 @@ class FrigateConfig(FrigateBaseModel): """Merge camera config with globals.""" config = self.copy(deep=True) - # MQTT password substitution - if config.mqtt.password: - config.mqtt.password = config.mqtt.password.format(**FRIGATE_ENV_VARS) - # MQTT user substitution - if config.mqtt.user: + # MQTT user/password substitutions + if config.mqtt.user or config.mqtt.password: config.mqtt.user = config.mqtt.user.format(**FRIGATE_ENV_VARS) + config.mqtt.password = config.mqtt.password.format(**FRIGATE_ENV_VARS) # Global config to propagate down to camera level global_config = config.dict(