allow force_default_on_freeze for master if frozen

This commit is contained in:
2018-04-03 15:51:45 +02:00
parent 80881875b2
commit dc84608348
5 changed files with 42 additions and 57 deletions

View File

@ -75,12 +75,15 @@ class CacheOptionDescription(BaseOption):
option._set_readonly()
is_multi = option.impl_is_multi()
if not option.impl_is_symlinkoption():
if 'force_store_value' in option.impl_getproperties():
properties = option.impl_getproperties()
if 'force_store_value' in properties:
force_store_values.append((subpath, option))
if 'force_default_on_freeze' in option.impl_getproperties() and \
if 'force_default_on_freeze' in properties and \
'frozen' not in properties and \
option.impl_is_master_slaves('master'):
raise ConfigError(_('a master ({0}) cannot have '
'force_default_on_freeze property').format(subpath))
'"force_default_on_freeze" property without "frozen"'
'').format(subpath))
for cons_id, func, all_cons_opts, params in option.get_consistencies():
option._valid_consistencies(all_cons_opts[1:], init=False)
if func not in ALLOWED_CONST_LIST and is_multi: