Здравейте на всички и благодаря, че се намесихте. Както се казва в заглавието, опитвам се да използвам тези модули Ansible, както следва. Искам да клонирам репо на Wordpress в зависимост дали дадена променлива е „да“ или „не“.
Това е основната ми книга за игра на Ansible (използвайки я с Vagrant чрез vagrant --provision). Ще предоставя само съответните части.
vars:
nginx_server_blocks:
- { server_name: "dev.simple-site.io", document_root: "simple-site", wordpress: "no" }
- { server_name: "dev.wordpress-site.io", document_root: "wordpress-site", wordpress: "yes" }
tasks:
- name: clone Wordpress repo
git: repo=git:https://github.com/WordPress/WordPress.git
dest=/var/www/{{ item.document_root }}
with_items: nginx_server_blocks
when: item.wordpress == "yes"
Когато стартирам vagrant provision
, получавам тази грешка:
fatal: [default] => failed to parse: SUDO-SUCCESS-rtlizwskstbaxddabxlgqtxxqzambxnh
Traceback (most recent call last):
File "/home/vagrant/.ansible/tmp/ansible-tmp-1408592922.35-152092658109200/git", line 2119, in <module>
main()
File "/home/vagrant/.ansible/tmp/ansible-tmp-1408592922.35-152092658109200/git", line 524, in main
add_git_host_key(module, repo, accept_hostkey=module.params['accept_hostkey'])
File "/home/vagrant/.ansible/tmp/ansible-tmp-1408592922.35-152092658109200/git", line 1986, in add_git_host_key
fqdn = get_fqdn(module.params['repo'])
File "/home/vagrant/.ansible/tmp/ansible-tmp-1408592922.35-152092658109200/git", line 2022, in get_fqdn
if "@" in result:
TypeError: argument of type 'NoneType' is not iterable
FATAL: all hosts have already failed -- aborting
Някакви идеи за грешката? Потърсих го в Google и прочетох анзибъл документите за използването на when
и with_items
но нямах успех.
Ако помага, моята хост машина е mac, а гостът е ubuntu 14.04 през Vagrant. Ansible беше инсталиран чрез pip и е 1.7.