Bii a ṣe tu awọn abulẹ sọfitiwia silẹ ni GitLab

Bii a ṣe tu awọn abulẹ sọfitiwia silẹ ni GitLab

Ni GitLab, a ṣe ilana awọn atunṣe sọfitiwia ni awọn ọna meji: pẹlu ọwọ ati laifọwọyi. Ka siwaju lati kọ ẹkọ nipa iṣẹ oluṣakoso itusilẹ ti ṣiṣẹda ati jiṣẹ awọn imudojuiwọn pataki nipasẹ imuṣiṣẹ adaṣe si gitlab.com, ati awọn abulẹ fun awọn olumulo lati ṣiṣẹ pẹlu awọn fifi sori ẹrọ tiwọn.

Mo ṣeduro ṣeto olurannileti lori smartwatch rẹ: ni gbogbo oṣu ni ọjọ 22nd, awọn olumulo ti n ṣiṣẹ pẹlu GitLab ni awọn ohun elo wọn le rii awọn imudojuiwọn si ẹya lọwọlọwọ ti ọja wa. Itusilẹ oṣooṣu ni awọn ẹya tuntun, awọn idagbasoke ti awọn ti o wa, ati nigbagbogbo ṣafihan abajade ipari ti awọn ibeere agbegbe fun ohun elo irinṣẹ tabi idapọ.

Ṣugbọn, gẹgẹbi iṣe ṣe fihan, idagbasoke sọfitiwia ṣọwọn laisi awọn abawọn. Nigbati a ba ṣe awari kokoro tabi ailagbara aabo, oluṣakoso itusilẹ ninu ẹgbẹ ifijiṣẹ ṣẹda alemo kan fun awọn olumulo wa pẹlu awọn fifi sori ẹrọ wọn. Gitlab.com ti ni imudojuiwọn lakoko ilana CD. A pe ilana CD yii ni imuṣiṣẹ laifọwọyi lati yago fun idamu pẹlu ẹya CD ni GitLab. Ilana yii le ṣafikun awọn didaba lati awọn ibeere fifa silẹ nipasẹ awọn olumulo, awọn alabara, ati ẹgbẹ idagbasoke inu wa, nitorinaa ipinnu iṣoro alaidun ti idasilẹ awọn abulẹ jẹ ipinnu ni awọn ọna oriṣiriṣi meji pupọ.

«A rii daju pe ohun gbogbo ti awọn olupilẹṣẹ ṣe ni a gbe lọ si gbogbo awọn agbegbe ni gbogbo ọjọ ṣaaju yiyi jade si GitLab.com", salaye Marin Jankovki, Alakoso Imọ-ẹrọ giga, Ẹka Amayederun. "Ronu ti awọn idasilẹ fun awọn fifi sori ẹrọ rẹ bi awọn fọto fun awọn imuṣiṣẹ gitlab.com, fun eyiti a ti ṣafikun awọn igbesẹ lọtọ lati ṣẹda package ki awọn olumulo wa le lo lati fi sori ẹrọ lori awọn fifi sori ẹrọ wọn.».

Laibikita kokoro tabi ailagbara, awọn alabara gitlab.com yoo gba awọn atunṣe laipẹ lẹhin ti wọn ti tẹjade, eyiti o jẹ anfani ti ilana CD adaṣe. Awọn abulẹ fun awọn olumulo pẹlu awọn fifi sori ẹrọ tiwọn nilo igbaradi lọtọ nipasẹ oluṣakoso itusilẹ.

Ẹgbẹ ifijiṣẹ n ṣiṣẹ takuntakun lati ṣe adaṣe pupọ julọ awọn ilana ti o wa ninu ṣiṣẹda awọn idasilẹ lati dinku MTTP (tumọ si akoko si iṣelọpọ, ie akoko ti o lo lori iṣelọpọ), akoko akoko lati ṣiṣe ibeere iṣọpọ nipasẹ olupilẹṣẹ kan si imuṣiṣẹ lori gitlab.com.

«Ibi-afẹde ti ẹgbẹ ifijiṣẹ ni lati rii daju pe a le ni iyara bi ile-iṣẹ kan, tabi o kere ju jẹ ki awọn eniyan ifijiṣẹ ṣiṣẹ ni iyara, ọtun?, Marin sọ.

