difference in "ansible PATH" & "server-side PATH"

Hi there,

I’m pretty new to ansible and trying to install rvm threw its official role system-wide.
Through installation process I came across a “rvm command not found” error, which (thru further diggin) brought me to the following question:

How come, that my PATH differs, depending if I ask for it with ansible or directly?

user@mgmt:~$ ansible web1 -a “echo $PATH”

web1 | SUCCESS | rc=0 >>
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

user@web1:~$ echo $PATH

/usr/local/rvm/gems/ruby-2.1.3/bin:/usr/local/rvm/gems/ruby-2.1.3@global/bin:/usr/local/rvm/rubies/ruby-2.1.3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/rvm/bin

Im using ansible 2.0.0.2

Grateful for any help!

cheers

When you login, there is a system-wide profile script that is imported with the barebones environment variables that are global to all users, then your local .profile is imported.

If the shell is an interactive shell, then a third script (usually .bashrc for BASH or .zshrc for ZSH) is run containing variables for command line interactive use. Your additions to the path that add the paths to rvm are probably in there and not .profile. Since the ansible login isn’t interactive the .bashrc never gets imported.

Cheers! Pointed me to the right direction.