අපි GitLab හි මෘදුකාංග පැච් මුදා හරින ආකාරය

අපි GitLab හි මෘදුකාංග පැච් මුදා හරින ආකාරය

GitLab හිදී, අපි මෘදුකාංග නිවැරදි කිරීම් ක්‍රම දෙකකින් සකසමු: අතින් සහ ස්වයංක්‍රීයව. gitlab.com වෙත ස්වයංක්‍රීය යෙදවීම හරහා වැදගත් යාවත්කාලීන නිර්මාණය කිරීම සහ බෙදා හැරීම නිකුත් කිරීමේ කළමනාකරුගේ කාර්යය මෙන්ම පරිශීලකයින්ට ඔවුන්ගේම ස්ථාපනයන් සමඟ වැඩ කිරීමට පැච් ගැන දැන ගැනීමට කියවන්න.

ඔබගේ ස්මාර්ට් ඔරලෝසුවේ සිහිකැඳවීමක් සැකසීමට මම නිර්දේශ කරමි: සෑම මසකම 22 වන දින, GitLab සමඟ ඔවුන්ගේ පහසුකම්වල වැඩ කරන පරිශීලකයින්ට අපගේ නිෂ්පාදනයේ වත්මන් අනුවාදයට යාවත්කාල කිරීම් දැකිය හැක. මාසික නිකුතුවේ නව විශේෂාංග, පවතින ඒවායේ වර්ධනයන් අඩංගු වන අතර බොහෝ විට මෙවලම් හෝ ඒකාබද්ධ කිරීම් සඳහා වන ප්‍රජා ඉල්ලීම්වල අවසාන ප්‍රතිඵලය පෙන්වයි.

එහෙත්, ප්රායෝගිකව පෙන්නුම් කරන පරිදි, මෘදුකාංග සංවර්ධනය අඩුපාඩු නොමැතිව කලාතුරකිනි. දෝෂයක් හෝ ආරක්ෂක අවදානමක් අනාවරණය වූ විට, බෙදා හැරීමේ කණ්ඩායමේ මුදා හැරීමේ කළමනාකරු අපගේ පරිශීලකයින් සඳහා ඔවුන්ගේ ස්ථාපනයන් සමඟ පැච් එකක් නිර්මාණය කරයි. සීඩී ක්‍රියාවලියේදී Gitlab.com යාවත්කාලීන වේ. GitLab හි CD විශේෂාංගය සමඟ ව්‍යාකූල වීම වළක්වා ගැනීම සඳහා අපි මෙම CD ක්‍රියාවලිය ස්වයංක්‍රීයව යෙදවීම ලෙස හඳුන්වමු. මෙම ක්‍රියාවලියට පරිශීලකයින්, පාරිභෝගිකයින් සහ අපගේ අභ්‍යන්තර සංවර්ධන කණ්ඩායම විසින් ඉදිරිපත් කරන ලද ඇදීමේ ඉල්ලීම් වලින් යෝජනා ඇතුළත් කළ හැක, එවිට පැච් මුදා හැරීමේ නීරස ගැටළුව විසඳීම ඉතා වෙනස් ආකාර දෙකකින් විසඳනු ලැබේ.

«සංවර්ධකයින් විසින් සාදන ලද සෑම දෙයක්ම GitLab.com වෙත පෙරළීමට පෙර සෑම දිනකම සියලු පරිසරයන් වෙත යොදවා ඇති බව අපි සහතික කරමු.", පැහැදිලි කරයි Marin Jankovki, ජ්‍යෙෂ්ඨ තාක්ෂණික කළමනාකරු, යටිතල පහසුකම් දෙපාර්තමේන්තුව. "ඔබගේ ස්ථාපනයන් සඳහා නිකුත් කිරීම් gitlab.com යෙදවීම් සඳහා ස්නැප්ෂොට් ලෙස සිතන්න, ඒ සඳහා අපි පැකේජයක් සෑදීමට වෙනම පියවර එකතු කර ඇති අතර එමඟින් අපගේ පරිශීලකයින්ට ඔවුන්ගේ ස්ථාපනයන් ස්ථාපනය කිරීමට එය භාවිතා කළ හැකිය.".