Mejeeji awọn alabara gitlab.com ati awọn olumulo ti awọn fifi sori ẹrọ wọn ni anfani lati awọn akitiyan ẹgbẹ ifijiṣẹ lati dinku awọn akoko gigun ati iyara awọn imuṣiṣẹ. Ninu nkan yii a yoo ṣe alaye awọn ibajọra ati iyatọ laarin awọn ọna meji wọnyi. awọn oran, ati pe a yoo tun ṣe apejuwe bi ẹgbẹ ifijiṣẹ wa ṣe n pese awọn abulẹ fun awọn olumulo ti n ṣiṣẹ lori awọn ohun elo wọn, bakanna bi a ṣe rii daju pe gitlab.com ti wa ni imudojuiwọn nipa lilo imuṣiṣẹ adaṣe.

Kini oluṣakoso itusilẹ ṣe?

Awọn ọmọ ẹgbẹ oṣooṣu gbe ipa ti oluṣakoso itusilẹ awọn idasilẹ wa si awọn olumulo ni awọn ohun elo wọn, pẹlu awọn abulẹ ati awọn idasilẹ aabo ti o le waye laarin awọn idasilẹ. Wọn tun jẹ iduro fun didari iyipada ile-iṣẹ si adaṣe, imuṣiṣẹ lemọlemọfún.

Awọn idasilẹ fifi sori ẹrọ ti ara ẹni ati awọn idasilẹ gitlab.com lo awọn ṣiṣan iṣẹ ṣiṣe ti o jọra ṣugbọn ṣiṣe ni awọn akoko oriṣiriṣi, Marin ṣalaye.

Ni akọkọ ati akọkọ, oluṣakoso itusilẹ, laibikita iru itusilẹ, ṣe idaniloju pe GitLab wa ati ni aabo lati akoko ti a ṣe ifilọlẹ ohun elo lori gitlab.com, pẹlu aridaju pe awọn ọran kanna ko pari ni awọn amayederun ti awọn alabara pẹlu wọn. ti ara awọn agbara.

Ni kete ti kokoro tabi ailagbara ti samisi ni GitLab, oluṣakoso itusilẹ gbọdọ ṣe iṣiro pe yoo wa ninu awọn abulẹ tabi awọn imudojuiwọn aabo fun awọn olumulo pẹlu awọn fifi sori ẹrọ wọn. Ti o ba pinnu pe kokoro tabi ailagbara yẹ imudojuiwọn, iṣẹ igbaradi bẹrẹ.

Oluṣakoso itusilẹ gbọdọ pinnu boya lati mura atunṣe kan, tabi nigba ti yoo gbe lọ - ati pe eyi dale pupọ si ipo ipo naa, "ni enu igba yi, awọn ẹrọ ni o wa ko dara ni ìṣàkóso o tọ bi eniyan"Marin sọ.

O jẹ gbogbo nipa awọn atunṣe

Kini awọn abulẹ ati kilode ti a nilo wọn?

Oluṣakoso itusilẹ pinnu boya lati tu atunṣe kan silẹ da lori bi o ṣe le buruju ti kokoro naa.

Awọn aṣiṣe yatọ si da lori bi wọn ṣe buru to. Nitorina awọn aṣiṣe S4 tabi S3 le jẹ aṣa, gẹgẹbi awọn piksẹli tabi iyipada aami. Eyi kii ṣe pataki diẹ, ṣugbọn ko si ipa pataki lori ṣiṣan iṣẹ ẹnikẹni, eyiti o tumọ si pe o ṣeeṣe pe atunṣe yoo ṣẹda fun iru awọn aṣiṣe S3 tabi S4 jẹ kekere, Marin ṣalaye.

Bibẹẹkọ, awọn ailagbara S1 tabi S2 tumọ si pe olumulo ko yẹ ki o ṣe imudojuiwọn si ẹya tuntun, tabi kokoro pataki kan wa ti o ni ipa lori iṣan-iṣẹ olumulo. Ti wọn ba wa ninu olutọpa, ọpọlọpọ awọn olumulo ti pade wọn, nitorinaa oluṣakoso itusilẹ lẹsẹkẹsẹ bẹrẹ murasilẹ.

