पाठ 20 / 21

बिल्ड आर्टिफ़ैक्ट और रजिस्ट्री

बिल्ड का नतीजा, वर्ज़न किया गया और संग्रहीत ताकि उसे कहीं भी डिप्लॉय किया जा सके।

आर्टिफ़ैक्ट क्या है

एक आर्टिफ़ैक्ट बिल्ड चरण का ठोस नतीजा है — एक Docker इमेज, एक JAR, एक कंपाइल की गई बाइनरी, एक स्टैटिक JS बंडल। असल में यही टेस्ट और डिप्लॉय होता है, सोर्स कोड खुद नहीं।

वर्ज़निंग

हर आर्टिफ़ैक्ट को एक अपरिवर्तनीय पहचानकर्ता मिलता है — एक सेमांटिक वर्ज़न, एक git कमिट SHA, या एक बिल्ड नंबर। इससे आप बता सकते हैं कि प्रोडक्शन में ठीक क्या चल रहा है, और ज़रूरत पड़ने पर ठीक वही बिल्ड दोबारा डिप्लॉय कर सकते हैं।

लेबल वाला गोदाम

एक आर्टिफ़ैक्ट रजिस्ट्री (Docker Hub, npm रजिस्ट्री, कोई निजी रजिस्ट्री) एक गोदाम है जहाँ हर डिब्बे (आर्टिफ़ैक्ट) पर एक साफ़ लेबल (वर्ज़न) होता है। जहाँ भी डिप्लॉय करना हो, वह बस ठीक उसी लेबल वाला डिब्बा मंगाता है — कोई अंदाज़ा नहीं लगाना पड़ता।

त्वरित जाँच: हर बिल्ड आर्टिफ़ैक्ट को अपरिवर्तनीय वर्ज़न पहचानकर्ता क्यों मिलना चाहिए?

  • इससे बिल्ड तेज़ चलता है
  • इससे आप ठीक-ठीक जान सकते हैं क्या चल रहा है और बाद में वही बिल्ड दोबारा डिप्लॉय कर सकते हैं
  • इससे रजिस्ट्री की ज़रूरत खत्म हो जाती है
Answer

इससे आप ठीक-ठीक जान सकते हैं क्या चल रहा है और बाद में वही बिल्ड दोबारा डिप्लॉय कर सकते हैं — एक स्थिर, अनोखा पहचानकर्ता 'कोई बिल्ड' को एक ट्रेस-योग्य, दोबारा बनाने योग्य आर्टिफ़ैक्ट में बदल देता है जिसकी ओर आप इशारा कर सकते हैं और दोबारा डिप्लॉय कर सकते हैं।