आप प्रत्येक हेरोकू ऐप के स्थानीय सेटअप पर लगातार कॉन्फ़िगर कर सकते हैं ताकि उन्हें आपके कोड में बिल्कुल भी न हो! तो एक ही कोड एकाधिक heroku साइटों पर चला सकता है लेकिन विभिन्न विन्यास के साथ। यह बहुत ही सरल, आसान, सुरुचिपूर्ण ...
यह वह दृष्टिकोण है जिसका हमने उपयोग किया था। (हमने इसे उसी चीज़ के लिए इस्तेमाल किया ... हमारे पास हेरोकू में एक ही ऐप के कई क्लोन हैं, लेकिन हम अपने देव स्थानीय निर्देशिका में गीथब में केवल एक स्रोत चाहते हैं, हम पुश टू ओरिजिन (गीथूब) करते हैं, तब हमारे पास जिस तरह से हम इसे पसंद करते हैं, हम प्रोड स्थानीय निर्देशिका में सीडी करते हैं, जो समान जिथब भंडार में जाता है, और हम केवल इस निर्देशिका में GITHUB से PULL, कभी भी धक्का नहीं देते (उदाहरण के लिए, सभी हमारे देव निर्देशिका से github आते हैं, prod निर्देशिका अन्य Heroku अनुप्रयोग के लिए सिर्फ एक मचान क्षेत्र (नीचे के रूप में समझाया गया है), सटीक एक ही कोड दोनों Heroku साइटों पर काम करता है है।)
द्वारा विभिन्न Heroku साइटों अलग कॉन्फ़िगरेशन रही है।
इसलिए हमारे कार्यप्रवाह है:
cd myDEVdir
*....develop away....*
git add .
git commit -am "another day, another push"
git push origin *(to our SINGLE github repo)*
git push heroku *(test it out on heroku #1)*
cd ../myPRODdir
git pull *(grabs SAME code as used on other site *)
git push heroku *(now the SAME code runs on Heroku #2)*
यह है कि (महत्वपूर्ण यह है कि दोनों निर्देशिका वही GitHub रेपो को इंगित है)!
http://docs.heroku.com/config-vars
अपने स्थानीय कमांड लाइन पर
, अपने दो स्थानीय निर्देशिका से प्रत्येक के लिए, कार्य करें::
अब यहाँ कैसे आप अपने साइट विशिष्ट config Heroku साइट पर वार्स रख
$ heroku config:add FIRST_CONFIGVAR=fooheroku1
Adding config vars:
FIRST_CONFIGVAR => fooheroku1
$ heroku config:add SECOND_CONFIGVAR=barheroku1
Adding config vars:
SECOND_CONFIGVAR => barheroku1
लोगों को देखने के लिए आप को परिभाषित किया है:
$ heroku config
FIRST_CONFIGVAR => fooheroku1
SECOND_CONFIGVAR => barheroku1
फिर अपनी अन्य निर्देशिका myPRODdir के लिए सीडी करें और वही काम करें, केवल उसी रिमोट हेरोकू वर्र्स को fooheroku2 और barheroku2 पर सेट करें।
अपने पटरियों में तो
एप्लिकेशन आपको सरल इसलिए की तरह उन्हें:
a = ENV['FIRST_CONFIGVAR']
एक ऐप 'fooheroku1' पढ़ा जाएगा अन्य एप्लिकेशन को आपके स्थानीय निर्देशिका पर 'fooheroku2'
और अंत में, पढ़ा जाएगा myDEVdir, जहां देव मोड में चलाने के लिए, अपने अपने 'देव' config वार्स के संस्करण config/environment/development.rb
फाइल में एक ही config आदेशों डाल वे जो भी किया जाना चाहिए करने के लिए सेट कर दिया जाएगा:
ENV['FIRST_CONFIGVAR'] = "foodev"
ENV['SECOND_CONFIGVAR'] = "bardev"
आसान, सुरुचिपूर्ण। धन्यवाद, हेरोोकू!
गिट शाखाएं बनाना विकल्प नहीं है? – freedrull