ansible failed in virtualenv

207 views
Skip to first unread message

Yapeng Wu

unread,
Mar 16, 2014, 11:47:18 AM3/16/14
to ansible...@googlegroups.com
Hello, I am new to Ansible.

I have installed ansible in the virtualenv. But when I load a playbook, it failed in one "command" module:

TASK: [create the tahoe introducer] ******************************************* 

<127.0.0.1> REMOTE_MODULE command /home/ywu/.virtualenvs/sercle/bin/tahoe create-introducer -C /var/boomerang/2 chdir=/var/boomerang/2 creates=/var/boomerang/2/tahoe.cfg

<127.0.0.1> EXEC ['/bin/sh', '-c', 'mkdir -p $HOME/.ansible/tmp/ansible-tmp-1394984637.79-197969704468652 && chmod a+rx $HOME/.ansible/tmp/ansible-tmp-1394984637.79-197969704468652 && echo $HOME/.ansible/tmp/ansible-tmp-1394984637.79-197969704468652']

<127.0.0.1> PUT /tmp/tmpCFiHXC TO /home/ywu/.ansible/tmp/ansible-tmp-1394984637.79-197969704468652/command

<127.0.0.1> EXEC ['/bin/sh', '-c', '/home/ywu/.virtualenvs/sercle/bin/python /home/ywu/.ansible/tmp/ansible-tmp-1394984637.79-197969704468652/command; rm -rf /home/ywu/.ansible/tmp/ansible-tmp-1394984637.79-197969704468652/ >/dev/null 2>&1']

failed: [127.0.0.1] => {"failed": true, "parsed": false}

invalid output was: Traceback (most recent call last):

  File "/home/ywu/.ansible/tmp/ansible-tmp-1394984637.79-197969704468652/command", line 1282, in <module>

    main()

  File "/home/ywu/.ansible/tmp/ansible-tmp-1394984637.79-197969704468652/command", line 139, in main

    rc, out, err = module.run_command(args, executable=executable, use_unsafe_shell=shell)

TypeError: run_command() got an unexpected keyword argument 'use_unsafe_shell'



FATAL: all hosts have already failed -- aborting


If I run the playbook without virtualenv, it is running fine. 


Could someone enlighten me what went wrong?


Thanks,

Yapeng

Azul Inho

unread,
May 22, 2014, 11:49:51 AM5/22/14
to ansible...@googlegroups.com
I am having exactly the same error message, but in my case I am not using virtualenv.
Did you get this sorted?

Yapeng Wu

unread,
May 22, 2014, 5:49:33 PM5/22/14
to ansible...@googlegroups.com
Azul, 

No, I stopped using ansible in virtualenv. Which platform are you using?

I am wondering if ansible supports in virtualenv.

Yapeng

Petros Moisiadis

unread,
May 23, 2014, 2:18:16 AM5/23/14
to ansible...@googlegroups.com
--
You received this message because you are subscribed to the Google Groups "Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ansible-proje...@googlegroups.com.
To post to this group, send email to ansible...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/08ff32a2-77ff-44e3-acd9-7a637e88447a%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

I cannot tell you what went wrong, but I remember that once I had problems running ansible in virtualenv myself too. Since my only reason to run ansible in a virtualenv was to run some playbooks with a newer ansible version, but didn't want to replace my then current version, I did not spend time looking at it further and used the hacking environment instead. This is actually the recommended way to test things in ansible. So if you have similar needs, have a look at the documentation on how to enable the hacking environment (pretty easy):

http://docs.ansible.com/intro_installation.html#running-from-source


Michael DeHaan

unread,
May 23, 2014, 8:34:02 AM5/23/14
to ansible...@googlegroups.com
This doesn't seem to be about virtualenv, but that you have a previous install of Ansible and you're finding some old libraries.

When you do use virtualenv though, be sure to set ansible_python_interpreter on the control machine so it's using the right python for dependencies for local action steps.




Reply all
Reply to author
Forward
0 new messages