Architecture Decision Record

Active theme: Light

← फैसला रिकॉर्ड के उदाहरण

Microsoft Azure DevOps

सामग्री:

सारांश

समस्या

हमनी अपना परियोजना के बनावे, इंटीग्रेट करे, डिप्लॉय करे, आ होस्ट करे खातिर devops इस्तेमाल करे चाहत बानी। हमनी Microsoft Azure DevOps पर विचार कर रहल बानी।

  • हमनी चाहत बानी कि डेवलपर अनुभव तेज आ भरोसेमंद होखे, devops के सेटअप खातिर जइसे कॉन्फिगर करल आ लगातार इस्तेमाल खातिर जइसे तेज बिल्ड समय।

  • हमनी Microsoft Azure के पूरा रूप में परियोजना एप्लिकेशन, डेटाबेस, वगैरह होस्ट करे खातिर इस्तेमाल करे पर विचार करे चाहत बानी।

फैसला

Microsoft Azure DevOps के खिलाफ तय भइल।

स्थिति

तय भइल। नया महत्त्वपूर्ण जानकारी आइल पर/अगर फेर से विचार करे खातिर खुला बानी।

ब्योरा

मान्यता

सब आम devops मान्यता, जइसे Accelerate किताब में बा।

  • तेज बिल्ड एगो महत्त्वपूर्ण मदद ह। ई प्रतिक्रिया के चक्र के तेज करेला।

  • हमनी आउर विक्रेता के हिस्सा के बदल सकीले यानी हमनी शायद अपना तेज-गति वाला बिल्ड सर्वर ले आवे चाहीं, चाहे संस्करण नियंत्रण प्रणाली के आपन चुनाव इस्तेमाल करे चाहीं, चाहे खुद-होस्ट कइल निरंतर इंटीग्रेशन सर्वर संगे तालमेल करे चाहीं।

  • सुव्यवस्थित उपयोगिता एगो महत्त्वपूर्ण मदद ह, डेवलपर अनुभव खातिर, आ बदले में संगति, स्पष्टता, सुरक्षा, आ सीखे के कठिनाई जइसन बारीक क्षेत्र खातिर।

  • जब कुछ भी टूटल चाहे समस्याग्रस्त होखे, हमनी समस्या के रिपोर्ट करे के प्रभावी तरीका चाहत बानी। ई सुरक्षा-संबंधी मुद्दा खातिर खास कर जरूरी बा।

बंदिश

कुछ जानल नइखे। Azure के बाहरी औजार संगे नीमन तरी से काम करे के प्रकाशित प्रतिबद्धता बा।

रुख

हमनी Microsoft Azure Devops बनाम AWS पर विचार कइनी जे पहिले से मौजूद ह।

हमनी Azure DevOps, Azure Pipelines, Azure Repo, आ Terraform के जरिए नया सर्वर के Azure पर चालू करे के प्रयोग कइनी।

हमनी Microsoft प्रतिनिधि लोग से सहायता पावे के प्रयोग कइनी।

हमनी ब्लॉग आ Hacker News पर साथी लोग से जानकारी जुटवनी।

तर्क

Azure DevOps पेशकश के एगो उत्कृष्ट सेट के विज्ञापन करेला, लेकिन ऊ टिकेला ना, ऊ एक साथ नीमन काम ना करेला, आ सहायता कमजोर बा।

हमनी के प्रत्यक्ष अनुभव:

  • Azure सेटअप UI के अव्यवस्था ह, जेमें से कुछ Microsoft खाता से ओवरलैप होला, कुछ ना। जइसे Azure साइन इन बा, Microsoft.com साइन इन बा, Live.com साइन इन बा, वगैरह आ सब एके साथे प्रयोग में रहेला।

  • हमनी के सेटअप के दौरान एगो छोट सुरक्षा समस्या मिलल, आ कवनो समाधान ना मिलल। हमनी एकरा के रिपोर्ट करे के कई तरीका आजमवनी, कई Microsoft प्रतिनिधि लोग से, बिना सफलता के। हमनी Microsoft सुरक्षा के रिपोर्ट करे में सफल भइनी, जे जवाब दिहलस कि ठीक ना कइल जाई।

  • दस्तावेज अक्सर या त गलत बा चाहे पुरान। कम से कम एकर कुछ हिस्सा Microsoft के कमजोर खोज इंजन के चलते बा, आ कुछ हिस्सा घटिया SEO के चलते।

  • Terraform सेटअप नीमन से दस्तावेजित बा, आ काम करेला। लेकिन, AWS के मुकाबले Terraform समर्थन कमजोर बा काहेकि Microsoft विक्रेता लोग संगे कारोबारी रिश्ता बना रहल बा ताकि Terraform सेटअप के जंजीर वाला उदाहरण बना सके।

