2011-05-13 10 views
5

मैं "क्या चल रहा है" का ट्रैक रखने के लिए एक टूल की तलाश में हूं। हमारे पास सर्वर का एक गुच्छा है, और उनमें से प्रत्येक परियोजनाओं का एक समूह है। ये परियोजनाएं एक विशिष्ट संस्करण (एचजी टैग/प्रतिबद्ध एनआर) पर चल रही हैं और विशिष्ट संस्करणों पर भी उनकी आवश्यकताएं हैं।पायथन: तैनाती का ट्रैक रखने के लिए उपकरण

फैब्रिक एसएसएच भाग स्वचालित करके वास्तविक तैनाती करने के लिए एक महान शुरुआत की तरह दिखता है। हालांकि, तैनाती के बाद, क्या किया गया था इसका कोई अवलोकन नहीं है।

पहिया को फिर से शुरू करने से पहले मैं यहां भी एसओ पर जांच करना चाहता हूं (मैंने अपना सर्वश्रेष्ठ डब्ल्यू/Google किया लेकिन गलत कीवर्ड ढूंढ रहा था)। क्या ऐसा कोई उपकरण पहले से ही है?

(व्यवहार में मैं Django परियोजनाओं की तैनाती कर रहा हूँ, लेकिन मुझे यकीन है कि प्रश्न के लिए प्रासंगिक है नहीं हूँ, कुछ भी है कि पिप का ट्रैक रखता है/virtualenv स्थापित करता है या सामान्य रूप में सर्वर राज्य नहीं करना चाहिए)

बहुत धन्यवाद ,

क्लास

========== अस्थायी लिए

संपादित करें। कि हम महान ले: समाधान

==========

अभी के लिए, हम केवल एक सरल कुंजी-मान की दुकान में इस जानकारी (फाइल सिस्टम हमारे मामले में) स्टोर करने के लिए चुन लिया है बैक अप की देखभाल (हमारे मामले में: डीसीवीएस का उपयोग करके)। हम इस स्टोर को उसी तैनाती उपकरण के साथ ट्रैक करते हैं जिसका उपयोग हम वास्तविक तैनाती (हमारे मामले में: कपड़े)

पासवर्ड को एक TrueCrypt वॉल्यूम के अंदर संग्रहीत किया जाता है जो हमारे कुंजी-मूल्य स्टोर के अंदर संग्रहीत होता है।

==========

मैं अभी भी ख़ुशी से किसी भी सवाल का जवाब स्वीकार करेंगे जब इस समस्या का मुक्त स्रोत समाधान किसी तरह कहीं दिखाई नहीं देता। मैं निकट भविष्य में कहीं भी अपने समाधान का हिस्सा (हिस्सा) साझा कर सकता हूं।

उत्तर

1

pip freeze आपको सभी स्थापित संकुलों की एक सूची देता है। बोनस: यदि आप आउटपुट को किसी फ़ाइल में रीडायरेक्ट करते हैं, तो आप उन सभी पैकेजों को स्थापित करने के लिए अपनी तैनाती प्रक्रिया के हिस्से के रूप में इसका उपयोग कर सकते हैं (पीपी प्रोग्राम से सभी पैकेजों को प्रोग्रामेटिक रूप से इंस्टॉल कर सकते हैं)।

मुझे लगता है कि आप वर्चुअलएन्व का उपयोग कर रहे हैं। अच्छा। आप पाइथन पर्यावरण की स्थिति रिपोर्ट के रूप में युगल होने वाली निर्भरता फ़ाइल उत्पन्न करने के लिए pip freeze -E myvirtualenv > myproject.reqs चला सकते हैं।

+0

आपके उत्तर के लिए धन्यवाद। मैं पहले से ही पाइप फ्रीज का उपयोग कर रहा हूं, मैं सोच रहा था कि एकाधिक सर्वरों पर एकाधिक परियोजनाओं (संभावित रूप से एकाधिक संस्करणों के साथ) को ट्रैक करने के लिए किसी प्रकार का व्यापक टूल है या नहीं। –

0

शायद आप चाहते हैं की तरह OpscodeChef.

अपने स्वयं के शब्दों में कुछ:

बावर्ची काम करता है आप व्यंजनों (Apache के रूप में वर्णन है कि कैसे आप अपने सर्वर की एक हिस्सा चाहते हैं लिखने के लिए अनुमति देकर , MySQL, या Hadoop) कॉन्फ़िगर किया जाना है। ये व्यंजन संसाधनों की एक श्रृंखला का वर्णन करते हैं जो विशेष स्थिति में होना चाहिए - उदाहरण के लिए, पैकेज जिन्हें स्थापित किया जाना चाहिए, सेवाओं को चलाना चाहिए, या फ़ाइलों को लिखा जाना चाहिए।हम तब सुनिश्चित करते हैं कि प्रत्येक संसाधन ठीक से कॉन्फ़िगर किया गया है, केवल निरंतर होने पर सुधारात्मक कार्रवाई ले रहा है। परिणाम सुनिश्चित करने के लिए एक सुरक्षित है, आपके सर्वर हमेशा चल रहे हैं कि आप उन्हें कैसे बनना चाहते हैं।

संपादित करें: नोट बावर्ची एक अजगर उपकरण, यह एक सामान्य प्रयोजन उपकरण, रूबी (ऐसा लगता है) में लिखा है नहीं है। लेकिन यह विभिन्न "कुकबुक" का समर्थन करने में सक्षम है, जिसमें Python apps.

+0

यह अभी भी काफी नहीं है: मैं सर्वर पर कोड प्राप्त करने के वास्तविक तरीके की तलाश में विभिन्न सर्वरों पर परियोजनाओं के समूह का ट्रैक रखने के लिए एक और अधिक सुरुचिपूर्ण समाधान की तलाश में हूं। बाद की समस्या विभिन्न तरीकों से हल हो रही है, पूर्व नहीं है। –

+0

क्या स्थापित किया गया है इसका ट्रैक रखना बहुत अधिक "गुप्त सॉस" है। लोग/संस्थाएं जो इसे अच्छी तरह से करती हैं, ऐसा लगता है कि इसके बारे में बहुत स्पष्ट नहीं है। शायद क्योंकि कहा गया "सॉस" बहुत बुनियादी ढांचा-विशिष्ट है। –