On 2012-06-02 22:03, Florian Gilcher wrote:
> 
> On Jun 2, 2012, at 9:35 PM, Arun Tomar wrote:
> 
>> On 06/03/2012 12:57 AM, Wybo Dekker wrote:
>>> I have, for the first time, installed ruby using rvm.
>>> I run my backups via crontab, calling a bash script that runs a ruby
>>> script. However, that script now tell me that it doesn't know about ruby.
>>> So I entered two lines in the bash script:
>>>
>>>   RVM=/usr/local/rvm/scripts/rvm
>>>   test -e $RVM && source $RVM
>>>
>>> and it runs OK; but it seems to me that this is not the way it should be
>>> done. Is it?
>>>
>>
>> Cron runs as sh shell. it doesn't read bashrc or profile.d files like
>> rvm.sh. so it will not know where to find ruby that's installed in rvm.
>>
>> for one of our project this is how we've been running things:
>>
>> Note : We recommend to add cron job for checking the available network connections. Add following into the crontab : 
>>     */5 * * * * bash -c 'source /etc/profile.d/rvm.sh && /usr/bin/env ruby /usr/local/rvm/gems/ruby-1.9.3-p125/bin/ispunity monitor'
>>
>> also have a look at this
>>
>> https://rvm.io/integration/cron/
> 
> Newer RVMs also have a script called `rvm_shell`.
> 
>   $RVM_INSTALL_LOCATION/bin/rvm_shell 1.9.3 -c 'ispunity monitor'

That would better, because calling something containing the 1.9.3-p125
would have to be changed with every change of the ruby version.
However, although I suppose I have the newest rvm (1.14.0), I have no
rvm_shell

> 
> (or similar) should work.
> 
> If you have a system level RVM, it should be rather easy.
> 
> Regards,
> Florian


-- 
Wybo