J'ai un travail cron pour exécuter un script Ruby, qui s'exécute bien sur la ligne de commande (de l'utilisateur "user"), mais le cron échoue parce qu'il ne peut pas trouver un rubail gem TMail. J'ai manuellement installé la gemme de tmail à mon ~ /. Gems/dir, pointé par mon ~/.bashrc script, comme suggested par Nate.Appeler Rubygem tmail de Dreamhost CRONjob
Lorsqu'il est invoqué manuellement à partir du shell (sur le serveur Deadpool)
./home/user/site.com/appdir/testbalances.sh
fonctionne très bien, mais à partir du Web crontab -interface (même commande), je reçois un courrier de journal:
/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in
gem_original_require': no such file to load -- tmail (LoadError) from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in
require » de afschriftmonito r/statement_monitor.rb: 7
lignes 6 et 7 du fichier afschriftmonitor/statement_monitor.rb: 7 sont
require 'rubygems' require 'tmail'
Il semble que CRON est en cours d'exécution à partir d'un autre serveur, ou il ignore le fichier ~/.bashrc? Comment puis-je réparer cela? Il semble que Dreamhost héberge un problème spécifique, car le script s'exécute correctement sur mon Mac et - comme je l'ai dit - très bien sur mon compte shell sur Dreamhost. Je suis perplexe.
Belle suggestion, je l'ai essayé et ajouté .bashrc dans le bashscript qui appelle l'appel de rubis. N'a pas aidé :-( –
En fait, il y avait confusion sur le serveur, il a fonctionné chez Dreamhost, ce qui conduit à des signaux mixtes, mais cette réponse a résolu le problème original.Merci pour vos commentaires sur ma réponse! –