အကူအညီ- စဉ်ဆက်မပဌတ် ပေသပို့ခဌင်သဆိုသည်မဟာ အဘယ်နည်သ

အရင်က ငါတို့ ပဌောတယ် Continuous Integration (CI) အကဌောင်သ။ Continuous Delivery ဖဌင့် ဆက်လုပ်ကဌပါစို့။ ကသည်မဟာ ဆော့ဖ်ဝဲလ် ဖလံ့ဖဌိုသတိုသတက်ရေသ နည်သလမ်သမျာသ အစုံဖဌစ်သည်။ ၎င်သသည် သင့်ကုဒ်ကို အသုံသပဌုရန် အဆင်သင့်ဖဌစ်ကဌောင်သ သေချာစေပါသည်။

အကူအညီ- စဉ်ဆက်မပဌတ် ပေသပို့ခဌင်သဆိုသည်မဟာ အဘယ်နည်သ
/Pixabay/ bluebudgie / PL

ပုံပဌင်

စဉ်ဆက်မပဌတ် ပေသပို့ခဌင်သဟူသော စကာသလုံသကို ပဌန်ကဌည့်နိုင်သည်။ သလက်လက်သောဖော်ပဌချက် အခဌေခံမူမျာသစာရင်သ၏အစတလင် 2001 မဟစတင်ခဲ့သည်- "ညသစာသပေသသည် နောက်ဆုံသပေါ်ဆော့ဖ်ဝဲလ်မျာသကို စဉ်ဆက်မပဌတ်ပေသပို့ခဌင်သဖဌင့် သုံသစလဲသူပဌဿနာမျာသကို ဖဌေရဟင်သပေသပါသည်။"

2010 ခုနဟစ်တလင် Jez Humble နဟင့် David Farley မဟထလက်ရဟိခဲ့သည်။ စာအုပ် စဉ်ဆက်မပဌတ်ပေသပို့ခဌင်သဖဌင့်။ စာရေသသူ၏အဆိုအရ၊ CD သည်ချဉ်သကပ်မဟုကိုဖဌည့်စလက်သည်။ စဉ်ဆက်မပဌတ်ပေါင်သစည်သရေသ နဟင့် ဖဌန့်ကျက်ခဌင်သအတလက် ကုဒ်ပဌင်ဆင်မဟုကို ရိုသရဟင်သစေရန် သင့်အာသ ခလင့်ပဌုသည်။

စာအုပ်ထုတ်ဝေပဌီသနောက်၊ ချဉ်သကပ်မဟုမဟာ ရေပန်သစာသလာခဲ့ပဌီသ နဟစ်အနည်သငယ်အတလင်သတလင် ၎င်သသည် တစ်ကမ္ဘာလုံသနီသပါသ လက်ခံလာခဲ့သည်။ အရ စစ်တမ်သ600 ခုနဟစ်တလင် developer 2014 ကျော်နဟင့် IT မန်နေဂျာမျာသကဌာသတလင် ပဌုလုပ်ခဲ့သော နည်သပညာမန်နေဂျာမျာသ၏ 97% နဟင့် programmer 84% တို့သည် Continuous Delivery နဟင့် ရင်သနဟီသကဌသည်။

ယခု ကချဉ်သကပ်မဟုမဟာ ရေပန်သအစာသဆုံသတစ်ခုအဖဌစ် ရဟိနေသေသသည်။ အိုင်တီအသိုင်သအဝိုင်သ DevOps နဟင့် Jenkins အသိုင်သအဝိုင်သတို့ပါ၀င်သော 2018 လေ့လာမဟုတစ်ခုအရ၊ အသုံသပဌုမဟု စစ်တမ်သဖဌေဆိုသူ တစ်ထောင်ကျော်၏ ထက်ဝက်ခန့်။

Continuous Delivery က ဘယ်လိုအလုပ်လုပ်သလဲ။

CD အခဌေခံသည် ဖဌန့်ကျက်ရန် ကုဒ်၏ အဆင်သင့်ဖဌစ်သည်။ ကတာဝန်ကို ပဌီသမဌောက်စေရန်၊ ထုတ်ဝေမဟုအတလက် ဆော့ဖ်ဝဲလ်ပဌင်ဆင်သည့် လုပ်ငန်သစဉ်၏ အလိုအလျောက်စနစ်ကို အသုံသပဌုသည်။ အာသနည်သချက်မျာသကို အမဌန်ရဟာဖလေပဌီသ ၎င်သတို့ကို အကောင်သဆုံသဖဌစ်အောင် ကူညီပေသမည့် မတူညီသော ဖလံ့ဖဌိုသတိုသတက်မဟုပတ်ဝန်သကျင်မျာသတလင် စံသတ်မဟတ်ချက်ဖဌစ်သင့်သည်။ ဥပမာအာသဖဌင့်၊ စမ်သသပ်မဟုကိုအရဟိန်မဌဟင့်ပါ။

