【发布时间】:2020-03-06 16:44:04
【问题描述】:
尝试使用 rest_cherrypy 在 minion 上运行 bash 脚本。脚本需要多个参数。在以下示例中,它适用于一个参数:
resp = session.post('https://192.168.50.10:8000/', json=[{
'client': 'local',
'tgt': 'minion1',
'fun': 'cmd.script',
'arg': ['salt://scripts/my_script.sh', 'arg1'],
}])
return resp.json()
输出:{'return': [{'minion1': {'pid': 2836, 'retcode': 0, 'stderr': '', 'stdout': 'arg1'}}]}
但是尝试使用多个参数给了我这个:
resp = session.post('https://192.168.50.10:8000/', json=[{
'client': 'local',
'tgt': 'minion1',
'fun': 'cmd.script',
'arg': ['salt://scripts/my_script.sh', ('arg1', 'arg2')],
}])
return resp.json()
输出:
{'return': [{'minion1': {'pid': 2808, 'retcode': 0, 'stderr': '', 'stdout': '[uarg1,'}}]}
通过rest_cherrypy将多个参数传递给cmd.script函数的正确方法是什么?
【问题讨论】:
标签: salt-stack