දෝෂය හෝ අවදානම කුමක් වුවත්, gitlab.com පාරිභෝගිකයින්ට ඒවා ප්‍රකාශයට පත් කිරීමෙන් කෙටි කලකින් නිවැරදි කිරීම් ලැබෙනු ඇත, එය ස්වයංක්‍රීය CD ක්‍රියාවලියේ ප්‍රතිලාභයකි. තමන්ගේම ස්ථාපනයන් සහිත පරිශීලකයින් සඳහා වන පැච්, නිකුතු කළමණාකරු විසින් වෙනම සකස් කිරීම අවශ්‍ය වේ.

බෙදා හැරීම් කණ්ඩායම අඩු කිරීමට නිකුතු සෑදීමට සම්බන්ධ බොහෝ ක්‍රියාවලීන් ස්වයංක්‍රීය කිරීමට වෙහෙස මහන්සි වී වැඩ කරයි MTTP (නිෂ්පාදනයට මධ්‍යන්‍ය කාලය, එනම් නිෂ්පාදනය සඳහා වැය කරන කාලය), සංවර්ධකයෙකු විසින් ඒකාබද්ධ කිරීමේ ඉල්ලීමක් සැකසීමේ සිට gitlab.com හි යෙදවීම දක්වා වූ කාල සීමාව.

«බෙදා හැරීමේ කණ්ඩායමේ ඉලක්කය වන්නේ අපට සමාගමක් ලෙස වේගයෙන් ගමන් කළ හැකි බවට වග බලා ගැනීමයි, නැතහොත් අවම වශයෙන් බෙදා හැරීමේ පුද්ගලයින් වේගයෙන් වැඩ කිරීමට සැලැස්වීමයි.?, Marin පවසයි.

gitlab.com පාරිභෝගිකයින් සහ ඔවුන්ගේ ස්ථාපනයන් භාවිතා කරන්නන් යන දෙදෙනාම චක්‍ර කාලය අඩු කිරීමට සහ යෙදවීම් වේගවත් කිරීමට බෙදාහැරීමේ කණ්ඩායමේ ප්‍රයත්නයන්ගෙන් ප්‍රතිලාභ ලබයි. මෙම ක්‍රම දෙකේ සමානකම් සහ වෙනස්කම් මෙම ලිපියෙන් අපි පැහැදිලි කරමු. ගැටලු, සහ අපගේ බෙදාහැරීමේ කණ්ඩායම ඔවුන්ගේ පහසුකම් මත වැඩ කරන පරිශීලකයින් සඳහා පැච් සකස් කරන ආකාරය මෙන්ම ස්වයංක්‍රීය යෙදවීම භාවිතයෙන් gitlab.com යාවත්කාලීන බව සහතික කරන ආකාරය ද අපි විස්තර කරන්නෙමු.

මුදා හැරීමේ කළමනාකරු කරන්නේ කුමක්ද?

කණ්ඩායම් සාමාජිකයින් මාසිකව මුදා හැරීමේ කළමනාකරුගේ භූමිකාව මාරු කරන්න නිකුතු අතර ඇති විය හැකි පැච් සහ ආරක්ෂක නිකුතු ඇතුළුව, ඔවුන්ගේ පහසුකම්වල සිටින පරිශීලකයින්ට අපගේ නිකුතු. සමාගම ස්වයංක්‍රීය, අඛණ්ඩ යෙදවීමකට මාරුවීම සඳහා ද ඔවුන් වගකිව යුතුය.

ස්වයං-ස්ථාපන නිකුතු සහ gitlab.com නිකුතු සමාන කාර්ය ප්‍රවාහයන් භාවිතා කරන නමුත් විවිධ කාලවලදී ක්‍රියාත්මක වේ, Marin පැහැදිලි කරයි.

ප්‍රථමයෙන් සහ ප්‍රධාන වශයෙන්, නිකුතු කළමණාකරු, මුදා හැරීමේ වර්ගය කුමක් වුවත්, GitLab යෙදුම gitlab.com හි දියත් කළ මොහොතේ සිටම ලබා ගත හැකි බව සහ ආරක්ෂිත බව සහතික කරයි, එම ගැටළු පාරිභෝගිකයින්ගේ යටිතල පහසුකම් තුළ අවසන් නොවන බව සහතික කිරීම ඇතුළුව. තමන්ගේම හැකියාවන්.

GitLab හි දෝෂයක් හෝ අවදානමක් නිරාකරණය කර ඇති බව සලකුණු කළ පසු, නිකුත් කළමණාකරු විසින් එය ඔවුන්ගේ ස්ථාපනයන් සහිත පරිශීලකයින් සඳහා වන පැච් හෝ ආරක්ෂක යාවත්කාලීන කිරීම්වලට ඇතුළත් වන බව ඇගයීමට ලක් කළ යුතුය. දෝෂයක් හෝ අවදානමක් යාවත්කාලීන කිරීමට සුදුසු බව ඔහු තීරණය කරන්නේ නම්, සූදානම් කිරීමේ කටයුතු ආරම්භ වේ.

