2011-05-23 12 views
5

मुझे मिल पिलोन पिरामिड एप्लिकेशन का मानक रन मिला है, जो एसक्यूएलकेमी को अपने डेटाबेस दृढ़ता के लिए उपयोग करता है।पिरामिड/स्क्लाक्लेमी वेब ऐप्स का उन्नयन

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

मुझे इसे अब मेरे ऐप में बनाया गया है, इसलिए ऐप स्टार्टअप पर यह संस्करण अपग्रेड करता है, लेकिन मैं ऐसे कुछ के साथ जाऊंगा जहां उपयोगकर्ता को डेटाबेस को अपग्रेड करना होगा ताकि वे जान सकें कि वास्तव में क्या हो रहा है पर, और पहले से बैकअप बनाने के लिए पता है।

मैं इसके बारे में कैसे जाउंगा? पेस्ट करने के लिए मैं कमांड कैसे जोड़ूं?

तरह से उपयोगकर्ताओं को आवेदन की स्थापना होगी:

paste make-config appname production.ini 
paste setup-app production.ini#appname 

यह पहली बार सेट करने के लिए, डेटाबेस का उन्नयन या सामान्य रूप में उन्नयन मैं चाहेगा करना है:

paste upgrade-app production.ini#appname 

या उन पंक्तियों के साथ कुछ।

+1

आप अपना खुद का पास्टर कमांड बना सकते हैं, उदा। 'अपग्रेड-एप', और फिर इसे 'paster --plugin = appname upgrade-app /path/to/production.ini appname' के साथ कहीं से भी कॉल करें। आप देख सकते हैं कि पिरामिड PShellCommand कैसे लागू करता है। – sayap

+0

@sayap क्या आप इसे उत्तर देने में मस्तिष्क करेंगे ताकि मैं इसे स्वीकार कर सकूं? –

+0

हो गया। इसलिए "यह त्वरित और गंदे टिप्पणी मेरे लिए काफी अच्छी है" सुविधा की आवश्यकता है :) – sayap

उत्तर

1

आप अपना खुद का पास्टर कमांड बना सकते हैं, उदा। upgrade-app, और उसके बाद इसे कहीं भी paster --plugin=appname upgrade-app /path/to/production.ini appname से कॉल करें। आप देख सकते हैं कि पिरामिड PShellCommand कैसे लागू करता है।

0

यह काफी नहीं है जो आप खोज रहे हैं, लेकिन एक तरीका है जिसे मैं संभालता हूं Fabric कमांड के साथ है। मेरे ओएसएस ऐप में आपके पास एक कपड़े कमांड है जो आपके ऐप के लिए .ini फ़ाइल बनाता है और उसके बाद, आप sqlalchemy.url को एडजस्ट करने के बाद, आप एक कपड़े कमांड चलाते हैं जो init के SA माइग्रेशन करता है और अपग्रेड चलाता है। तब से, आपको रैब db_upgrade चलाने के लिए अपग्रेड करने के लिए।

http://bmark.us/install.html

मैं सेटअप स्थापित किए गए दस्तावेज़ों की एक उदाहरण है।

https://github.com/mitechie/Bookie/blob/master/fabfile/database.py

db विशिष्ट कपड़ा इंटरफेस के माध्यम से उपलब्ध आदेशों का सेट है।

संबंधित मुद्दे