I\'m trying to run a simple ruby script on my old PPC machine running 10.5 in an RVM environment.
Searching on SO, I\'ve followed the chosen answer from this post.
I configured several different operating systems to work with a couple of CRON flavors and RVM.
I first tried RVM's official solution to the problem but didn't work under FreeBSD and Gentoo. I had to manually add all relevant paths as showed bellow but first type crontab -e
in order to launch the crontab editor[1]:
# atmat's crontab configuration
SHELL=/bin/bash
PATH=/home/atma/.rvm/gems/ruby-1.9.3-p0/bin:/home/atma/.rvm/gems/ruby-1.9.3-p0@global/bin:/home/atma/.rvm/rubies/ruby-1.9.3-p0/bin:/home/atma/.rvm/bin:/usr/local/bin:/usr/bin:/bin:/opt/bin:/usr/i486-pc-linux-gnu/gcc-bin/4.5.3
RUBYLIB=/home/atma/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1
GEM_HOME='/home/atma/.rvm/gems/ruby-1.9.3-p0'
GEM_PATH='/home/atma/.rvm/gems/ruby-1.9.3-p0:/home/atma/.rvm/gems/ruby-1.9.3-p0@global'
RUBYOPT=rubygems
%nightly,mail(no) * 8-9 /home/atma/.rvm/rubies/ruby-1.9.3-p0/bin/ruby /usr/local/bin/morula -s username update
The above example is working under Gentoo GNU/Linux using fcron a more flexible, beautiful and powerful solution to standard cron, but will work with any cron.
[1] This command will open crontab
with your default system editor.
To load default RVM ruby environment for cron
jobs, here is what I setup for user-mode RVM, assume the user is ohho
, home folder is /home/ohho
. To edit, enter crontab -e
in command line:
MAILTO=""
SHELL=/bin/bash
BASH_ENV=/home/ohho/.bash_profile
HOME=/home/ohho
* * * * * rails -v > /home/ohho/env.txt
The last line is for testing rails
(if installed) can be invoked properly. You should also check whether ~/.bash_profile
loads the RVM environment (which is default for bash).
A detail explanation of SHELL
and BASH_ENV
can be found in Daniel's answer.
Or you can simply try
rvm cron setup # let RVM do your cron settings
which worked for me. via https://coderwall.com/p/vhv8aw