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

Reply via email to