پخوا موږ د دوامداره ادغام (CI) په اړه. راځئ چې دوامداره تحویلۍ ته دوام ورکړو. دا د سافټویر پراختیا میتودونو سیټ دی. دا مرسته کوي ډاډ ترلاسه کړئ چې ستاسو کوډ د ځای پرځای کولو لپاره چمتو دی.
/Pixabay/ /
История
جمله دوامداره تحویلي بیرته لیدل کیدی شي د 2001 څخه د لومړني اصولو لیست په پیل کې: "لومړیتوب د تازه سافټویر دوامداره تحویل له لارې د پیرودونکو ستونزې حل کول دي."
په 2010 کې، Jez Humble او David Farley خوشې شول د دوامداره تحویلي لخوا. د لیکوالانو په وینا، CD طریقه بشپړوي او تاسو ته اجازه درکوي د پلي کولو لپاره د کوډ چمتو کول ساده کړئ.
د کتاب د خپریدو وروسته، دا طریقه د شهرت ترلاسه کولو پیل وکړ او یوازې په څو کلونو کې دا تقریبا په نړیواله کچه منل شوی. په وینا د په 600 کې د 2014 څخه زیاتو پراختیا کونکو او د معلوماتي ټکنالوجۍ مدیرانو ترمنځ ترسره شوي، 97٪ تخنیکي مدیران او 84٪ پروګرامونکي د دوامداره تحویلۍ سره آشنا وو.
اوس دا طریقه یو له خورا مشهور څخه پاتې کیږي. د 2018 مطالعې له مخې چې د IT ټولنې DevOps او جینکنز ټولنه پکې شامله ده، دا له زرو څخه زیاتو ځواب ورکوونکو نیمایي سروې شوې.
دوامداره تحویلي څنګه کار کوي؟
د CD اساس د ځای پرځای کولو لپاره د کوډ چمتووالی دی. د دې کار د ترسره کولو لپاره، د خوشې کولو لپاره د سافټویر چمتو کولو پروسې اتومات کارول کیږي. دا باید په مختلفو پرمختیایي چاپیریالونو کې معیاري وي، کوم چې به په چټکۍ سره د ضعیف ټکي موندلو او د دوی غوره کولو کې مرسته وکړي. د مثال په توګه، د ازموینې چټکتیا.
د دوامداره تحویلي پروسې یوه بیلګه داسې ښکاري:

