mirror of
https://github.com/saltstack/salt.git
synced 2025-04-17 10:10:20 +00:00
Port #52709 to master
LocalClient: don't parse input twice and test fix. Related to #49886 where passing input args and kwargs through parse_input was inroduced.
This commit is contained in:
parent
b966cda82d
commit
f24669d608
2 changed files with 62 additions and 28 deletions
|
@ -450,9 +450,8 @@ class LocalClient(object):
|
|||
>>> local.cmd_async('*', 'test.sleep', [300])
|
||||
'20131219215921857715'
|
||||
"""
|
||||
arg = salt.utils.args.parse_input(arg, kwargs=kwarg)
|
||||
pub_data = self.run_job(
|
||||
tgt, fun, arg, tgt_type, ret, jid=jid, listen=False, **kwargs
|
||||
tgt, fun, arg, tgt_type, ret, jid=jid, kwarg=kwarg, listen=False, **kwargs
|
||||
)
|
||||
try:
|
||||
return pub_data["jid"]
|
||||
|
@ -704,12 +703,20 @@ class LocalClient(object):
|
|||
minion ID. A compound command will return a sub-dictionary keyed by
|
||||
function name.
|
||||
"""
|
||||
arg = salt.utils.args.parse_input(arg, kwargs=kwarg)
|
||||
was_listening = self.event.cpub
|
||||
|
||||
try:
|
||||
pub_data = self.run_job(
|
||||
tgt, fun, arg, tgt_type, ret, timeout, jid, listen=True, **kwargs
|
||||
tgt,
|
||||
fun,
|
||||
arg,
|
||||
tgt_type,
|
||||
ret,
|
||||
timeout,
|
||||
jid,
|
||||
kwarg=kwarg,
|
||||
listen=True,
|
||||
**kwargs
|
||||
)
|
||||
|
||||
if not pub_data:
|
||||
|
@ -759,12 +766,19 @@ class LocalClient(object):
|
|||
:param verbose: Print extra information about the running command
|
||||
:returns: A generator
|
||||
"""
|
||||
arg = salt.utils.args.parse_input(arg, kwargs=kwarg)
|
||||
was_listening = self.event.cpub
|
||||
|
||||
try:
|
||||
self.pub_data = self.run_job(
|
||||
tgt, fun, arg, tgt_type, ret, timeout, listen=True, **kwargs
|
||||
tgt,
|
||||
fun,
|
||||
arg,
|
||||
tgt_type,
|
||||
ret,
|
||||
timeout,
|
||||
kwarg=kwarg,
|
||||
listen=True,
|
||||
**kwargs
|
||||
)
|
||||
|
||||
if not self.pub_data:
|
||||
|
@ -833,12 +847,19 @@ class LocalClient(object):
|
|||
{'dave': {'ret': True}}
|
||||
{'stewart': {'ret': True}}
|
||||
"""
|
||||
arg = salt.utils.args.parse_input(arg, kwargs=kwarg)
|
||||
was_listening = self.event.cpub
|
||||
|
||||
try:
|
||||
pub_data = self.run_job(
|
||||
tgt, fun, arg, tgt_type, ret, timeout, listen=True, **kwargs
|
||||
tgt,
|
||||
fun,
|
||||
arg,
|
||||
tgt_type,
|
||||
ret,
|
||||
timeout,
|
||||
kwarg=kwarg,
|
||||
listen=True,
|
||||
**kwargs
|
||||
)
|
||||
|
||||
if not pub_data:
|
||||
|
@ -897,12 +918,19 @@ class LocalClient(object):
|
|||
None
|
||||
{'stewart': {'ret': True}}
|
||||
"""
|
||||
arg = salt.utils.args.parse_input(arg, kwargs=kwarg)
|
||||
was_listening = self.event.cpub
|
||||
|
||||
try:
|
||||
pub_data = self.run_job(
|
||||
tgt, fun, arg, tgt_type, ret, timeout, listen=True, **kwargs
|
||||
tgt,
|
||||
fun,
|
||||
arg,
|
||||
tgt_type,
|
||||
ret,
|
||||
timeout,
|
||||
kwarg=kwarg,
|
||||
listen=True,
|
||||
**kwargs
|
||||
)
|
||||
|
||||
if not pub_data:
|
||||
|
@ -942,12 +970,19 @@ class LocalClient(object):
|
|||
"""
|
||||
Execute a salt command and return
|
||||
"""
|
||||
arg = salt.utils.args.parse_input(arg, kwargs=kwarg)
|
||||
was_listening = self.event.cpub
|
||||
|
||||
try:
|
||||
pub_data = self.run_job(
|
||||
tgt, fun, arg, tgt_type, ret, timeout, listen=True, **kwargs
|
||||
tgt,
|
||||
fun,
|
||||
arg,
|
||||
tgt_type,
|
||||
ret,
|
||||
timeout,
|
||||
kwarg=kwarg,
|
||||
listen=True,
|
||||
**kwargs
|
||||
)
|
||||
|
||||
if not pub_data:
|
||||
|
|
|
@ -5,7 +5,6 @@ from __future__ import absolute_import, print_function, unicode_literals
|
|||
import os
|
||||
import sys
|
||||
import tempfile
|
||||
import textwrap
|
||||
from contextlib import contextmanager
|
||||
|
||||
import pytest
|
||||
|
@ -285,11 +284,11 @@ class CMDModuleTest(ModuleCase):
|
|||
"""
|
||||
cmd.exec_code
|
||||
"""
|
||||
code = textwrap.dedent(
|
||||
"""\
|
||||
import sys
|
||||
sys.stdout.write('cheese')"""
|
||||
)
|
||||
# `code` is a multiline YAML text. Formatting it as a YAML block scalar.
|
||||
code = """|
|
||||
import sys
|
||||
sys.stdout.write('cheese')
|
||||
"""
|
||||
self.assertEqual(
|
||||
self.run_function(
|
||||
"cmd.exec_code", [AVAILABLE_PYTHON_EXECUTABLE, code]
|
||||
|
@ -302,11 +301,11 @@ class CMDModuleTest(ModuleCase):
|
|||
"""
|
||||
cmd.exec_code
|
||||
"""
|
||||
code = textwrap.dedent(
|
||||
"""\
|
||||
import sys
|
||||
sys.stdout.write(sys.argv[1])"""
|
||||
)
|
||||
# `code` is a multiline YAML text. Formatting it as a YAML block scalar.
|
||||
code = """|
|
||||
import sys
|
||||
sys.stdout.write(sys.argv[1])
|
||||
"""
|
||||
arg = "cheese"
|
||||
self.assertEqual(
|
||||
self.run_function(
|
||||
|
@ -320,11 +319,11 @@ class CMDModuleTest(ModuleCase):
|
|||
"""
|
||||
cmd.exec_code
|
||||
"""
|
||||
code = textwrap.dedent(
|
||||
"""\
|
||||
import sys
|
||||
sys.stdout.write(sys.argv[1])"""
|
||||
)
|
||||
# `code` is a multiline YAML text. Formatting it as a YAML block scalar.
|
||||
code = """|
|
||||
import sys
|
||||
sys.stdout.write(sys.argv[1])
|
||||
"""
|
||||
arg = "cheese"
|
||||
self.assertEqual(
|
||||
self.run_function(
|
||||
|
|
Loading…
Add table
Reference in a new issue