logo

एक्स्ट्रा ब्लॉक टाइप्स (EBT) - नया लेआउट बिल्डर अनुभव❗

एक्स्ट्रा ब्लॉक टाइप्स (EBT) - स्टाइलिश, कस्टमाइज़ेबल ब्लॉक टाइप्स: स्लाइडशो, टैब्स, कार्ड्स, एकॉर्डियन्स और कई अन्य। बैकग्राउंड, DOM बॉक्स, जावास्क्रिप्ट प्लगइन्स के लिए बिल्ट-इन सेटिंग्स। आज ही लेआउट बिल्डिंग का भविष्य अनुभव करें।

डेमो EBT मॉड्यूल्स EBT मॉड्यूल्स डाउनलोड करें

❗एक्स्ट्रा पैराग्राफ टाइप्स (EPT) - नया पैराग्राफ्स अनुभव

एक्स्ट्रा पैराग्राफ टाइप्स (EPT) - एनालॉजिकल पैराग्राफ आधारित मॉड्यूल्स का सेट।

डेमो EPT मॉड्यूल्स EPT मॉड्यूल्स डाउनलोड करें

स्क्रॉल
06/10/2025, by Ivan

Drupal साइट का अद्यतन करना एक जटिल, समय लेने वाला और महंगा कार्य है। यह एक कठिन समस्या है, जो पहली नज़र में सरल लग सकती है — लेकिन वास्तव में यह साइट मालिकों को सुरक्षित, विश्वसनीय अपडेट प्रदान करने और आगंतुकों के लिए उपलब्धता बनाए रखने से जुड़ी है।

Drupal के लिए स्वचालित अपडेट सेवा इस प्रक्रिया को सरल बनाने और यह सुनिश्चित करने के लिए बनाई गई है कि अद्यतन सही तरीके से लागू हो।

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

  • स्वचालित अपडेट मॉड्यूल अभी तक कोर में शामिल नहीं है। यह वर्तमान में एक अतिरिक्त (contrib) मॉड्यूल के रूप में उपलब्ध है: https://drupal.org/project/automatic_updates.
  • यह मॉड्यूल वर्तमान में रिलीज़ उम्मीदवार (Release Candidate) चरण में है। स्थिर संस्करण जल्द ही अपेक्षित है।
  • इस पहले चरण में स्वचालित अपडेट मॉड्यूल में सार्वजनिक सेवा घोषणाओं (PSA) के अलर्ट और रेडीनेस चेक सुविधाएँ शामिल हैं। यह मैन्युअल या क्रॉन (cron) के माध्यम से ऑन-साइट अपडेट भी लागू कर सकता है। यदि किसी अपडेट में डेटाबेस अपडेट शामिल हैं, तो असफलता की स्थिति में अपडेट वापस रोलबैक हो जाएगा।
  • यह मॉड्यूल फिलहाल Contrib मॉड्यूल या Composer-आधारित इंस्टॉलेशन को सपोर्ट नहीं करता है — यह समर्थन चरण 2 में जोड़ा जाएगा।

स्वचालित अपडेट मॉड्यूल की प्रमुख विशेषताएँ

सार्वजनिक सेवा घोषणाएँ (PSA)

Drupal कोर और अतिरिक्त मॉड्यूल्स के लिए गंभीर सुरक्षा रिलीज़ घोषणाएँ (PSA) बहुत कम होती हैं। जब PSA जारी होता है, तो साइट मालिकों को सुनिश्चित करना चाहिए कि उनकी साइटें नवीनतम संस्करणों पर हैं और अपडेट लागू करने के लिए तैयार हैं।

रेडीनेस चेक (Readiness Checks)

हर साइट किसी भी समय अपडेट नहीं हो सकती। “रेडीनेस चेक” एक स्वचालित प्रक्रिया है जो यह निर्धारित करती है कि कोई साइट नए रिलीज़ आने पर स्वचालित अपडेट के लिए तैयार है या नहीं। उदाहरण के लिए, यदि किसी साइट में अनरन डेटाबेस अपडेट हैं, केवल-पढ़ने योग्य फाइल सिस्टम माउंट है, या पर्याप्त डिस्क स्थान नहीं है — तो ऐसी साइटें स्वचालित अपडेट प्राप्त नहीं कर सकतीं। यदि आपकी साइट यह जांच पास नहीं करती, तो PSA जारी होने पर आपको समस्याओं को हल करना चाहिए ताकि साइट शीघ्रता से अपडेट हो सके।

ऑन-साइट अपडेट (Updates in Place)

जब PSA सेवा साइट मालिक को उपलब्ध अपडेट के बारे में सूचित करती है और रेडीनेस चेक पास हो जाता है, तो स्वचालित अपडेट सेवा अपडेट लागू कर सकती है।

