vagrantfile - Vagrant passing args from command line into provisioned file -


उग्रट के साथ, क्या यह तर्क है कि vagrant up {args} से प्रावधान में फाइल?

मैं चाहता हूं कि लोग अपने गिटौब खाते के नाम में पास कर सकें ताकि मैं इसे प्रावधान फाइल में भेज सकूं - ऐसा कुछ:

  संभ्रांत अप आईवेनियो  

और iwayneo को प्रावधान फाइल में भेज दिया जाता है - क्या यह संभव है?

अगर मैं निम्नलिखित स्क्रिप्ट में निम्नलिखित करता हूं जो कि < कोड> संभ्रांत अप :

  गूंज "कृपया स्थानीय उपयोगकर्ता नाम दर्ज करें - भटकाव वाले बॉक्स के लिए आवेश दर्ज करें:" निर्यात निर्यात को पढ़ें "LOCALUSER = $ uname echo" "& gt; & gt; ~ / .bashrc गूंज "LOCALUSER = $ uname" & gt; & gt; ~ / .bashrc echo "कृपया बिटबाकेट उपयोगकर्ता नाम दर्ज करें:" bbuname निर्यात पढ़ें BITBUCKETUSER = $ bbuname echo "" & gt; & gt; ~ / .bashrc गूंज "बिटबुकेटोटर्स = $ bbuname" & gt; & gt; ~ / .bashrc गूंज "कृपया बिटबाकेट पासवर्ड दर्ज करें:" बीबीपीएस निर्यात पढ़ें BITBUCKETPASS = $ bbpass echo "" & gt; & gt; ~ / .bashrc गूंज "बीटब्यूकेटएबेस = $ बीबीपीएस" & gt; & gt; ~ / .bashrc echo "स्थानीय उपयोगकर्ता नाम $ uname, bitbucket उपयोगकर्ता नाम $ bbuname और bitbucket pass $ bbpass" स्रोत ~ / .bashrc  

के लिए कॉन्फ़िगर किया गया है और फिर मेरी आवेशपूर्ण फ़ाइल में निम्नलिखित है:

  डालता है "मौजूदा उपयोगकर्ता # {ENV ['LOCALUSER']}" यदि! ENV.has_key? ("LOCALUSER") "बढ़ाएँ" LOCALUSER` पर्यावरण चर निर्दिष्ट करें - आप ऐसा कर सकते हैं चल रहे config.sh "अंत अगर! ENV.has_key? (" BITBUCKETUSER ")" बीटबुकेटएसर "पर्यावरण चर निर्दिष्ट करें - आप config.sh" अंत "! ENV.has_key? (" BITBUCKETPASS ") को चलाकर ऐसा कर सकते हैं। बढ़ाएँ "कृपया` बीआईटीबीयूकेटीएपीएएसएस 'पर्यावरण चर को निर्दिष्ट करें - आप ऐसा कर सकते हैं config.sh "end  

चलाकर LOCALUSER raise को कहा जाता है और डालता है" वर्तमान उपयोगकर्ता # # ईएनवी ['LOCALUSER']} " पैदावार वर्तमान उपयोगकर्ता है इसलिए यह निश्चित रूप से नहीं ले रहा है।

अहाअएए - मुझे एक लाइनर प्रारूप का उपयोग करना है? क्या ऐसा करने का कोई तरीका नहीं है जो कि प्रारूप का उपयोग करता है?

जवाब को सही के रूप में चिह्नित किया गया था लेकिन यहां कोई मदद वास्तव में सराहना की जाएगी

इस तरह की बात करने का सबसे आम तरीका पर्यावरण चर का उपयोग करना है उदाहरण के लिए:

  ACCOUNT = Iwayneo vagrant प्रावधान  

तब आप इसे का उपयोग कर Vagrantfile में उपयोग कर सकते हैं। मान लें कि आप इसे किसी स्क्रिप्ट पर तर्क के रूप में देना चाहते हैं, तो आप इस तरह से कुछ का उपयोग कर सकते हैं:

  if! ENV.has_key? ("ACCOUNT") "बढ़ाएं" खाता पर्यावरण निर्दिष्ट करें चर "अंत Vagrant.configure (" 2 ") | config | Config.vm.provision "shell", पथ: "script.sh", आर्ग्स: ENV ["ACCOUNT"] एंड  

संपादित करें: श स्क्रिप्ट सेटअप के लिए जोड़: < / P>

आपको शेल सत्र में प्रभावी होने के लिए वेरिएबल्स के लिए source अपनी श script करें। अन्यथा वे केवल उस सबशेल्ड के लिए स्क्रिप्ट चलाने के दौरान उपलब्ध हैं। इसी तरह, आप को भी निर्यात को .bashrc में चर के लिए आवेश प्रक्रिया में उपलब्ध होने की आवश्यकता है।

ये सब संबंधित है कि कैसे शैल और बाल प्रक्रियाएं पर्यावरण चर के साथ काम करती हैं । वाघाट के साथ कुछ खास नहीं।


Comments

Popular posts from this blog

java - Can't add JTree to JPanel of a JInternalFrame -

asp.net mvc - How to attach sql database to a javascript graph -

c# - How to know the number of Threads created and limit the Tasks accordingly -