නිකුතු කළමණාකරු විසින් නිවැරදි කිරීමක් පිළියෙළ කරන්නේද, නැතහොත් එය යෙදවිය යුත්තේ කවදාද යන්න තීරණය කළ යුතුය - මෙය තත්ත්වයෙහි සන්දර්භය මත බෙහෙවින් රඳා පවතී, "මේ අතර, මිනිසුන් මෙන් සන්දර්භය කළමනාකරණය කිරීමේදී යන්ත්‍ර දක්‍ෂ නොවේ"මරින් පවසයි.

ඒ සියල්ල නිවැරදි කිරීම් ගැන ය

පැච් යනු කුමක්ද සහ අපට ඒවා අවශ්‍ය වන්නේ ඇයි?

මුදා හැරීමේ කළමනාකරු දෝෂයේ බරපතලකම මත පදනම්ව නිවැරදි කිරීමක් නිකුත් කළ යුතුද යන්න තීරණය කරයි.

ඒවායේ බරපතලකම අනුව දෝෂ වෙනස් වේ. එබැවින් S4 හෝ S3 දෝෂ පික්සල් හෝ අයිකන විස්ථාපනය වැනි ශෛලීය විය හැක. මෙය අඩු වැදගත්කමක් නැත, නමුත් කිසිවෙකුගේ කාර්ය ප්‍රවාහයට සැලකිය යුතු බලපෑමක් නැත, එයින් අදහස් කරන්නේ එවැනි S3 හෝ S4 දෝෂ සඳහා විසඳුමක් නිර්මාණය වීමේ සම්භාවිතාව කුඩා බව Marin පැහැදිලි කරයි.

කෙසේ වෙතත්, දුර්වලතා S1 හෝ S2 යන්නෙන් අදහස් කරන්නේ පරිශීලකයා නවතම අනුවාදයට යාවත්කාලීන නොකළ යුතු බවයි, නැතහොත් පරිශීලකයාගේ කාර්ය ප්‍රවාහයට බලපාන සැලකිය යුතු දෝෂයක් තිබේ. ඒවා ට්‍රැකර් තුළ ඇතුළත් කර ඇත්නම්, බොහෝ පරිශීලකයින් ඒවා හමු වී ඇත, එබැවින් මුදා හැරීමේ කළමනාකරු වහාම විසඳුමක් සකස් කිරීමට පටන් ගනී.

S1 හෝ S2 දුර්වලතා සඳහා පැච් එකක් සූදානම් වූ පසු, මුදා හැරීමේ කළමනාකරු පැච් එක මුදා හැරීමට පටන් ගනී.

උදාහරණයක් ලෙස, GitLab 12.10.1 පැච් නිර්මාණය කරන ලද්දේ අවහිර කිරීමේ ගැටළු කිහිපයක් හඳුනා ගැනීමෙන් පසුව සහ සංවර්ධකයින් විසින් ඒවාට හේතු වූ යටින් පවතින ගැටළුව විසඳා ගැනීමෙන් පසුවය. මුදා හැරීමේ කළමණාකරු විසින් පවරා ඇති බරපතලතා මට්ටම්වල නිරවද්‍යතාවය තක්සේරු කරන ලද අතර, තහවුරු කිරීමෙන් පසුව, අවහිර කිරීමේ ගැටළු අනාවරණය වීමෙන් පසු පැය XNUMX ක් ඇතුළත සූදානම් වූ නිවැරදි කිරීමක් නිකුත් කිරීමේ ක්‍රියාවලිය දියත් කරන ලදී.

S4, S3 සහ S2 විශාල ප්‍රමාණයක් සමුච්චය වූ විට, නිකුතු කළමණාකරු නිවැරදි කිරීමක් නිකුත් කිරීමේ හදිසි අවශ්‍යතාවය තීරණය කිරීමට සන්දර්භය දෙස බලයි, ඒවායින් නිශ්චිත සංඛ්‍යාවක් ළඟා වූ විට, ඒවා සියල්ලම ඒකාබද්ධ කර මුදා හරිනු ලැබේ. පශ්චාත් නිකුතුව නිවැරදි කිරීම් හෝ ආරක්ෂක යාවත්කාලීන කිරීම් බ්ලොග් සටහන් වල සාරාංශ කර ඇත.