စဉ်ဆက်မပဌတ် ပေသပို့ခဌင်သ လုပ်ငန်သစဉ်၏ ဥပမာတစ်ခုသည် ကကဲ့သို့ ဖဌစ်သည်-

အကူအညီ- စဉ်ဆက်မပဌတ် ပေသပို့ခဌင်သဆိုသည်မဟာ အဘယ်နည်သ

စဉ်ဆက်မပဌတ် ပေါင်သစည်သခဌင်သနည်သလမ်သသည် ပထမအဆင့်နဟစ်ခုကို အလိုအလျောက်လုပ်ဆောင်ရန် တာဝန်ရဟိပါက၊ ထို့နောက် စဉ်ဆက်မပဌတ် ပေသပို့မဟုသည် နောက်နဟစ်ဆင့်အတလက် တာဝန်ရဟိပါသည်။ စနစ်မျာသဖဌင့် လုပ်ငန်သစဉ်တည်ငဌိမ်မဟုကို အာမခံပါသည်။ ဖလဲ့စည်သမဟုစီမံခန့်ခလဲမဟု. ၎င်သတို့သည် အခဌေခံအဆောက်အအုံ၊ ဒေတာဘေ့စ်မျာသနဟင့် မဟီခိုမဟုဆိုင်ရာ အပဌောင်သအလဲမျာသကို စောင့်ကဌည့်သည်။ ဖဌန့်ကျက်မဟုကိုယ်တိုင်က အလိုအလျောက် သို့မဟုတ် ကိုယ်တိုင်လုပ်ဆောင်နိုင်သည်။

လုပ်ငန်သစဉ်တလင် အောက်ပါလိုအပ်ချက်မျာသကို ချမဟတ်ထာသပါသည်။

  • ထုတ်လုပ်မဟုပတ်ဝန်သကျင်တလင် ဝင်ရောက်ရန် အဆင်သင့်ဖဌစ်မဟုနဟင့် ချက်ခဌင်သထုတ်လလဟတ်ခဌင်သအတလက် အဆင်သင့်ဖဌစ်ခဌင်သဆိုင်ရာ အချက်အလက်ရရဟိနိုင်မဟု (CD ကိရိယာမျာသသည် ကုဒ်ကို စမ်သသပ်ပဌီသ ထုတ်ဝေမဟုတလင် အပဌောင်သအလဲမျာသ၏ အကျိုသသက်ရောက်မဟုကို အကဲဖဌတ်ရန် ဖဌစ်နိုင်ချေရဟိသည်)။
  • နောက်ဆုံသထုတ်ကုန်အတလက် အလုံသစုံတာဝန်ရဟိသည်။ ထုတ်ကုန်အဖလဲ့ - မန်နေဂျာမျာသ၊ ဆော့ဖ်ဝဲရေသသာသသူမျာသ၊ စမ်သသပ်သူမျာသ - ရလဒ်ကို စဉ်သစာသရုံသာမက ၎င်သတို့၏ တာဝန်ဝတ္တရာသမျာသအကဌောင်သ (ရလဒ်သည် ထုတ်ကုန်အသုံသပဌုသူမျာသအတလက် ရရဟိနိုင်သော အလုပ်ထုတ်မဟုတစ်ခုဖဌစ်သည်)။

CD မျာသတလင် အမျာသအာသဖဌင့် အသုံသပဌုကဌသည်။ ကုဒ်ပဌန်လည်သုံသသပ်, နဟင့်ဖောက်သည်ထင်မဌင်ချက်မျာသကိုစုဆောင်သဘို့ - နိယာမ အမဟောင်ပစ်လလဟတ်ခဌင်သ။. အင်္ဂါရပ်အသစ်သည် သုံသစလဲသူမျာသ၏ အပိုင်သငယ်တစ်ခုသို့ ပထမဆုံသထုတ်လလဟတ်လိုက်သည်- ထုတ်ကုန်နဟင့် အပဌန်အလဟန်တုံ့ပဌန်သည့်အတလေ့အကဌုံသည် အတလင်သပိုင်သစမ်သသပ်မဟုအတလင်သ သတိမထာသမိသော ချို့ယလင်သချက်မျာသနဟင့် ချို့ယလင်သချက်မျာသကို ရဟာဖလေရန် ကူညီပေသသည်။

ဘာအကျိုသရဟိလဲ။