که چیرې د دوامداره ادغام چلند د لومړیو دوه مرحلو اتومات کولو مسؤل وي ، نو دوامداره تحویل د راتلونکو دوه لپاره مسؤل دی. د پروسې ثبات د نورو شیانو په مینځ کې د سیسټمونو لخوا تضمین شوی . دوی په زیربناوو، ډیټابیسونو او انحصارونو کې بدلونونه څاري. ګمارنه پخپله اتومات یا په لاسي ډول ترسره کیدی شي.
لاندې اړتیاوې په پروسه کې پلي کیږي:
- د تولید چاپیریال ته د ننوتلو لپاره د چمتووالي په اړه د معلوماتو شتون او د سمدستي خوشې کیدو لپاره چمتووالی (د CD وسیلې کوډ ازموي او دا ممکنه کوي چې په خوشې کې د بدلونونو اغیز ارزونه وکړي).
- د وروستي محصول لپاره ټول مسؤلیت. د محصول ټیم - مدیران، پراختیا کونکي، ازموینه کونکي - د پایلې په اړه فکر کوي، او نه یوازې د دوی د مسؤولیت په اړه (نتیجه یو کاري خوشې کول دي چې د محصول کاروونکو لپاره شتون لري).
په CDs کې دا معمولا کارول کیږي ، او د پیرودونکو نظرونو راټولولو لپاره - اصل . یو نوی خصوصیت لومړی د کاروونکو یوې کوچنۍ برخې ته خپور شوی - د محصول سره د متقابل عمل تجربه د هغه نیمګړتیاو او بګونو موندلو کې مرسته کوي چې د داخلي ازموینې پرمهال نه و لیدل شوي.
ګټه یې څه ده
دوامداره تحویلي د کوډ پلي کولو ساده کولو کې مرسته کوي ، کوم چې په محصول باندې مثبت اغیزه لري او د کارمندانو سوځیدلو احتمال کموي. په نهایت کې، دا ټول پرمختیایي لګښتونه کموي. د مثال په توګه، CD د HP ټیمونو څخه یو سره مرسته وکړه دا ډول لګښتونه 40٪.
برسېره پردې، د 2016 مطالعې سره سم (پاڼه 28 ) - هغه شرکتونه چې CD یې پلي کړي د معلوماتو امنیت ستونزې د هغو کسانو په پرتله 50٪ ګړندي حل کوي چې دا طریقه نه کاروي. تر یوې اندازې پورې، دا توپیر د پروسې د اتوماتیک وسیلو د فعالیت لخوا تشریح کیدی شي.
بل پلس د خوشې کیدو سرعت دی. په فنلند پرمختیایی سټوډیو کې دوامداره تحویلي د کوډ مجلس سرعت 25٪ زیات کړئ.
احتمالي ستونزې
لومړۍ او اصلي ستونزه د پیژندل شویو پروسو بیا جوړولو ته اړتیا ده. د نوې تګلارې د ګټو ښودلو لپاره، دا په تدریجي ډول CD ته د بدلولو ارزښت لري، نه د ډیرو کارګرانو غوښتنلیکونو سره پیل کول.
دوهم احتمالي ستونزه د کوډ څانګو لوی شمیر دی. د "څانګو" پایله په مکرر ډول شخړې او د ډیر وخت ضایع کول دي. ممکنه حل لاره .
په ځانګړې توګه، په ځینو شرکتونو کې اصلي ستونزې د ازموینې سره راځي - دا ډیر وخت نیسي. د ازموینې پایلې اکثرا باید په لاسي ډول تحلیل شي، مګر یو احتمالي حل ممکن د CD پلي کولو په لومړیو مرحلو کې ازموینې موازي کول وي.
تاسو باید د نویو وسیلو سره کار کولو لپاره کارمندان هم وروزلئ - یو لومړنی تعلیمي برنامه به د پراختیا کونکو هڅې او وخت خوندي کړي.

/فلکر/ /
توکي
دلته د دوامداره تحویلۍ لپاره یو څو خلاص اوزار دي:
- - په ریلونو کې جاوا او JRuby کې د دوامداره تحویل لپاره سرور. تاسو ته اجازه درکوي د غوښتنلیک سپارلو ټوله پروسه کنټرول کړئ: جوړول — ازموینه — خوشې کول. وسیله د اپاچی 2.0 جواز لاندې ویشل شوې. تاسو کولی شئ دا په رسمي ویب پاڼه کې ومومئ .
- - د سکریپټونو رامینځته کولو لپاره چوکاټ چې په روبي ، جاوا یا پی ایچ پی کې د غوښتنلیکونو پلي کول اتومات کوي. Capistrano د دې وړتیا لري چې د SSH له لارې دې سره وصل کولو سره په ریموټ ماشین کې قوماندې اجرا کړي. د نورو دوامداره ادغام او تحویلي وسیلو سره کار کوي ، لکه د بشپړتیا CI سرور.
- یو څو پلیټ فارم وسیله ده چې د غوښتنلیک پراختیا ټوله دوره اتومات کوي. Gradle د جاوا، Python، C/C++، Scala او داسې نورو سره کار کوي. د Eclipse، IntelliJ او Jenkins سره یوځای کول شتون لري.
- - په ګو ژبه کې د سي ډي پلیټ فارم. ډرون کولی شي په ځای یا بادل کې ځای په ځای شي. وسیله د کانټینرونو په سر کې جوړه شوې او د دوی اداره کولو لپاره د YAML فایلونه کاروي.
- - په څو کلاوډ سیسټمونو کې د دوامداره کوډ تحویلۍ پلیټ فارم. د Netflix لخوا رامینځته شوی، د ګوګل انجنیرانو د وسیلې په پراختیا کې لوی رول لوبولی. د نصبولو لارښوونې .
زموږ په کارپوریټ بلاګ کې څه لوستل:
سرچینه: www.habr.com
