我想从一个带有输入参数的ansible playbook中运行一个Python脚本。我该怎么做?
我试过command
,但它似乎没有任何输入参数。
我也尝试了script
,但似乎只考虑了bash脚本。
PS:我将输入参数作为--extra-vars
。
答案 0 :(得分:3)
我能够使用以下语句运行脚本:
- name: Run Py script
command: /path/to/script/processing.py {{ N }} {{ bucket_name }}
become: yes
become_user: root
这解决了这个问题。
答案 1 :(得分:1)
不,script
模块适用于所有类型的脚本
你必须在你的python脚本文件的第一行给出#!/usr/bin/python
。
# Example from Ansible Playbooks
- script: /some/local/script.py 1234
Python文件示例:
#!/usr/bin/python
import sys
print 'Number of arguments:', len(sys.argv), 'arguments.'
print '1st Argument :', str(sys.argv[1])