# HG changeset patch # User Martin Bornhold # Date 2016-08-05 15:14:24 # Node ID 7ce8b024e07fc08dd1ebf23e1d7ca9a1d6e38db3 # Parent bd645ae694fd643529fc5f285401726015836b3d config: Sanitize vcs realted settings during pyramid app init. diff --git a/rhodecode/config/middleware.py b/rhodecode/config/middleware.py --- a/rhodecode/config/middleware.py +++ b/rhodecode/config/middleware.py @@ -413,12 +413,32 @@ def sanitize_settings_and_apply_defaults # should allow to pass in a prefix. settings.setdefault('rhodecode.api.url', '/_admin/api') - _bool_setting(settings, 'vcs.server.enable', 'true') _bool_setting(settings, 'is_test', 'false') + # Call split out functions that sanitize settings for each topic. + _sanitize_vcs_settings(settings) + return settings +def _sanitize_vcs_settings(settings): + """ + Applies settings defaults and does type conversion for all VCS related + settings. + """ + _string_setting(settings, 'vcs.svn.compatible_version', '') + _string_setting(settings, 'git_rev_filter', '--all') + _string_setting(settings, 'vcs.hooks.protocol', 'pyro4') + _string_setting(settings, 'vcs.server', '') + _string_setting(settings, 'vcs.server.log_level', 'debug') + _string_setting(settings, 'vcs.server.protocol', 'pyro4') + _bool_setting(settings, 'startup.import_repos', 'false') + _bool_setting(settings, 'vcs.hooks.direct_calls', 'false') + _bool_setting(settings, 'vcs.server.enable', 'true') + _bool_setting(settings, 'vcs.start_server', 'false') + _list_setting(settings, 'vcs.backends', 'hg, git, svn') + + def _bool_setting(settings, name, default): settings[name] = asbool(settings.get(name, default))