Merge "Fix merge action plugins verbose output"
This commit is contained in:
commit
b142b0ae7a
ansible/action_plugins
@ -171,12 +171,12 @@ class ActionModule(action.ActionBase):
|
||||
del tmp # not used
|
||||
|
||||
sources = self._task.args.get('sources', None)
|
||||
whitespace = self._task.args.get('whitespace', True)
|
||||
|
||||
if not isinstance(sources, list):
|
||||
sources = [sources]
|
||||
|
||||
config = OverrideConfigParser(
|
||||
whitespace=self._task.args.get('whitespace', True))
|
||||
config = OverrideConfigParser(whitespace=whitespace)
|
||||
|
||||
for source in sources:
|
||||
self.read_config(source, config)
|
||||
@ -213,7 +213,11 @@ class ActionModule(action.ActionBase):
|
||||
loader=self._loader,
|
||||
templar=self._templar,
|
||||
shared_loader_obj=self._shared_loader_obj)
|
||||
result.update(copy_action.run(task_vars=task_vars))
|
||||
copy_result = copy_action.run(task_vars=task_vars)
|
||||
copy_result['invocation']['module_args'].update({
|
||||
'src': result_file, 'sources': sources,
|
||||
'whitespace': whitespace})
|
||||
result.update(copy_result)
|
||||
finally:
|
||||
shutil.rmtree(local_tempdir)
|
||||
return result
|
||||
|
15
ansible/action_plugins/merge_yaml.py
Executable file → Normal file
15
ansible/action_plugins/merge_yaml.py
Executable file → Normal file
@ -17,8 +17,7 @@ import os
|
||||
import shutil
|
||||
import tempfile
|
||||
|
||||
from yaml import dump
|
||||
from yaml import safe_load
|
||||
import yaml
|
||||
|
||||
from ansible import constants
|
||||
from ansible import errors as ansible_errors
|
||||
@ -81,7 +80,7 @@ class ActionModule(action.ActionBase):
|
||||
def read_config(self, source):
|
||||
result = None
|
||||
# Only use config if present
|
||||
if os.access(source, os.R_OK):
|
||||
if source and os.access(source, os.R_OK):
|
||||
with open(source, 'r') as f:
|
||||
template_data = f.read()
|
||||
|
||||
@ -94,7 +93,7 @@ class ActionModule(action.ActionBase):
|
||||
self._templar.environment.loader.searchpath = searchpath
|
||||
|
||||
template_data = self._templar.template(template_data)
|
||||
result = safe_load(template_data)
|
||||
result = yaml.safe_load(template_data)
|
||||
return result or {}
|
||||
|
||||
def run(self, tmp=None, task_vars=None):
|
||||
@ -128,7 +127,7 @@ class ActionModule(action.ActionBase):
|
||||
try:
|
||||
result_file = os.path.join(local_tempdir, 'source')
|
||||
with open(result_file, 'w') as f:
|
||||
f.write(dump(output, default_flow_style=False))
|
||||
f.write(yaml.dump(output, default_flow_style=False))
|
||||
|
||||
new_task = self._task.copy()
|
||||
new_task.args.pop('sources', None)
|
||||
@ -147,7 +146,11 @@ class ActionModule(action.ActionBase):
|
||||
loader=self._loader,
|
||||
templar=self._templar,
|
||||
shared_loader_obj=self._shared_loader_obj)
|
||||
result.update(copy_action.run(task_vars=task_vars))
|
||||
copy_result = copy_action.run(task_vars=task_vars)
|
||||
copy_result['invocation']['module_args'].update({
|
||||
'src': result_file, 'sources': sources,
|
||||
'extend_lists': extend_lists})
|
||||
result.update(copy_result)
|
||||
finally:
|
||||
shutil.rmtree(local_tempdir)
|
||||
return result
|
||||
|
Loading…
x
Reference in New Issue
Block a user