mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
Tweak variable manager use in role includes to avoid test failures
This commit is contained in:
parent
a89412ecb1
commit
dfa33d0f23
3 changed files with 18 additions and 7 deletions
|
@ -159,9 +159,16 @@ class RoleDefinition(Base, Become, Conditional, Taggable):
|
|||
if self._role_basedir:
|
||||
role_search_paths.append(self._role_basedir)
|
||||
|
||||
# now iterate through the possible paths and return the first one we find
|
||||
# create a templar class to template the dependency names, in
|
||||
# case they contain variables
|
||||
if self._variable_manager is not None:
|
||||
all_vars = self._variable_manager.get_vars(loader=self._loader, play=self._play)
|
||||
else:
|
||||
all_vars = dict()
|
||||
|
||||
templar = Templar(loader=self._loader, variables=all_vars)
|
||||
|
||||
# now iterate through the possible paths and return the first one we find
|
||||
for path in role_search_paths:
|
||||
path = templar.template(path)
|
||||
role_path = unfrackpath(os.path.join(path, role_name))
|
||||
|
|
|
@ -56,7 +56,11 @@ class TestPlayIterator(unittest.TestCase):
|
|||
""",
|
||||
})
|
||||
|
||||
p = Playbook.load('test_play.yml', loader=fake_loader)
|
||||
mock_var_manager = MagicMock()
|
||||
mock_var_manager._fact_cache = dict()
|
||||
mock_var_manager.get_vars.return_value = dict()
|
||||
|
||||
p = Playbook.load('test_play.yml', loader=fake_loader, variable_manager=mock_var_manager)
|
||||
|
||||
hosts = []
|
||||
for i in range(0, 10):
|
||||
|
@ -68,9 +72,6 @@ class TestPlayIterator(unittest.TestCase):
|
|||
inventory.get_hosts.return_value = hosts
|
||||
inventory.filter_hosts.return_value = hosts
|
||||
|
||||
mock_var_manager = MagicMock()
|
||||
mock_var_manager._fact_cache = dict()
|
||||
|
||||
play_context = PlayContext(play=p._entries[0])
|
||||
|
||||
itr = PlayIterator(
|
||||
|
|
|
@ -110,12 +110,15 @@ class TestPlay(unittest.TestCase):
|
|||
""",
|
||||
})
|
||||
|
||||
mock_var_manager = MagicMock()
|
||||
mock_var_manager.get_vars.return_value = dict()
|
||||
|
||||
p = Play.load(dict(
|
||||
name="test play",
|
||||
hosts=['foo'],
|
||||
gather_facts=False,
|
||||
roles=['foo'],
|
||||
), loader=fake_loader)
|
||||
), loader=fake_loader, variable_manager=mock_var_manager)
|
||||
|
||||
blocks = p.compile()
|
||||
|
||||
|
|
Loading…
Reference in a new issue