在Ansible中使用参数运行Python脚本

时间:2017-02-03 11:14:07

标签: python ansible

我想从一个带有输入参数的ansible playbook中运行一个Python脚本。我该怎么做?

我试过command,但它似乎没有任何输入参数。 我也尝试了script,但似乎只考虑了bash脚本。

PS:我将输入参数作为--extra-vars

2 个答案:

答案 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])