නිකුතු කළමණාකරුවෙකු පැච් සාදන ආකාරය

අපි පැච් ජනනය කිරීමට GitLab CI සහ අපගේ ChatOps වැනි අනෙකුත් විශේෂාංග භාවිතා කරමු. අපගේ අභ්‍යන්තර නාලිකාවේ ChatOps කණ්ඩායම සක්‍රිය කිරීමෙන් නිකුතු කළමනාකරු නිකුතුව මුදා හැරීම ආරම්භ කරයි #releases ස්ලැක්හි.

/chatops run release prepare 12.10.1

විවිධ සිදුවීම් අවුලුවාලීමට ChatOps Slack තුළ ක්‍රියා කරයි, පසුව ඒවා GitLab මගින් සකසනු ලැබේ. උදාහරණයක් ලෙස, පැච් මුදා හැරීම සඳහා විවිධ දේවල් ස්වයංක්‍රීය කිරීමට බෙදාහැරීමේ කණ්ඩායම ChatOps පිහිටුවා ඇත.

මුදා හැරීමේ කළමනාකරු Slack හි ChatOps කණ්ඩායම ආරම්භ කළ පසු, CICD භාවිතයෙන් GitLab හි ඉතිරි වැඩ ස්වයංක්‍රීයව සිදු වේ. මුදා හැරීමේ කළමනාකරු විසින් ක්‍රියාවලියේ ප්‍රධාන පියවර කිහිපයක් සක්‍රිය කරන බැවින් මුදා හැරීමේ ක්‍රියාවලියේදී Slack සහ GitLab හි ChatOps අතර ද්වි-මාර්ග සන්නිවේදනයක් ඇත.

පහත වීඩියෝව GitLab සඳහා පැච් එකක් සකස් කිරීමේ තාක්ෂණික ක්‍රියාවලිය පෙන්වයි.

gitlab.com හි ස්වයංක්‍රීය යෙදවීම ක්‍රියා කරන ආකාරය

gitlab.com යාවත්කාලීන කිරීමට භාවිතා කරන ක්‍රියාවලිය සහ මෙවලම් පැච් සෑදීමට භාවිතා කරන ඒවාට සමාන වේ. gitlab.com යාවත්කාලීන කිරීමට නිකුතු කළමණාකරුගේ දෘෂ්ටි කෝණයෙන් අඩු අතින් වැඩ කිරීම අවශ්‍ය වේ.

ChatOps භාවිතයෙන් යෙදවීම් ධාවනය කරනවා වෙනුවට, අපි CI විශේෂාංග භාවිතා කරමු උදා. නියමිත නල මාර්ග, මුදා හැරීමේ කළමනාකරුට අවශ්‍ය වේලාවට සිදු කිරීමට නියමිත ක්‍රියා උපලේඛනගත කළ හැක. හස්තීය ක්‍රියාවලියක් වෙනුවට, GitLab ව්‍යාපෘති සඳහා සිදු කරන ලද නව වෙනස්කම් බාගත කර, ඒවා ඇසුරුම් කර, යෙදවීම කාලසටහන් කරන, සහ ස්වයංක්‍රීයව පරීක්ෂණ, QA සහ අනෙකුත් අවශ්‍ය පියවර ක්‍රියාත්මක කරන පැයකට වරක් වරින් වර ක්‍රියාත්මක වන නල මාර්ගයක් ඇත.

“එබැවින් අපට gitlab.com ට පෙර විවිධ පරිසරයන්හි යෙදවීම් රාශියක් ක්‍රියාත්මක වන අතර, එම පරිසරයන් හොඳ තත්ත්වයේ සහ පරීක්ෂණ හොඳ ප්‍රතිඵල පෙන්නුම් කළ පසු, නිකුතු කළමනාකරු gitlab.com යෙදවීමේ ක්‍රියාවන් ආරම්භ කරයි,” Marin පවසයි.

gitlab.com යාවත්කාල කිරීම් සඳහා සහය දැක්වීම සඳහා CICD තාක්‍ෂණය මඟින් සම්පූර්ණ ක්‍රියාවලිය ස්වයංක්‍රීය කරයි, නිකුතු කළමණාකරු විසින් gitlab.com වෙත නිෂ්පාදන පරිසරය යෙදවීම අතින් දියත් කළ යුතුය.

Marin පහත වීඩියෝවෙන් gitlab.com යාවත්කාලීන ක්‍රියාවලිය ගැන විස්තර කරයි.

