From f16ec055cc235eed1ae02f7cede99c366fedca5e Mon Sep 17 00:00:00 2001 From: Jae Lo Presti Date: Thu, 19 May 2022 14:03:13 +0100 Subject: [PATCH] hash_password: raise an error if no config file is specified (#12789) --- changelog.d/12789.misc | 1 + synapse/_scripts/hash_password.py | 10 +++++----- 2 files changed, 6 insertions(+), 5 deletions(-) create mode 100644 changelog.d/12789.misc diff --git a/changelog.d/12789.misc b/changelog.d/12789.misc new file mode 100644 index 000000000..3398d0011 --- /dev/null +++ b/changelog.d/12789.misc @@ -0,0 +1 @@ +The `hash_password` script now fails when it is called without specifying a config file. diff --git a/synapse/_scripts/hash_password.py b/synapse/_scripts/hash_password.py index 3aa29de5b..3bed367be 100755 --- a/synapse/_scripts/hash_password.py +++ b/synapse/_scripts/hash_password.py @@ -46,14 +46,14 @@ def main() -> None: "Path to server config file. " "Used to read in bcrypt_rounds and password_pepper." ), + required=True, ) args = parser.parse_args() - if "config" in args and args.config: - config = yaml.safe_load(args.config) - bcrypt_rounds = config.get("bcrypt_rounds", bcrypt_rounds) - password_config = config.get("password_config", None) or {} - password_pepper = password_config.get("pepper", password_pepper) + config = yaml.safe_load(args.config) + bcrypt_rounds = config.get("bcrypt_rounds", bcrypt_rounds) + password_config = config.get("password_config", None) or {} + password_pepper = password_config.get("pepper", password_pepper) password = args.password if not password: