1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00

allow include_vars to namespace imports

This commit is contained in:
Brian Coca 2016-07-24 21:31:11 -04:00
parent 3d7f43982a
commit 7fdbfd490e

View file

@ -26,13 +26,19 @@ class ActionModule(ActionBase):
TRANSFERS_FILES = False TRANSFERS_FILES = False
def run(self, tmp=None, task_vars=None): def run(self, tmp=None, task_vars=None):
varname = self._task.args.get('name')
source = self._task.args.get('file')
if not source:
source = self._task.args.get('_raw_params')
if task_vars is None: if task_vars is None:
task_vars = dict() task_vars = dict()
result = super(ActionModule, self).run(tmp, task_vars) result = super(ActionModule, self).run(tmp, task_vars)
try: try:
source = self._find_needle('vars', self._task.args.get('_raw_params')) source = self._find_needle('vars', source)
except AnsibleError as e: except AnsibleError as e:
result['failed'] = True result['failed'] = True
result['message'] = to_str(e) result['message'] = to_str(e)
@ -46,6 +52,10 @@ class ActionModule(ActionBase):
result['failed'] = True result['failed'] = True
result['message'] = "%s must be stored as a dictionary/hash" % source result['message'] = "%s must be stored as a dictionary/hash" % source
else: else:
if varname:
scope = {}
scope[varname] = data
data = scope
result['ansible_facts'] = data result['ansible_facts'] = data
result['_ansible_no_log'] = not show_content result['_ansible_no_log'] = not show_content