कॉन्फ़िगरेशन आयात और मॉड्यूल अपडेट को किस क्रम में चलाया जाना चाहिए?


10

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

  • क्या किसी भी क्रम में विन्यास आयात और डेटाबेस अपडेट चलाने का कोई जोखिम है?
  • उन कार्यों को चलाने के लिए पसंदीदा आदेश क्या है?
  • क्या अद्यतन हुक को पहले से आयात किए जा सकने वाले कॉन्फ़िगर आइटम के लिए कोई विशेष आवास बनाने की आवश्यकता है?
  • क्या कोई अन्य संचालन है जो उत्पादन पर्यावरण को पूरी तरह से अपडेट करने के लिए आवश्यक हो सकता है?

संबंधित मुद्दा: drupal.org/node/2901418 :
दूधोवस्की

जवाबों:


12

कॉन्फ़िगरेशन आयात होने से पहले अपडेट चलना चाहिए

कोर के खिलाफ एक लंबित समस्या यह सुनिश्चित करेगी कि कॉन्फ़िगरेशन को आयात करने की अनुमति देने से पहले कोड और स्कीमा संस्करण मेल खाते हैं


अद्यतनों से पहले कॉन्फ़िगरेशन आयात की समस्याएं

  • कॉन्फ़िगरेशन मान पर निर्भर एक अद्यतन हुक पूर्व-आयात मान पर चलाए जाने से भिन्न परिणाम में समाप्त हो सकता है।

  • यदि यह कॉन्फ़िगरेशन इकाइयाँ बनाने का प्रयास करता है जो पहले से मौजूद है, तो एक अद्यतन संभावित रूप से विफल हो सकता है।

अद्यतनों के बाद कॉन्फ़िगरेशन आयात की चिंता

  • यदि एक नया कॉन्फ़िगरेशन इकाई शुरू करने वाला अद्यतन पहले चलाया जाता है, तो यह एक नया कॉन्फ़िगरेशन आइटम बनाएगा, जिसमें कॉन्फ़िगरेशन में भिन्न UUID होगा। हालाँकि, एक बार कॉन्फ़िगरेशन आयात होने के बाद इकाई को कॉन्फ़िगरेशन संस्करण के साथ बदल दिया जाना चाहिए।

    यहां एक संभावित समस्या हो सकती है यदि इकाई की जगह संबंधित सामग्री को प्रभावित करेगी। उदाहरण के लिए, यदि कोई अपडेट सामग्री को एक क्षेत्र से दूसरे क्षेत्र में स्थानांतरित करता है, तो कॉन्फ़िगरेशन आयात पर फ़ील्ड को पूरी तरह से बदल दिया जाएगा और सामग्री संभावित रूप से खो जाएगी। इस उदाहरण में परिनियोजन प्रक्रिया को लक्ष्य वातावरण पर अद्यतन चलाने और परिणामी कॉन्फ़िगरेशन को निर्यात करने के लिए समायोजित करने की आवश्यकता हो सकती है।


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

जैसा कि लिंक किए गए मुद्दे पर चर्चा है, एक ऐसा मामला है जहां हमारी इकाई अपडेट को आयात करने के लिए एक नए क्षेत्र की आवश्यकता होती है या अन्यथा post_update हुक विफल हो जाएगा। इस मामले में, हमें डेटाबेस अपडेट से पहले किए गए कॉन्फ़िगरेशन आयात की आवश्यकता है । इस पर सबसे
ताजा
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.