copy requires from master to MasterSlaves
This commit is contained in:
@ -88,7 +88,7 @@ class MasterSlaves(OptionDescription):
|
||||
master_requires = getattr(master, '_requires', None)
|
||||
if master_requires:
|
||||
if self.impl_getrequires():
|
||||
raise RequirementError(_('master {} in MasterSlaves {} cannot have both requirement'
|
||||
raise RequirementError(_('master {} have requirement, but MasterSlaves {} too'
|
||||
'').format(master.impl_getname(),
|
||||
self.impl_getname()))
|
||||
master_calproperties = getattr(master, '_calc_properties', None)
|
||||
@ -96,7 +96,18 @@ class MasterSlaves(OptionDescription):
|
||||
if properties is not None:
|
||||
self.validate_properties(name, master_calproperties, frozenset(properties))
|
||||
setattr(self, '_calc_properties', master_calproperties)
|
||||
setattr(self, '_requires', master_requires)
|
||||
setattr(self, '_requires', master_requires)
|
||||
delattr(master, '_requires')
|
||||
all_requires = getattr(self, '_requires', None)
|
||||
if all_requires:
|
||||
for requires_ in all_requires:
|
||||
for require in requires_:
|
||||
for require_opt, values in require[0]:
|
||||
if require_opt.impl_is_multi():
|
||||
if require_opt.impl_is_master_slaves():
|
||||
raise ValueError(_('malformed requirements option "{0}" '
|
||||
'must not be in slave for "{1}"').format(
|
||||
require_opt.impl_getname(), self.impl_getname()))
|
||||
|
||||
def is_master(self, opt):
|
||||
master = self._children[0][0]
|
||||
|
Reference in New Issue
Block a user