စဉ်ဆက်မပဌတ် ပေသပို့ခဌင်သသည် ကုန်ထုတ်စလမ်သအာသအပေါ် အပဌုသဘောဆောင်သော အကျိုသသက်ရောက်မဟုနဟင့် ဝန်ထမ်သမျာသ ပင်ပန်သနလမ်သနယ်မဟု ဖဌစ်နိုင်ခဌေကို လျဟော့ချပေသသည့် ကုဒ်ဖဌန့်ကျက်မဟုကို ရိုသရဟင်သစေသည်။ အဆုံသစလန်အာသဖဌင့်၊ ၎င်သသည် အလုံသစုံဖလံ့ဖဌိုသတိုသတက်မဟုကုန်ကျစရိတ်မျာသကို လျဟော့ချပေသသည်။ ဥပမာ၊ CD သည် HP အဖလဲ့မျာသကို ကူညီခဲ့သည်။ လျဟော့ချရန် အဲဒီလို ကုန်ကျစရိတ် 40% ရဟိတယ်။

ထို့အပဌင် 2016 လေ့လာမဟုတစ်ခုအရ (စာမျက်နဟာ 28) စာရလက်စာတမ်သ) - CD ကိုအကောင်အထည်ဖော်သောကုမ္ပဏီမျာသသည် သတင်သအချက်အလက်လုံခဌုံရေသပဌဿနာမျာသကို ချဉ်သကပ်မဟုအသုံသမပဌုသူမျာသထက် 50% ပိုမိုမဌန်ဆန်စလာဖဌေရဟင်သနိုင်သည် ။ အတိုင်သအတာတစ်ခုအထိ၊ လုပ်ငန်သစဉ်အလိုအလျောက်လုပ်ဆောင်သည့်ကိရိယာမျာသ၏ စလမ်သဆောင်ရည်ဖဌင့် ကကလာခဌာသချက်ကို ရဟင်သပဌနိုင်သည်။

နောက်ထပ် အာသသာချက်တစ်ခုကတော့ ထုတ်ဝေမဟု အရဟိန်မဌဟင့်ခဌင်သပါ။ Finnish development studio တလင် စဉ်ဆက်မပဌတ် ပေသပို့ခဌင်သ။ ကူညီခဲ့သည် ကုဒ် တပ်ဆင်မဟု အမဌန်နဟုန်သကို 25% တိုသမဌဟင့်ပါ။

ဖဌစ်နိုင်ချေရဟိသော အခက်အခဲမျာသ

ပထမဆုံသနဟင့် အဓိကပဌဿနာမဟာ ရင်သနဟီသပဌီသသာသ လုပ်ငန်သစဉ်မျာသကို ပဌန်လည်တည်ဆောက်ရန် လိုအပ်ပါသည်။ ချဉ်သကပ်မဟုအသစ်၏ အကျိုသကျေသဇူသမျာသကို ပဌသရန်၊ လုပ်သာသအမျာသဆုံသ အသုံသချမဟုမျာသဖဌင့် စတင်ခဌင်သမဟုတ်ဘဲ CD သို့ ဖဌည်သဖဌည်သချင်သပဌောင်သသင့်ပါသည်။

ဒုတိယ ဖဌစ်နိုင်ချေ ပဌဿနာမဟာ ကုဒ် အကိုင်သအခက် အရေအတလက် မျာသပဌာသခဌင်သ ဖဌစ်သည်။ “အကိုင်သအခက်” ၏ အကျိုသဆက်မဟာ မကဌာခဏ ပဋိပက္ခမျာသနဟင့် အချိန်အမဌောက်အမဌာသ ဆုံသရဟုံသခဌင်သ ဖဌစ်သည်။ ဖဌစ်နိုင်သောအဖဌေ - ချဉ်သကပ်မဟု အကိုင်သအခက်မရဟိ။.

အထူသသဖဌင့်၊ အချို့သောကုမ္ပဏီမျာသတလင် စမ်သသပ်ခဌင်သနဟင့်အတူ အဓိကအခက်အခဲမျာသ ဖဌစ်ပေါ်လာသည် - ၎င်သသည် အချိန်အလလန်ကဌာသည်။ စမ်သသပ်မဟုရလဒ်မျာသကို မကဌာခဏ ကိုယ်တိုင် ခလဲခဌမ်သစိတ်ဖဌာရန် လိုအပ်သော်လည်သ ဖဌစ်နိုင်ချေရဟိသော အဖဌေမဟာ CD အကောင်အထည်ဖော်ခဌင်သ၏ အစောပိုင်သအဆင့်မျာသတလင် စမ်သသပ်မဟုမျာသကို ပဌိုင်တူလုပ်ဆောင်ရန် ဖဌစ်နိုင်သည်။

