httplib2 is getting picked up from the same place for either python install.
*[**kbroughton@mb-kbroughton*:*Contents/MacOS**]* /usr/bin/python -c "import httplib2; print httplib2.__file__" /usr/local/lib/python2.7/site-packages/httplib2/__init__.pyc *[**kbroughton@mb-kbroughton*:*Contents/MacOS**]* /usr/local/bin/python -c "import httplib2; print httplib2.__file__" /usr/local/lib/python2.7/site-packages/httplib2/__init__.pyc PYTHONPATH is pointing there *[**kbroughton@mb-kbroughton*:*Contents/MacOS**]* echo $PYTHONPATH /usr/local/lib/python2.7/site-packages:/Users/kbroughton/vcp/git/mentat/ansible/lib: But i'm not sure how to force pip to install it to the location that ansible has access to. *[**kbroughton@mb-kbroughton*:*Contents/MacOS**]* export PYTHONPATH='' *[**kbroughton@mb-kbroughton*:*Contents/MacOS**]* echo $PYTHONPATH *[**kbroughton@mb-kbroughton*:*Contents/MacOS**]* pip install httplib2 Requirement already satisfied (use --upgrade to upgrade): httplib2 in /usr/local/lib/python2.7/site-packages Cleaning up... *[**kbroughton@mb-kbroughton*:*Contents/MacOS**]* I suppose that pip belongs to the homebrew installed python, and i don't have pip installed for /usr/bin/python. Setting ansible_python_interpreter=/usr/local/bin/python in the hosts file fixes the problem. kesten On Tue, Apr 22, 2014 at 4:59 PM, Matt Martz <[email protected]> wrote: > Do you have 'localhost' defined in your inventory? If so, have you > specified ansible_python_interpreter=/usr/local/bin/python along with it in > your inventory? > > You do mention that /usr/bin/python has access to httplib2, but that could > be due to something such as setting PYTHONPATH somewhere that would allow > /usr/bin/python to load httplib2 that it wouldn't otherwise have access to, > and as a result ansible is running without access to PYTHONPATH maybe... > > The code that determines if you have httplib2 is somewhat simple: > > HAS_HTTPLIB2 = True > try: > import httplib2 > except ImportError: > HAS_HTTPLIB2 = False > > And later if HAS_HTTPLIB2 is False, it fails with the message you are > seeing. > > > Perhaps try running: > > /usr/bin/python -c "import httplib2; print httplib2.__file__" > /usr/local/bin/python -c "import httplib2; print httplib2.__file__" > > As well as looking at: > > echo $PYTHONPATH > > -- > Matt Martz > [email protected] > > On April 22, 2014 at 4:43:37 PM, Kesten Broughton ( > [email protected]) wrote: > > Running the task > > - name: Get tenant id > uri: url="{{ os_service_endpoint }}/tenants?name={{tenant.name}}" > method=GET > timeout=30 > return_content=yes > HEADER_User-Agent=python-keystoneclient > HEADER_X-Auth-Token="{{keystone_admin_token}}" > HEADER_Content-Type="application/json" > register: register_tenant > > > TASK: [Get tenant id] > ********************************************************* > > <localhost> REMOTE_MODULE uri url=" > http://example.com:35357/v2.0//tenants?name=tenant2" method=GET > timeout=30 return_content=yes HEADER_User-Agent=python-keystoneclient > HEADER_X-Auth-Token="*****" HEADER_Content-Type="application/json" > > <localhost> EXEC ['/bin/sh', '-c', 'mkdir -p > $HOME/.ansible/tmp/ansible-tmp-1398201502.91-131706600599036 && echo > $HOME/.ansible/tmp/ansible-tmp-1398201502.91-131706600599036'] > > <localhost> PUT /var/folders/t2/h22337c12hn279xwd4s9fk7s8_088c/T/tmpLEIdmk > TO > /Users/kbroughton/.ansible/tmp/ansible-tmp-1398201502.91-131706600599036/uri > > <localhost> EXEC /bin/sh -c 'sudo -k && sudo -H -S -p "[sudo via ansible, > key=turelpokuakqdltyqvhjhfyyvmrqaail] password: " -u root /bin/sh -c > '"'"'echo SUDO-SUCCESS-turelpokuakqdltyqvhjhfyyvmrqaail; /usr/bin/python > /Users/kbroughton/.ansible/tmp/ansible-tmp-1398201502.91-131706600599036/uri; > rm -rf > /Users/kbroughton/.ansible/tmp/ansible-tmp-1398201502.91-131706600599036/ > >/dev/null 2>&1'"'"'' > > > failed: [localhost] => {"failed": true, "item": ""} > > > msg: httplib2 is not installed > > FATAL: all hosts have already failed -- aborting > ----------------- > Running ansible 1.6 on a mac > > Default python is 2.7.6 in /usr/local/bin/python . That one can import > httplib2. > > *[**kbroughton@mb-kbroughton*:*lynx-ansible/21ct-ansible* *+ (develop)]* which > python > > /usr/local/bin/python > > ansible seems to use /usr/bin/python, but that also can import httplib2 > > *[**kbroughton@mb-kbroughton*:*/21ct-ansible* *+ (develop)]* > /usr/bin/python > > Python 2.7.5 (default, Aug 25 2013, 00:04:04) > > [GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin > > Type "help", "copyright", "credits" or "license" for more information. > > >>> import httplib2 > >>> > > The play is run against localhost (my mac) but even the 3 controller > openstack nodes have httplib2 installed (though in dist-packages not > site-packages because it is ubuntu). > > any ideas? > > -- > > Kesten Broughton > 512 701 4209 > -- > 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 [email protected]. > To post to this group, send email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/ansible-project/CAO2fFsXRGrp20pH09FK_ez6FChYsMOFEjDoLhA3HQjmt-zPAJg%40mail.gmail.com<https://groups.google.com/d/msgid/ansible-project/CAO2fFsXRGrp20pH09FK_ez6FChYsMOFEjDoLhA3HQjmt-zPAJg%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > > -- Kesten Broughton 512 701 4209 -- 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 [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/CAO2fFsUxvwoygC%2BEq6d6rH9tJzyQyBKngVsf169Ed%3DHzW%3D32sQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
