2011-08-17 20 views
6

मैंने रेल 3.0.9 में अपग्रेड किया है जिसने रेक मुद्दों को पेश किया है। मैं क्रॉन नौकरी के साथ एक समस्या को छोड़कर इसे हल कर लिया है।क्रॉन और बंडल निष्पादन समस्या

यह काम करता था:

#!/bin/sh 
source /usr/local/rvm/scripts/rvm 
cd /home/p1r65759/apps/abbc/ 
/usr/local/bin/rake refresh_events RAILS_ENV=production 

लेकिन अब मैं इस त्रुटि मिलती है: आप पहले से ही रेक 0.8.7 सक्रिय कर लिया है, लेकिन अपने Gemfile रेक 0.9.2 की आवश्यकता है। बंडल निष्पादन का उपयोग करने पर विचार करें। /घर/p1r65759/apps/abbc/Rakefile: 4: ' `में

(--trace साथ काम चलाकर पूर्ण ट्रेस देखें) मैं बंडल कार्यकारी उपयोग करने के लिए तो यह उचित उपयोग करेगा मेरी स्क्रिप्ट संपादित कर सकता रेक का संस्करण और सफलतापूर्वक चलाया? धन्यवाद।

+0

एक समान समस्या होने पर, लेकिन RANS sVM। वैसे भी, हो सकता है कि आप 0.9.2 रेक करने के लिए पथ निर्दिष्ट कर सकते हैं या अपने सिस्टम रेक रेक को 0.9.2 पर अपडेट कर सकते हैं (इस पर निर्भर करता है कि यह सर्वर पर एकमात्र ऐप है ...) – wesgarrison

+0

फिक्स्ड, होस्टिंगRails.com पर तकनीकी सहायता के लिए धन्यवाद । निष्पादन रेक रीफ्रेश_वेंट्स RAILS_ENV = उत्पादन को बंडल करने के लिए बस अंतिम पंक्ति को बदल दिया। इसके सामने पथ की आवश्यकता नहीं थी। मुझे नहीं पता था कि आप ऐसा कर सकते हैं। – Brett

+0

इसे एक उत्तर के रूप में जोड़ें, फिर, और इसे स्वीकार करें। वंशावली और भविष्य के googlers के लिए :-) – wesgarrison

उत्तर

9

यदि आप अपने आवेदन के लिए बंडलर का उपयोग कर रहे हैं तो आपको रेक के लिए पथ के रूप में "/ usr/local/bin/रेक" का उपयोग करने की आवश्यकता नहीं है।

तुम सिर्फ उपयोग कर सकते हैं

bundle exec rake

तो अपने नई स्क्रिप्ट होगा, क्योंकि आप अपने प्रोजेक्ट निर्देशिका में पहले से ही हैं

 
#!/bin/sh 
source /usr/local/rvm/scripts/rvm 
cd /home/p1r65759/apps/abbc/ 
bundle exec rake refresh_events RAILS_ENV=production 

बंडल कार्यकारी काम करेंगे।

और अपने जेमफाइल में रेक शामिल करना न भूलें।

4

बजाय

/usr/local/bin/rake refresh_events RAILS_ENV=production 

का उपयोग करना चाहिए

bundle exec rake refresh_events RAILS_ENV=production 

या बेहतर अभी तक --binstubs साथ अपने बंडल स्थापित:

bundle install --binstubs --without development test 

तो आप bin/रेक होगा:

./bin/rake refresh_events RAILS_ENV=production 
संबंधित मुद्दे