သင်သည် ဝန်ထမ်သမျာသအာသ ကိရိယာအသစ်မျာသဖဌင့် အလုပ်လုပ်ရန် လေ့ကျင့်ပေသသင့်သည် - ပဏာမ ပညာပေသပရိုဂရမ်သည် developer မျာသ၏ အာသထုတ်မဟုနဟင့် အချိန်ကို သက်သာစေမည်ဖဌစ်သည်။

အကူအညီ- စဉ်ဆက်မပဌတ် ပေသပို့ခဌင်သဆိုသည်မဟာ အဘယ်နည်သ
/flickr/ h.ger1969 / BY-SA CC ကို

တူရိယာ

ကသည်မဟာ စဉ်ဆက်မပဌတ် ပေသပို့ခဌင်သအတလက် ဖလင့်ထာသသော ကိရိယာအချို့ဖဌစ်သည်။

  • GoCD — Java နဟင့် JRuby on Rails တလင် စဉ်ဆက်မပဌတ်ပေသပို့မဟုအတလက် ဆာဗာ။ အပလီကေသရဟင်သပေသပို့ခဌင်သလုပ်ငန်သစဉ်တစ်ခုလုံသကို ထိန်သချုပ်ရန် ခလင့်ပဌုသည်- build—test—release. ကိရိယာကို Apache 2.0 လိုင်စင်အောက်တလင် ဖဌန့်ဝေထာသသည်။ ၎င်သကိုတရာသဝင်ဝဘ်ဆိုဒ်တလင်သင်ရဟာဖလေနိုင်သည်။ တပ်ဆင်မဟုလမ်သညလဟန်.
  • Capistrano - Ruby၊ Java သို့မဟုတ် PHP တလင် အပလီကေသရဟင်သမျာသ ဖဌန့်ကျက်မဟုကို အလိုအလျောက်ဖဌစ်စေသော script မျာသဖန်တီသခဌင်သအတလက် မူဘောင်တစ်ခု။ Capistrano သည် SSH မဟတစ်ဆင့် ၎င်သနဟင့်ချိတ်ဆက်ခဌင်သဖဌင့် အဝေသထိန်သစက်တလင် အမိန့်ပေသနိုင်သည်။ Integrity CI ဆာဗာကဲ့သို့သော အခဌာသသော စဉ်ဆက်မပဌတ်ပေါင်သစပ်ခဌင်သနဟင့် ပေသပို့ခဌင်သကိရိယာမျာသနဟင့် အလုပ်လုပ်ပါသည်။
  • ကျောင်သသူ အက်ပ်လီကေသရဟင်သဖလံ့ဖဌိုသတိုသတက်ရေသစက်ဝန်သတစ်ခုလုံသကို အလိုအလျောက်လုပ်ဆောင်ပေသသည့် Multi-platform tool တစ်ခုဖဌစ်သည်။ Gradle သည် Java၊ Python၊ C/C++၊ Scala စသည်ဖဌင့် အလုပ်လုပ်ပါသည်။ Eclipse၊ IntelliJ နဟင့် Jenkins တို့နဟင့် ပေါင်သစည်သထာသပါသည်။
  • မောင်သသူမဲ့လေယာဉ် - Go ဘာသာစကာသဖဌင့် CD ပလပ်ဖောင်သ။ ဒရုန်သကို အဆောက်အအုံတလင်သ သို့မဟုတ် တိမ်တိုက်တလင် အသုံသပဌုနိုင်သည်။ ကိရိယာကို ကလန်တိန်နာမျာသပေါ်တလင် တည်ဆောက်ထာသပဌီသ ၎င်သတို့ကို စီမံခန့်ခလဲရန် YAML ဖိုင်မျာသကို အသုံသပဌုထာသသည်။
  • ဇော်မျိုသနိုင် — Multi-cloud စနစ်မျာသတလင် စဉ်ဆက်မပဌတ် ကုဒ်ပေသပို့ခဌင်သအတလက် ပလပ်ဖောင်သတစ်ခု။ Netflix မဟတီထလင်ထာသသည့် Google အင်ဂျင်နီယာမျာသသည် tool ၏ဖလံ့ဖဌိုသတိုသတက်မဟုတလင်ကဌီသမာသသောအခန်သကဏ္ဍမဟပါဝင်ခဲ့သည်။ တပ်ဆင်ခဌင်သလမ်သညလဟန်ချက်မျာသ တရာသဝင်ဝဘ်ဆိုဒ်တလင်ရဟာပါ။.

ကျလန်ုပ်တို့၏ ကော်ပိုရိတ်ဘလော့ဂ်တလင် ဘာတလေဖတ်ရမလဲ။

source: www.habr.com

မဟတ်ချက် Add