Ni kete ti alemo kan fun awọn ailagbara S1 tabi S2 ti ṣetan, oluṣakoso itusilẹ bẹrẹ itusilẹ alemo naa.

Fun apẹẹrẹ, GitLab 12.10.1 patch ni a ṣẹda lẹhin ọpọlọpọ awọn ọran idinamọ ati pe awọn olupilẹṣẹ ṣe atunṣe ọran abẹlẹ ti o fa wọn. Oluṣakoso itusilẹ ṣe ayẹwo deede ti awọn ipele iwuwo ti a yàn, ati lẹhin ijẹrisi, ilana ti itusilẹ atunṣe ti ṣe ifilọlẹ, eyiti o ṣetan laarin awọn wakati XNUMX lẹhin ti awọn iṣoro idinamọ ti ṣe awari.

Nigbati ọpọlọpọ S4, S3 ati S2 ba ṣajọpọ, oluṣakoso itusilẹ n wo agbegbe lati pinnu iyara ti itusilẹ atunṣe, ati nigbati nọmba kan ninu wọn ba de, gbogbo wọn ni idapo ati tu silẹ. Awọn atunṣe itusilẹ lẹhin-itusilẹ tabi awọn imudojuiwọn aabo ni akopọ ninu awọn ifiweranṣẹ bulọọgi.

Bii oluṣakoso itusilẹ ṣe ṣẹda awọn abulẹ

A lo GitLab CI ati awọn ẹya miiran bii ChatOps wa lati ṣe awọn abulẹ. Oluṣakoso itusilẹ nfa itusilẹ ti atunṣe nipa mimuṣiṣẹpọ ẹgbẹ ChatOps lori ikanni inu wa #releases ni Slack.

/chatops run release prepare 12.10.1

ChatOps n ṣiṣẹ laarin Slack lati ṣe okunfa awọn iṣẹlẹ oriṣiriṣi, eyiti a ṣe ilana ati ṣiṣe nipasẹ GitLab. Fun apẹẹrẹ, ẹgbẹ ifijiṣẹ ṣeto ChatOps lati ṣe adaṣe ọpọlọpọ awọn nkan lati tu awọn abulẹ silẹ.

Ni kete ti oluṣakoso itusilẹ bẹrẹ ẹgbẹ ChatOps ni Slack, iyoku iṣẹ naa yoo ṣẹlẹ laifọwọyi ni GitLab nipa lilo CICD. Ibaraẹnisọrọ ọna meji wa laarin ChatOps ni Slack ati GitLab lakoko ilana itusilẹ bi oluṣakoso itusilẹ mu diẹ ninu awọn igbesẹ pataki ṣiṣẹ ninu ilana naa.

Fidio ti o wa ni isalẹ fihan ilana imọ-ẹrọ ti ngbaradi alemo kan fun GitLab.

Bawo ni imuṣiṣẹ aifọwọyi ṣiṣẹ lori gitlab.com

Ilana ati awọn irinṣẹ ti a lo lati ṣe imudojuiwọn gitlab.com jẹ iru awọn ti a lo lati ṣẹda awọn abulẹ. Ṣiṣe imudojuiwọn gitlab.com nilo iṣẹ afọwọṣe ti o dinku lati oju wiwo oluṣakoso itusilẹ.

Dipo ṣiṣe awọn imuṣiṣẹ ni lilo ChatOps, a lo awọn ẹya CI fun apẹẹrẹ. eto pipelines, pẹlu eyiti oluṣakoso itusilẹ le ṣeto awọn iṣe kan lati ṣe ni akoko ti o nilo. Dipo ilana afọwọṣe kan, opo gigun ti epo ti o nṣiṣẹ lorekore lẹẹkan ni wakati kan ti o ṣe igbasilẹ awọn ayipada tuntun ti a ṣe si awọn iṣẹ akanṣe GitLab, ṣajọ wọn ati iṣeto imuṣiṣẹ, ati ṣiṣe idanwo laifọwọyi, QA ati awọn igbesẹ pataki miiran.

