Playbooks issue.

171 views
Skip to first unread message

rm_czuga

unread,
Oct 7, 2015, 11:31:00 AM10/7/15
to Ansible Project
Hi there, after changing my linux distribution from debian to arch i've got little issue to run playbooks. When ansbile was installed by pacman i have error like:

Traceback (most recent call last):
  File "/usr/bin/ansible-playbook", line 324, in <module>
    sys.exit(main(sys.argv[1:]))
  File "/usr/bin/ansible-playbook", line 264, in main
    pb.run()
  File "/usr/lib/python2.7/site-packages/ansible/playbook/__init__.py", line 310, in run
    play = Play(self, play_ds, play_basedir, vault_password=self.vault_password)
  File "/usr/lib/python2.7/site-packages/ansible/playbook/play.py", line 103, in __init__
    ds = self._load_roles(self.roles, ds)
  File "/usr/lib/python2.7/site-packages/ansible/playbook/play.py", line 440, in _load_roles
    roles = self._build_role_dependencies(roles, [], {})
  File "/usr/lib/python2.7/site-packages/ansible/playbook/play.py", line 282, in _build_role_dependencies
    dependencies = data.get('dependencies',[])
AttributeError: 'list' object has no attribute 'get'

But when I uninstall package by pacman and install by pip I've got:

  File "/usr/bin/ansible-playbook", line 218
    print ''
           ^
SyntaxError: Missing parentheses in call to 'print'

On this same playbooks...
Version of ansible is 1.9.3 in both cases.
Many thanks for help.

Brian Coca

unread,
Oct 7, 2015, 3:18:17 PM10/7/15
to Ansible Project
arch defaults to python3 you need to use python2 to execute ansible.


--
Brian Coca

rm_czuga

unread,
Oct 8, 2015, 5:19:10 AM10/8/15
to Ansible Project
Yep, but i've got python2:

 > pacman -Q python2
python2 2.7.10-2

Paul Tötterman

unread,
Oct 8, 2015, 6:20:44 AM10/8/15
to Ansible Project
Message has been deleted

rm_czuga

unread,
Oct 12, 2015, 7:43:48 AM10/12/15
to Ansible Project
Ok, let's check this out: 

> whereis python
   python: /usr/bin/pytho

> python -v
    Python 2.7.10 (default, Sep  7 2015, 13:51:49)   
    [GCC 5.2.0] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    dlopen("/usr/lib/python2.7/lib-dynload/readline.so", 2);
    import readline # dynamically loaded from /usr/lib/python2.7/lib-dynload/readline.so
    >>> quit();

 > export ANSIBLE_PYTHON_INTERPRETER=/usr/bin/python

 > ansible-playbook playbooks/playbook.yml -i hosts
Traceback (most recent call last):
  File "/usr/bin/ansible-playbook", line 324, in <module>
    sys.exit(main(sys.argv[1:]))
  File "/usr/bin/ansible-playbook", line 264, in main
    pb.run()
  File "/usr/lib/python2.7/site-packages/ansible/playbook/__init__.py", line 310, in run
    play = Play(self, play_ds, play_basedir, vault_password=self.vault_password)
  File "/usr/lib/python2.7/site-packages/ansible/playbook/play.py", line 103, in __init__
    ds = self._load_roles(self.roles, ds)
  File "/usr/lib/python2.7/site-packages/ansible/playbook/play.py", line 440, in _load_roles
    roles = self._build_role_dependencies(roles, [], {})
  File "/usr/lib/python2.7/site-packages/ansible/playbook/play.py", line 282, in _build_role_dependencies
    dependencies = data.get('dependencies',[])
AttributeError: 'list' object has no attribute 'get'

So, this is not a solution for me.


W dniu środa, 7 października 2015 15:31:00 UTC użytkownik rm_czuga napisał:
Reply all
Reply to author
Forward
0 new messages