कोई वेबसाइट, एजेंसी, या होस्टिंग प्रदाता अतिरिक्त डेटाबेस हैंडलिंग क्रियाएँ जोड़ सकता है — जैसे डेटाबेस डंप बनाना, उसे S3 पर अपलोड करना, या ईमेल सूचनाएँ भेजना, और फिर डेटाबेस अपडेट चलाना।

यदि आप कस्टम क्रियाएँ विकसित कर रहे हैं, तो ध्यान रखें कि कोई भी ऐसी क्रिया जो अद्यतन के दौरान बदले गए कोड पर निर्भर करती है, उसे कमांड-लाइन इंटरफ़ेस (CLI) के माध्यम से चलाना चाहिए। अन्यथा यह पुराना कोड चला सकती है। यह PHP की एक अंतर्निहित सीमा है। उदाहरण के लिए, आप execute_updates प्लगइन देख सकते हैं, जो Symfony कंसोल कमांड को कॉल करता है।

स्थापना

वर्तमान में Drupal Automatic Updates मॉड्यूल Drupal.org पर एक अतिरिक्त मॉड्यूल के रूप में उपलब्ध है। भविष्य में, सामुदायिक परीक्षण और सुधार के बाद, इसे Drupal कोर में शामिल किया जाएगा। उस समय, आपको केवल Drupal के उस संस्करण में अपडेट करना होगा जिसमें यह सुविधा पहले से मौजूद है।

Automatic Updates contrib मॉड्यूल को स्थापित करने के लिए, वही चरणों का पालन करें जो आप किसी अन्य मॉड्यूल को स्थापित करने के लिए करते हैं:

  1. महत्वपूर्ण: मॉड्यूल को tarball के माध्यम से डाउनलोड करें। वर्तमान में Composer के माध्यम से स्थापना समर्थित नहीं है।
  2. फिर मॉड्यूल को सामान्य तरीके से इंस्टॉल करें।
यह मॉड्यूल फिलहाल Composer-आधारित साइटों के लिए नहीं बनाया गया है। यह मानता है कि साइट आर्काइव फ़ाइलों से स्थापित और प्रबंधित की गई है। फिलहाल यह केवल Drupal Core अपडेट को सपोर्ट करता है। भविष्य के संस्करण Composer-आधारित Drupal इंस्टॉलेशन का पूर्ण समर्थन करेंगे।

मॉड्यूल का उपयोग

मैन्युअल उपयोग

PSA सुविधा Drupal.org से आने वाली सुरक्षा घोषणाएँ Drupal एडमिन इंटरफ़ेस में सीधे दिखाती है, ताकि व्यवस्थापक आगामी रिलीज़ के बारे में जान सकें।

रेडीनेस चेक नियमित रूप से चलता है ताकि यह सुनिश्चित किया जा सके कि कोई ऐसी समस्या नहीं है जो अपडेट लागू करने में बाधा बन सकती है।

मॉड्यूल के कॉन्फ़िगरेशन पृष्ठ से आप मैन्युअल रूप से ऑन-साइट अपडेट चला सकते हैं।

स्वचालित उपयोग

स्वचालित अपडेट सक्षम करने के लिए, मॉड्यूल की कॉन्फ़िगरेशन पृष्ठ पर “क्रॉन के माध्यम से अपडेट चलाएं” चेकबॉक्स को सक्षम करें। अपडेट केवल तभी लागू होंगे जब साइट रेडीनेस चेक पास करेगी।

स्वचालित अपडेट का विस्तार

डेटाबेस अपडेट अक्सर जटिल होते हैं, और साइट मालिक उन्हें संभालने के लिए अलग-अलग दृष्टिकोण अपना सकते हैं। Drupal 8 का Automatic Updates मॉड्यूल डेटाबेस अपडेट को संभालने के लिए प्लगइन आर्किटेक्चर का उपयोग करता है, जिससे प्रणाली विस्तार योग्य बनती है।

डिफ़ॉल्ट कॉन्फ़िगरेशन — साइट को मेंटेनेंस मोड में डालना, डेटाबेस अपडेट चलाना, फिर साइट को वापस ऑनलाइन करना। इस प्रक्रिया को बदलने के लिए अभी कोई UI नहीं है। यह क्रम automatic_updates.settings.yml में config द्वारा सेट किया जाता है। वैकल्पिक रूप से, इसे settings.php में ओवरराइड किया जा सकता है:

$config['automatic_updates.settings']['database_update_handling'] = ['rollback', 'alternative_plugin_id', 'yet_another_plugin'];

उपलब्ध प्लगइन्स की सूची:

  • 'execute_updates'
  • 'ignore_updates'
  • 'maintenance_mode_activate'
  • 'maintenance_mode_disactivate'
  • 'rollback'

