我正在尝试使用Ansible的拉模式,特别是我需要查看SVN中的ansible剧本。我试过了
ansible-pull -d “<destination directory ie. /home/me/playbooks>” -U “http://myversioncontrol.com/myrepo” -m subversion但我知道错误是:
ERROR! Unsuported repo module subversion, choices are git是的,有拼写错误(不支持)。
如果我执行命令ansible-doc -l,我可以在模块列表中看到subversion。
我还安装了(apt安装)并检查了正确安装。
但是,我仍然有这个错误,我如何使ansible-拉与svn一起工作?
发布于 2016-07-18 17:03:46
-m参数对于ansible-pull不是一个标准的不可用模块(您可以通过ansible-doc -l获得)。
它是ansible-pull cli实用程序中标准模块的内部包装器。
根据编写此答案的时间,git是唯一受支持的拉模块(也是默认的)。
这里是定义:SUPPORTED_REPO_MODULES = ['git']
发布于 2019-05-07 17:25:31
我让它开始工作了。我需要在这里编辑已安装的pull.py文件(Centos 7):
/usr/lib/python2.7/site-packages/ansible/cli/pull.py我添加了这样的颠覆:
SUPPORTED_REPO_MODULES = ['git', 'subversion']我运行的命令行是这样的:
ansible-pull -m subversion -U http://subversion.company.com/test/ansible/trunk/playbook --full local.yml -i hosts我没有-完全错误地说:
E155000: '/home/user/.ansible/pull/computername' already exists如果没有-i主机,则会产生一个错误:
sudo: a password is required似乎是因为它使用的是隐式本地主机。
https://docs.ansible.com/ansible/latest/inventory/implicit_localhost.html我的主机文件有一个条目:
[pull]
localhost connection=paramiko ansible_user=ansible如果您不指定local.yml,它将匹配主机名,然后主机名将期望computername.yml存在。这可能很好。
https://stackoverflow.com/questions/38439482
复制相似问题