Oh sorry, thought you'd already pasted a run with "user_install=no"
explicitly set
(the one that moaned about not having the correct permission). I
should have pointed
that out more clearly, glad it's sorted now anyway.

On 9 February 2015 at 20:32, Dick Davies <[email protected]> wrote:
> Hi Adam
>
> comments inline.
>
> ( TL;DR:
>
> * good work on the troubleshooting!
> * I think you're right, this is likely an environment/path thing.
> * Ansible 1.4 is ancient, that probably isn't helping.
> * there's an executable parameter you can use to hardcode the gem
> command to run.
> )
>
> On 9 February 2015 at 16:52, Adam Hamsik <[email protected]> wrote:
>> Hi,
>>
>> I can see this behaviour with following gems
>>
>> github: haste
>> rubygems: ops_build
>>
>> opsci:~ $ sudo gem list
>>
>> *** LOCAL GEMS ***
>
> First question: are you sure this is the same gem binary Ansible is driving?
> sudo can sometimes do odd things with env. variables etc, so i'd 'sudo
> -i' and then
> check 'which gem' and check the environment.
>
>> TASK: [common-server | Install Haste client binary]
>> ***************************
>> <opsci.rsd.com> ESTABLISH CONNECTION FOR USER: rsd
>> <opsci.rsd.com> REMOTE_MODULE gem name=haste state=latest
>> <opsci.rsd.com> EXEC ssh -C -tt -q -o ControlPersist=15m -F
>> /Users/haad/.ansible/ssh_config -o
>> ControlPath="/Users/haad/.ansible/cp/ansible-ssh-%h-%p-%r" -o
>> StrictHostKeyChecking=no -o Port=22 -o
>> IdentityFile="/Users/haad/.ssh/id_rsa" -o KbdInteractiveAuthentication=no -o
>> PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o
>> PasswordAuthentication=no -o User=rsd -o ConnectTimeout=19 opsci.rsd.com
>> /bin/sh -c 'mkdir -p
>> $HOME/.ansible/tmp/ansible-tmp-1423500136.86-230822911136757 && chmod a+rx
>> $HOME/.ansible/tmp/ansible-tmp-1423500136.86-230822911136757 && echo
>> $HOME/.ansible/tmp/ansible-tmp-1423500136.86-230822911136757'
>> <opsci.rsd.com> PUT
>> /var/folders/yq/_h9bmb6x1qxb7p4_w5xhkgx80000gn/T/tmp1sQb3z TO
>> /home/rsd/.ansible/tmp/ansible-tmp-1423500136.86-230822911136757/gem
>> <opsci.rsd.com> EXEC ssh -C -tt -q -o ControlPersist=15m -F
>> /Users/haad/.ansible/ssh_config -o
>> ControlPath="/Users/haad/.ansible/cp/ansible-ssh-%h-%p-%r" -o
>> StrictHostKeyChecking=no -o Port=22 -o
>> IdentityFile="/Users/haad/.ssh/id_rsa" -o KbdInteractiveAuthentication=no -o
>> PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o
>> PasswordAuthentication=no -o User=rsd -o ConnectTimeout=19 opsci.rsd.com
>> /bin/sh -c 'sudo -k && sudo -H -S -p "[sudo via ansible,
>> key=bqhjegrwqcfakjiubogaofvswknlictj] password: " -u root /bin/sh -c
>> '"'"'echo SUDO-SUCCESS-bqhjegrwqcfakjiubogaofvswknlictj; LANG=C LC_CTYPE=C
>> /usr/bin/python
>> /home/rsd/.ansible/tmp/ansible-tmp-1423500136.86-230822911136757/gem; rm -rf
>> /home/rsd/.ansible/tmp/ansible-tmp-1423500136.86-230822911136757/ >/dev/null
>> 2>&1'"'"''
>> ok: [opsci-server] => {"changed": false, "name": "haste", "state": "latest",
>> "version": "0.2.1"}
>>
>> On Tuesday, November 19, 2013 at 7:17:21 PM UTC+1, Adam Williams wrote:
>>>
>>> I am running Ansible using "brew install --HEAD ansible", which currently
>>> prints it's version as "ansible 1.4".
>>>
>>> Here is my task:
>>>
>>> - name: install ruby gem bundler
>>>   gem: name=bundler state=present version=1.3.5 user_install=no
>>>   sudo: true
>
> That looks ok - you can also set executable=... if you want to ensure you know
> which 'gem' binary to use.
>
>>> When I run, it states that there is no change - bundler appears to the gem
>>> module to be installed??, though it is not.
>>>
>>> I went further and tried the following:
>>>
>>> ansible utilities -v --sudo -i development -m gem -a 'name=bundler
>>> state=present version=1.3.5 user_install=no'
>>>
>>> 192.168.10.24 | success >> {
>>>
>>>     "changed": false,
>>>
>>>     "name": "bundler",
>>>
>>>     "state": "present",
>>>
>>>     "version": "1.3.5"
>>>
>>> }
>>>
>>>
>>> Seemingly the same behavior. If I run without --sudo:
>>>
>>> ansible utilities -v -i development -m gem -a 'name=bundler state=present
>>> version=1.3.5 user_install=no'
>>>
>>> 192.168.10.24 | FAILED >> {
>
> That makes sense as you no longer have permissions to write to system folders.
>
>
> One last thing - you are going to be a lot better off not using 1.4,
> it's pretty old.
> A straight github checkout works great for me on OS X, so it might be worth
> avoiding homebrew.

-- 
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/CAK5eLPRZ8LKkAi0k-JicPhJYKS%3DLv3q7U_gBmfx0L5vFtVKpsw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to