Merge pull request #11271 from sivel/build-play-method
Allow AdHocCLI to be more flexible for overridingpull/4420/head
commit
6c884c9e39
|
@ -65,6 +65,13 @@ class AdHocCLI(CLI):
|
||||||
|
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
def _play_ds(self, pattern):
|
||||||
|
return dict(
|
||||||
|
name = "Ansible Ad-Hoc",
|
||||||
|
hosts = pattern,
|
||||||
|
gather_facts = 'no',
|
||||||
|
tasks = [ dict(action=dict(module=self.options.module_name, args=parse_kv(self.options.module_args))), ]
|
||||||
|
)
|
||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
''' use Runner lib to do SSH things '''
|
''' use Runner lib to do SSH things '''
|
||||||
|
@ -117,19 +124,13 @@ class AdHocCLI(CLI):
|
||||||
# results = runner.run()
|
# results = runner.run()
|
||||||
|
|
||||||
# create a pseudo-play to execute the specified module via a single task
|
# create a pseudo-play to execute the specified module via a single task
|
||||||
play_ds = dict(
|
play_ds = self._play_ds(pattern)
|
||||||
name = "Ansible Ad-Hoc",
|
|
||||||
hosts = pattern,
|
|
||||||
gather_facts = 'no',
|
|
||||||
tasks = [ dict(action=dict(module=self.options.module_name, args=parse_kv(self.options.module_args))), ]
|
|
||||||
)
|
|
||||||
|
|
||||||
play = Play().load(play_ds, variable_manager=variable_manager, loader=loader)
|
play = Play().load(play_ds, variable_manager=variable_manager, loader=loader)
|
||||||
|
|
||||||
# now create a task queue manager to execute the play
|
# now create a task queue manager to execute the play
|
||||||
tqm = None
|
self._tqm = None
|
||||||
try:
|
try:
|
||||||
tqm = TaskQueueManager(
|
self._tqm = TaskQueueManager(
|
||||||
inventory=inventory,
|
inventory=inventory,
|
||||||
variable_manager=variable_manager,
|
variable_manager=variable_manager,
|
||||||
loader=loader,
|
loader=loader,
|
||||||
|
@ -138,10 +139,10 @@ class AdHocCLI(CLI):
|
||||||
passwords=passwords,
|
passwords=passwords,
|
||||||
stdout_callback='minimal',
|
stdout_callback='minimal',
|
||||||
)
|
)
|
||||||
result = tqm.run(play)
|
result = self._tqm.run(play)
|
||||||
finally:
|
finally:
|
||||||
if tqm:
|
if self._tqm:
|
||||||
tqm.cleanup()
|
self._tqm.cleanup()
|
||||||
|
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue