1

我可以使用 Ansible ad-hoc 命令运行原始模块,但是,当使用相同的命令运行 playbook 时,它会失败并出现错误:

invalid output was: Traceback (most recent call last):
  File "/tmp/ansible-tmp-1418879078.47-138258829915016/setup", line 187, in <module>
    import locale
ImportError: No module named locale 

知道我可能遗漏了什么,或者我应该如何编写剧本以反映我在临时命令中所做的相同。

我的临时命令是:

sudo ansible locale1 -i data --private-key=server.pem -vvvv -u ubuntu -m script -a multivr.sh 

其中miltivr.sh是 bash 中的一个小脚本,用于删除multiverse.list。locale1 是我的清单文件中的一个标签,用于告诉 ansible 我需要在哪些主机上运行此命令。

任何帮助,将不胜感激。

4

1 回答 1

0

听起来您应该使用apt_repository模块来管理您的存储库,而不是 shell 脚本。

# Remove specified repository from sources list.
apt_repository: repo='deb http://us.archive.ubuntu.com/ubuntu/ precise multiverse'
                state=absent
于 2014-12-19T16:44:19.983 回答