බෙදා හැරීමේ කණ්ඩායම වෙන මොනවද කරන්නේ?

gitlab.com යාවත්කාලීන ක්‍රියාවලීන් සහ පාරිභෝගිකයින් වෙත පැච් මුදා හැරීම අතර ඇති ප්‍රධාන වෙනස නම්, අවසාන ක්‍රියාවලිය සඳහා නිකුත් කළමණාකරුගෙන් වැඩි කාලයක් සහ වැඩි අතින් වැඩ කිරීම අවශ්‍ය වීමයි.

"වාර්තා කරන ලද ගැටළු, මෙවලම් ගැටළු සහ තනි පැච් එකක් නිකුත් කිරීමේදී සැලකිල්ලට ගත යුතු බොහෝ සූක්ෂ්මතා ඇති නිසා අපි සමහර විට පාරිභෝගිකයින්ට ඔවුන්ගේ ස්ථාපනයන් සමඟ පැච් නිකුත් කිරීම ප්‍රමාද කරමු" යනුවෙන් Marin පවසයි.

බෙදා හැරීමේ කණ්ඩායමේ කෙටි කාලීන ඉලක්කයක් වන්නේ නිකුතුව වේගවත් කිරීම සඳහා නිකුතු කළමණාකරුගේ අතින් සිදුකරන වැඩ ප්‍රමාණය අඩු කිරීමයි. මුදා හැරීමේ ක්‍රියාවලිය සරල කිරීමට, විධිමත් කිරීමට සහ ස්වයංක්‍රීය කිරීමට කණ්ඩායම ක්‍රියා කරයි, එය අඩු බරපතල ගැටළු සඳහා විසඳුම් ලබා ගැනීමට උපකාරී වේ (S3 සහ S4, ආසන්න වශයෙන් පරිවර්තකයා) වේගය කෙරෙහි අවධානය යොමු කිරීම ප්‍රධාන කාර්ය සාධන දර්ශකයකි: MTTP අඩු කිරීම අවශ්‍ය වේ - ඒකාබද්ධ ඉල්ලීමක් ලැබීමේ සිට gitlab.com වෙත ප්‍රතිඵලය යෙදවීම දක්වා කාලය - වත්මන් පැය 50 සිට පැය 8 දක්වා.

බෙදා හැරීමේ කණ්ඩායම ද gitlab.com Kubernetes පදනම් වූ යටිතල පහසුකම් වෙත සංක්‍රමණය කිරීමට කටයුතු කරමින් සිටී.

සංස්කාරක එන්.බී.: ඔබ දැනටමත් Kubernetes තාක්‍ෂණය ගැන අසා ඇත්නම් (සහ ඔබ සතුව ඇති බවට මට සැකයක් නැත), නමුත් එය තවමත් ඔබේ දෑතින් ස්පර්ශ කර නොමැති නම්, මාර්ගගත දැඩි පා courses මාලා සඳහා සහභාගී වීමට මම නිර්දේශ කරමි කුබර්නෙට්ස් පදනම, සැප්තැම්බර් 28-30 පැවැත්වෙන අතර, සහ කුබර්නෙටස් මෙගා, ඔක්තෝබර් 14-16 පැවැත්වෙනු ඇත. මෙය ඔබට විශ්වාසයෙන් යුතුව සැරිසැරීමට සහ තාක්ෂණය සමඟ වැඩ කිරීමට ඉඩ සලසයි.

මේවා එකම ඉලක්කය හඹා යන ප්‍රවේශයන් දෙකකි: gitlab.com සඳහා සහ ඔවුන්ගේ පහසුකම්වල සිටින ගනුදෙනුකරුවන් සඳහා යාවත්කාලීන කිරීම් වේගයෙන් බෙදා හැරීම.

අප සඳහා කිසියම් අදහසක් හෝ නිර්දේශ තිබේද?

GitLab වෙත දායක වීමට සියලු දෙනා සාදරයෙන් පිළිගනිමු, අපි අපගේ පාඨකයන්ගෙන් ප්‍රතිපෝෂණ සාදරයෙන් පිළිගනිමු. අපගේ බෙදා හැරීමේ කණ්ඩායම සඳහා ඔබට කිසියම් අදහසක් තිබේ නම්, පසුබට නොවන්න ඉල්ලීමක් සාදන්න දැනුම්දීමක් සහිතව team: Delivery.

මූලාශ්රය: www.habr.com

අදහස් එක් කරන්න