“Nitorinaa a ni ọpọlọpọ awọn imuṣiṣẹ ti n ṣiṣẹ ni awọn agbegbe oriṣiriṣi ṣaaju ki o to gitlab.com, ati lẹhin awọn agbegbe wọnyẹn ni apẹrẹ ti o dara ati idanwo fihan awọn abajade to dara, oluṣakoso itusilẹ bẹrẹ awọn iṣẹ imuṣiṣẹ gitlab.com,” Marin sọ.

Imọ-ẹrọ CICD fun atilẹyin awọn imudojuiwọn gitlab.com ṣe adaṣe gbogbo ilana si aaye nibiti oluṣakoso itusilẹ gbọdọ ṣe ifilọlẹ imuṣiṣẹ ti agbegbe iṣelọpọ pẹlu ọwọ si gitlab.com.

Marin lọ sinu alaye nipa ilana imudojuiwọn gitlab.com ninu fidio ni isalẹ.

Kini ohun miiran egbe ifijiṣẹ ṣe?

Iyatọ akọkọ laarin awọn ilana imudojuiwọn gitlab.com ati itusilẹ awọn abulẹ si awọn alabara inu ile ni pe ilana igbehin nilo akoko diẹ sii ati iṣẹ afọwọṣe diẹ sii lati ọdọ oluṣakoso itusilẹ.

Marin sọ pe “Nigbakan a ṣe idaduro idasilẹ awọn abulẹ si awọn alabara pẹlu awọn fifi sori ẹrọ wọn nitori awọn ọran ti o royin, awọn ọran irinṣẹ, ati nitori ọpọlọpọ awọn nuances ti o nilo lati ṣe akiyesi nigbati o ba tu alemo kan,” Marin sọ.

Ọkan ninu awọn ibi-afẹde igba kukuru ti ẹgbẹ ifijiṣẹ ni lati dinku iye iṣẹ afọwọṣe ni apakan ti oluṣakoso itusilẹ lati mu itusilẹ naa yarayara. Ẹgbẹ naa n ṣiṣẹ lati jẹ ki o rọrun, mu ṣiṣẹ, ati adaṣe ilana itusilẹ, eyiti yoo ṣe iranlọwọ lati gba awọn atunṣe si awọn ọran iwuwo kekere (S3 ati S4, isunmọ. onitumọ). Idojukọ lori iyara jẹ afihan iṣẹ ṣiṣe bọtini: o jẹ dandan lati dinku MTTP - akoko lati gbigba ibeere apapọ kan lati mu abajade lọ si gitlab.com - lati awọn wakati 50 lọwọlọwọ si awọn wakati 8.

Ẹgbẹ ifijiṣẹ tun n ṣiṣẹ lori iṣikiri gitlab.com si awọn amayederun orisun Kubernetes.

Olootu n.b.: Ti o ba ti gbọ tẹlẹ nipa imọ-ẹrọ Kubernetes (ati pe Emi ko ni iyemeji pe o ni), ṣugbọn ko ti fi ọwọ kan rẹ pẹlu ọwọ rẹ, Mo ṣeduro kopa ninu awọn iṣẹ ikẹkọ aladanla lori ayelujara. Kubernetes Mimọ, eyi ti yoo waye ni Oṣu Kẹsan 28-30, ati Kubernetes Mega, eyi ti yoo waye ni Oṣu Kẹwa 14-16. Eyi yoo gba ọ laaye lati ni igboya lilö kiri ati ṣiṣẹ pẹlu imọ-ẹrọ.

Iwọnyi jẹ awọn ọna meji ti o lepa ibi-afẹde kanna: ifijiṣẹ iyara ti awọn imudojuiwọn, mejeeji fun gitlab.com ati fun awọn alabara ni awọn ohun elo wọn.

Eyikeyi awọn imọran tabi awọn iṣeduro fun wa?

Gbogbo eniyan ni kaabọ lati ṣe alabapin si GitLab, ati pe a gba esi lati ọdọ awọn oluka wa. Ti o ba ni awọn imọran eyikeyi fun ẹgbẹ ifijiṣẹ wa, ma ṣe ṣiyemeji ṣẹda ìbéèrè pẹlu akiyesi team: Delivery.

orisun: www.habr.com

Fi ọrọìwòye kun