diff --git a/synapse/config/registration.py b/synapse/config/registration.py
index f412a72f59..82684e4dc9 100644
--- a/synapse/config/registration.py
+++ b/synapse/config/registration.py
@@ -22,40 +22,21 @@ import distutils.util
class RegistrationConfig(Config):
- def __init__(self, args):
- super(RegistrationConfig, self).__init__(args)
-
- # `args.enable_registration` may either be a bool or a string depending
- # on if the option was given a value (e.g. --enable-registration=true
- # would set `args.enable_registration` to "true" not True.)
+ def read_config(self, config):
self.disable_registration = not bool(
- distutils.util.strtobool(str(args.enable_registration))
- )
- self.registration_shared_secret = args.registration_shared_secret
-
- @classmethod
- def add_arguments(cls, parser):
- super(RegistrationConfig, cls).add_arguments(parser)
- reg_group = parser.add_argument_group("registration")
-
- reg_group.add_argument(
- "--enable-registration",
- const=True,
- default=False,
- nargs='?',
- help="Enable registration for new users.",
- )
- reg_group.add_argument(
- "--registration-shared-secret", type=str,
- help="If set, allows registration by anyone who also has the shared"
- " secret, even if registration is otherwise disabled.",
+ distutils.util.strtobool(str(config["enable_registration"]))
)
+ self.registration_shared_secret = config.get("registration_shared_secret")
+
+ def default_config(self, config_dir, server_name):
+ registration_shared_secret = random_string_with_symbols(50)
+ return """\
+ ## Registration ##
- @classmethod
- def generate_config(cls, args, config_dir_path):
- super(RegistrationConfig, cls).generate_config(args, config_dir_path)
- if args.enable_registration is None:
- args.enable_registration = False
+ # Enable registration for new users.
+ enable_registration: True
- if args.registration_shared_secret is None:
- args.registration_shared_secret = random_string_with_symbols(50)
+ # If set, allows registration by anyone who also has the shared
+ # secret, even if registration is otherwise disabled.
+ registration_shared_secret: "%(registration_shared_secret)s"
+ """ % locals()
|