हमनी के साथी लोग के अनुभव:

  • हमनी अपना खुद के अंधा आकलन कइला के बाद, साथी लोग के अनुभव खोजनी। जवन मिलल ऊ हमनी के अनुभव के पुष्टि कइलस।

  • साथी लोग बिल्ड समय के बारे में अतिरिक्त समस्या, आ अपना-बिल्ड-सर्वर-ले-आवे वाला समस्या के रिपोर्ट कइले। ई समस्या UI के समस्या से काफी जादा गंभीर बा, काहेकि बिल्ड करल बिल्ड पाइपलाइन के मूल मकसद ह, आ हमनी रोज बहुत कइला के उम्मीद करत बानी।

  • हमनी चर्चा क्षेत्र में Azure टीम के साथी लोग के उत्कृष्ट भागीदारी पवनी। एकरा खातिर Microsoft के शाबाशी। हमनी Edward Thomson, Azure PM आ कोडर, से खास कर प्रभावित बानी, उनकर भागीदारी, सीधापन, आ तकनीकी स्पष्टीकरण के कारन।

असर

Microsoft Azure DevOps चुनल समय आ लागत में Azure ना चुनला के मुकाबले जादा महंगा (~3 गुना) होखे के संभावना लागेला।

संबंधित

संबंधित फैसला

अगर हमनी Azure DevOps चुनीं, त बहुत संबंधित पेशकश बा, जेमें Azure Repo, Azure Pipeline, वगैरह शामिल बा। हमनी के विश्वास बा कि अगर हमनी Azure Devops चुनीं, त एकरा से आउर Azure क्षमता के इस्तेमाल आसान हो सकेला, चाहे आउर विक्रेता के क्षमता के इस्तेमाल कठिन हो सकेला।

हमनी के विश्वास बा कि Microsoft डेवलपर अनुभव में बड़ प्रगति कर रहल बा, आ हमनी देखत बानी कि Microsoft डेवलपर औजार (जइसे GitHub) आ निर्भरता (जइसे Citus) के बड़ अधिग्रहण कर रहल बा।

अगर हमनी Azure DevOps चुनीं, त हमनी Microsoft अधिग्रहण वाला पेशकश चुनल पर जोर देवे चाहीं, आ हमनी अधिग्रहण वाला पेशकश के जादा सावधानी/आकलन से संपर्क करे चाहीं काहेकि संभावित ऊतक-अस्वीकृति जइसे कर्मचारी छोड़े के जोखिम बा।

संबंधित जरूरत

हमनी चाहत बानी कि बिल्ड समय बहुत तेज होखे। एकरा खातिर हमनी ऊँच प्रीमियम देवे के स्वीकार करत बानी। ई एहसे काहेकि हमनी बहुत तेजी से दोहरावल चाहत बानी।

हमनी चाहत बानी कि भरोसेमंदी बहुत ऊँच होखे। एकरा खातिर हमनी ऊँच प्रीमियम देवे के स्वीकार करत बानी। ई एहसे काहेकि हमनी ऊँच-मूल्य वाला उपयोग के मामला के परीक्षण कर रहल बानी, जेमें वित्तीय लेन-देन, गोपनीय लेन-देन, वगैरह शामिल बा।

हमनी के शीर्ष 4 devops KPI में औसत-बहाली-समय शामिल बा, जेकरा खातिर तेज बिल्ड आ ऊँच भरोसेमंदी जरूरी बा।

संबंधित आर्टिफैक्ट

हमनी चाहत बानी कि बिल्ड सिस्टम अइसन आर्टिफैक्ट निकाले जे आउर सिस्टम, जइसे Artifactory, में इस्तेमाल करे के लायक होखे।

संबंधित सिद्धांत

आसानी से पलटे-लायक। हमनी Azure DevOps के पहिले से मौजूद AWS के समानांतर में मूल्यांकन कर सकीले।

टिप्पणी

Microsoft Devops CI: असंतोषजनक सफर

https://toxicbakery.github.io/vsts-devops/microsoft-devops-ci/

ब्लॉग पोस्ट।