आप अतिरिक्त प्लगइन्स बना सकते हैं — उदाहरण के लिए, एक कस्टम डेटाबेस बैकअप प्लगइन — ताकि कार्यक्षमता को और बढ़ाया जा सके।

स्वचालित अपडेट सिस्टम की संरचना

मुख्य घटक

सार्वजनिक सेवा घोषणाएँ (PSA) — Drupal.org द्वारा प्रदान किए गए psa.json चैनल का उपयोग करके प्रदर्शित की जाती हैं, और Drupal इंटरफ़ेस में drupal_set_message() के माध्यम से दिखाई जाती हैं।

रेडीनेस चेक — यह एक प्लग-इन आधारित प्रणाली है जो विभिन्न जांचें चलाती है और चेतावनियाँ या त्रुटियाँ Drupal एडमिन इंटरफ़ेस में दिखाती है।

ऑन-साइट अपडेट — यह Drupal.org द्वारा बनाए गए साइन किए गए “quasi-patches” पर आधारित है। इन पैचों को php-libsodium लाइब्रेरी का उपयोग करके सत्यापित किया जाता है। सत्यापन के बाद, PHP की कॉपी फ़ंक्शन का उपयोग करके अद्यतन फ़ाइलें प्रतिस्थापित की जाती हैं।

परीक्षण सुविधाएँ

वर्तमान मॉड्यूल संस्करण में, उपयोगकर्ता Drupal.org PSA JSON चैनल के परीक्षण संस्करण को सक्षम कर सकता है ताकि PSA संदेशों का प्रदर्शन देखा जा सके।

ऐसा करने के लिए:

$ drush pm-enable automatic_updates_test
$ drush vset automatic_updates_psa_endpoint http://localhost/automatic_updates/test-json

अपना कस्टम परीक्षण चैनल जोड़ने के लिए, ऊपर दिए गए URL को अपने चैनल से बदलें।

आधिकारिक PSA चैनल पर वापस लौटने के लिए:

$ drush vset automatic_updates_psa_endpoint https://updates.drupal.org/psa.json
$ drush pm-disable automatic_updates_test

Drupal.org अवसंरचना

Drupal के स्वचालित अपडेट Drupal.org की इंफ्रास्ट्रक्चर द्वारा समर्थित हैं और Drupal Association द्वारा वित्तपोषित हैं।

PSA चैनल Drupal.org पर JSON प्रारूप में उपलब्ध है: https://updates.drupal.org/psa.json
परीक्षण चैनल: https://updates.drupal.org/psa-this-is-only-a-test.json

यह चैनल सभी सक्रिय PSA की सूची शामिल करता है, जैसे:

  • title: PSA का शीर्षक
  • link: Drupal.org पर PSA का पूर्ण लिंक
  • project: प्रभावित प्रोजेक्ट का नाम
  • type: कोर, मॉड्यूल, थीम, वितरण आदि
  • is_psa: यह संकेत करता है कि यह PSA है
  • insecure: असुरक्षित संस्करणों की सूची
  • pubDate: PSA प्रकाशन तिथि

उदाहरण के लिए, यदि Drupal.org पर PSA-2019-05-07 और PSA-2019-09-04 प्रकाशित हैं, तो JSON इस प्रकार दिखाई देगा:

[{"title":"Drupal 7 and 8 release on May 8th, 2019 - PSA-2019-05-07","insecure":["8.7.0","8.7.4"],"link":"https://www.drupal.org/psa-2019-05-07","pubDate":"2019-09-20T22:09:16+00:00","project":"drupal","type":"core","is_psa":"1"}]

Automatic Updates मॉड्यूल इस चैनल को पढ़ता है और एडमिन इंटरफ़ेस में प्रदर्शित करता है।

पैकेज जनरेशन और सुरक्षा

Drupal.org की पैकेजिंग प्रणाली .tar.gz और .zip फ़ाइलें बनाती है, और Composer डेटा अपडेट करती है। यह स्वचालित अपडेट प्रणाली “quasi-patches” भी तैयार करती है, जो सुरक्षित रूप से साइट को अपडेट करने में उपयोग होते हैं।

इन पैचों की सुरक्षा सुनिश्चित करने के लिए Drupal.org BSD Signify पर आधारित हस्ताक्षर और हैशिंग आर्किटेक्चर का उपयोग करता है।

Drupal समुदाय ने इसकी PHP इम्प्लीमेंटेशन भी विकसित की है: https://github.com/drupal/php-signify

प्रतिक्रिया प्रदान करना

यदि आप स्वचालित अपडेट मॉड्यूल के इस पहले संस्करण पर प्रतिक्रिया देना चाहते हैं, तो Automatic Updates इश्यू कतार पर अपनी प्रतिक्रिया साझा करें।