In cron_log.log I'm seeing the following error:
rake aborted!
invalid byte sequence in US-ASCII
/var/www/html/metajorn/config/boot.rb:98:in `parse_gem_version'
/var/www/html/metajorn/config/boot.rb:80:in `gem_version'
/var/www/html/metajorn/config/boot.rb:59:in `load_rails_gem'
/var/www/html/metajorn/config/boot.rb:54:in `load_initializer'
/var/www/html/metajorn/config/boot.rb:38:in `run'
/var/www/html/metajorn/config/boot.rb:11:in `boot!'
/var/www/html/metajorn/config/boot.rb:110:in `<top (required)>'
/var/www/html/metajorn/Rakefile:4:in `require'
/var/www/html/metajorn/Rakefile:4:in `<top (required)>'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2383:in
`load'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2383:in
`raw_load_rakefile'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2017:in
`block in load_rakefile'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2068:in
`standard_exception_handling'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2016:in
`load_rakefile'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2000:in
`block in run'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2068:in
`standard_exception_handling'
/usr/local/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:1998:in `run'
/usr/local/bin/rake:31:in `<main>'
It is noteworthy that the task is working fine if I run it manually.
Thanks,
M
--
Posted via http://www.ruby-forum.com/.
If you type exactly that command (from the cd obviously) into a
terminal, does it work? Do you have permission to write into the log
directory? Though can't see why that would give that error.
>
> In cron_log.log I'm seeing the following error:
>
> rake aborted!
> invalid byte sequence in US-ASCII
> /var/www/html/metajorn/config/boot.rb:98:in `parse_gem_version'
Are you sure this is as a result of the command above? It seems to be
in the wrong directory.
What is in line 98 of boot.rb?
Colin
I changed the name to myapp just in the post ... but omitted to change
it in the error trace.
So, yes when run manually it works just fine and file permissions are
set to 777.
I think it is related to some environment information that are not
loaded by cron ... but I haven't find yet what is exactly missing.
Colin Law wrote:
> On 13 July 2010 15:50, med addame <li...@ruby-forum.com> wrote:
>> I have a rails rake task which runs just fine. I want this task to be
>> run periodically by crontab so I added it to crontab as follows : 0,30,0
>> * * * * cd /var/www/html/myapp && RAILS_ENV=production
>> /usr/local/bin/rake myraketask --trace >>
>> /var/www/html/myapp/log/cron_log.log 2>&1
>
> If you type exactly that command (from the cd obviously) into a
> terminal, does it work? Do you have permission to write into the log
> directory? Though can't see why that would give that error.
>
>>
>> In cron_log.log I'm seeing the following error:
>>
>> rake aborted!
>> invalid byte sequence in US-ASCII
>> /var/www/html/metajorn/config/boot.rb:98:in `parse_gem_version'
>
> Are you sure this is as a result of the command above? It seems to be
> in the wrong directory.
>
> What is in line 98 of boot.rb?
>
> Colin
--
Posted via http://www.ruby-forum.com/.
To fix the issue, I just had to change the encoding of crond by adding
the following lines to my crond file (in my centos5 it is locaed in:
/var/spool/cron/root )
SHELL=/bin/bash
LANG=en_US.UTF-8
LANGUAGE=en
LC_CTYPE=en_US.UTF-8
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
Than, restarted crond : service crond restart
M.