"सॉफ्टवेयर डेवलपर के रूप में, हम सीधा जानत बानी कि गुणवत्ता वाला उत्पाद तेजी से आ सस्ता बनावल केतना कठिन ह। ई एगो कला ह जवना के हमनी कबो सही कर लेनी, आ कबो ओबामा-युग के स्वास्थ्य सेवा सरकारी साइट जइसन कुछ में बदल जाला। परिणामी उत्पाद पर हमनी के नियंत्रण के स्तर अलग-अलग होला, आ विफलता के दोष अक्सर फैसला लिहे के पदानुक्रम में गलत लोग पर पड़ेला। Microsoft के Azure DevOps (पहिले Visual Studio Team Services के नाम से जानल जात रहे), साफ तौर पर अच्छा इरादा के बावजूद, खराब फैसला आ कमजोर निष्पादन के एगो सटीक तूफान ह।"

Hacker News बतकही के खास बात

https://news.ycombinator.com/item?id=18983586

"हमनी अपना काम पर Azure DevOps के बहुत इस्तेमाल करेनी आ, GitHub, Gitlab, खुद-होस्ट कइल समाधान, Jenkins, TeamCity इस्तेमाल कइला के बाद... Azure DevOps सबसे अंत में आवेला।"

"UI हर जगह भयानक रूप से अनगढ़ बा। हमरा खातिर सबसे खराब पुल रिक्वेस्ट बा। पुल रिक्वेस्ट पर लोग संगे काम करल अविश्वसनीय रूप से कठिन बा। हम रउआ के "एगो" खास समस्या ना बता सकीले - हमनी खातिर ई हर जगह टूटल बा।"

"Azure Devops एगो अइसन चीज ह जेकरा से हम प्यार करे चाहत बानी। UI बदलत रहेला, लेकिन उन बुनियादी बग के ठीक ना करेला जे बरिस से मौजूद बा।"

"औजार नीमन से इंटीग्रेट नइखे, UI सच में धीमा बा, हमरा पसंदीदा रिपो खातिर सक्रिय पुल रिक्वेस्ट, बिल्ड, रिलीज, वगैरह के डैशबोर्ड दृश्य नइखे। बिल्ड/डिप्लॉय समय पागलपन के हद तक धीमा बा।"

"हमनी Azure Boards (Work Items, Boards, Backlogs, वगैरह) भी इस्तेमाल करे के कोशिश कइनी। बाप रे। ई अलग-अलग विचारन के UI अव्यवस्था ह। एक चीज के नीमन से लागू करे के बजाय, ऊ लोग दू दर्जन चीज के खराब तरी से लागू कइलस।"

Windows Development MVP

Windows Development MVP इहाँ। हम महसूस करत बानी कि हमरा एह मुद्दा के बारे में जादा जोर से ना बोले के कुछ जिम्मेदारी लेवे के चाहीं। लेकिन हमरा कहे के पड़ी, हम निराश बानी कि रउआ UX मुद्दा से "हैरान" बानी। हम रउआ लोग के बतावत रहनी कि UX भयानक बा (जइसे लॉन्च से पहिले से) आ बार-बार सुनत रहनी "हमनी जानत बानी, हमनी ठीक कर रहल बानी।" हम प्रतिक्रिया के औपचारिक रूप देवे आ पाइप के जरिए आगे बढ़ावे के शुरू करब, बनल रहीं। हम स्थानीय भी बानी (Bellevue), हम आके हमनी के अपेक्षाकृत सादा oss .net/wpf/uwp एप्लिकेशन के पाइपलाइन बनावे के कोशिश करे के चाहब। हमरा शक बा कि एकरा से हमनी दूनो के आँख खुल जाई।

कुछ उदाहरण:

  • रउआ ओह git रिपो के साथे पाइपलाइन ना बना सकीले जेमें सबमॉड्यूल बा

  • कुछ अनुकूलित औजार खातिर PATH बदलल असंभव लागल

  • नया पाइपलाइन अनुभव के कुछ मतलब नइखे बनत, नया उपयोगकर्ता क्लिक करत-करत आखिरकार गलत Docs पर पहुँच जालें।

Edward Thomson (Azure PM) के सारांश

हम ऊ कोड लिखनी जे रउआ पुल रिक्वेस्ट के मर्ज करेला। Azure DevOps खातिर Microsoft में कार्यक्रम प्रबंधक; पहिले GitHub, Microsoft, SourceGear में संस्करण नियंत्रण औजार पर सॉफ्टवेयर इंजीनियर।

https://www.edwardthomson.com/

libgit2 के सह-रखरखावकर्ता। https://libgit2.github.io

All Things Git के सह-होस्ट, Git के बारे में पॉडकास्ट। https://www.allthingsgit.com/

Developer Tools Weekly के क्यूरेटर, विकास औजार के बारे में एगो न्यूजलेटर। https://developertoolsweekly.com/