Njira yoyendetsera polojekiti yomwe imagwiritsidwa ntchito ku Slack

Kubweretsa kumasulidwa kwatsopano kwa polojekiti kumafuna kusamalitsa mosamala pakati pa liwiro la kutumiza ndi kudalirika kwa yankho. Makhalidwe a Slack amafulumira, kubwereza kwanthawi yayitali, ndikuyankha mwachangu pazopempha za ogwiritsa ntchito. Kuphatikiza apo, kampaniyo ili ndi mazana ambiri opanga mapulogalamu omwe amayesetsa kukhala opindulitsa momwe angathere.

Njira yoyendetsera polojekiti yomwe imagwiritsidwa ntchito ku Slack

Olemba zinthu, kumasulira komwe tikusindikiza masiku ano, akuti kampani yomwe imayesetsa kutsatira mfundo zotere ndipo nthawi yomweyo ikukula iyenera kupititsa patsogolo dongosolo lake loperekera ntchito. Kampaniyo iyenera kuyika ndalama powonekera komanso kudalirika kwa njira zogwirira ntchito, pochita izi kuti zitsimikizire kuti izi zikugwirizana ndi kukula kwa polojekitiyo. Apa tikambirana za kayendedwe ka ntchito komwe kunachitika ku Slack, komanso zisankho zina zomwe zidapangitsa kuti kampaniyo igwiritse ntchito njira yoperekera pulojekiti yomwe ilipo lero.

Momwe njira zoyendetsera ntchito zimagwirira ntchito masiku ano

PR iliyonse (yopempha kukoka) mu Slack iyenera kuyang'aniridwa ndi code ndipo iyenera kupambana mayesero onse. Pokhapokha ngati izi zitakwaniritsidwa pomwe wopanga mapulogalamu angaphatikizepo code yake munthambi yayikulu ya polojekitiyo. Komabe, code iyi imayikidwa nthawi yabizinesi yokha, nthawi yaku North America. Zotsatira zake, chifukwa chakuti antchito athu ali kumalo awo antchito, ndife okonzeka kuthetsa mavuto omwe sitingayembekezere.

Tsiku lililonse timagwira ntchito pafupifupi 12. Pakutumiza kulikonse, wopanga mapulogalamu omwe amasankhidwa kukhala mtsogoleri wotumiza ndiye kuti ali ndi udindo wopanga zatsopano. Izi ndi njira zambiri zomwe zimatsimikizira kuti msonkhanowo ukubweretsedwa bwino. Chifukwa cha njirayi, titha kuzindikira zolakwika zisanakhudze ogwiritsa ntchito athu onse. Ngati pali zolakwika zambiri, kutumizidwa kwa msonkhano kungathe kubwezeredwa. Ngati vuto linalake lipezeka mutatulutsidwa, kukonza kumatha kumasulidwa mosavuta.

Njira yoyendetsera polojekiti yomwe imagwiritsidwa ntchito ku Slack
Interface of the Checkpoint system, yomwe imagwiritsidwa ntchito ku Slack kuyika ma projekiti

Njira yotumizira kumasulidwa kwatsopano pakupanga itha kuganiziridwa kuti ili ndi masitepe anayi.

▍1. Kupanga nthambi yotulutsa

Kutulutsidwa kulikonse kumayamba ndi nthambi yatsopano yotulutsidwa, mfundo m'mbiri yathu ya Git. Izi zimakupatsani mwayi wopereka ma tag kuti mutulutsidwe ndikukupatsani malo omwe mungakonzere zolakwika zomwe zapezeka pokonzekera kutulutsidwa kuti mutulutsidwe.

▍2. Kutumizidwa m'malo ochitira masewera

Chotsatira ndikuyika msonkhanowo pamaseva owerengera ndikuyesa kuyesa kodziwikiratu kuti polojekiti ichitike (mayeso a utsi). Malo ochitira masewerawa ndi malo opanga omwe salandira magalimoto akunja. M'malo ano, timayesa mayeso owonjezera pamanja. Izi zimatipatsa chidaliro chowonjezereka kuti pulojekiti yosinthidwa imagwira ntchito bwino. Mayesero odzichitira okha sakwanira kupereka chidaliro ichi.

▍3. Kutumizidwa m'malo a dogfood ndi canary

Kutumiza kumalo opangira zinthu kumayamba ndi malo a dogfood, oimiridwa ndi gulu la ochereza omwe amatumikira malo athu ogwirira ntchito a Slack. Popeza ndife ogwiritsa ntchito a Slack achangu, kutenga njira iyi kunatithandizira kugwira nsikidzi zambiri poyambira. Pambuyo poonetsetsa kuti ntchito zoyambira za dongosololi sizikusweka, msonkhanowo umayikidwa mu malo a canary. Zimayimira machitidwe omwe amawerengera pafupifupi 2% ya magalimoto opanga.

▍4. Kumasulidwa pang'onopang'ono kwa kupanga

Ngati zizindikiro zowunikira kumasulidwa kwatsopano zimakhala zokhazikika, ndipo ngati titatha kutumiza pulojekitiyi mu malo a canary sitinalandire madandaulo aliwonse, timapitirizabe kusamutsa ma seva opanga pang'onopang'ono kumasulidwa kwatsopano. Njira yotumizira imagawidwa m'magawo otsatirawa: 10%, 25%, 50%, 75% ndi 100%. Zotsatira zake, titha kusamutsa pang'onopang'ono magalimoto opanga kumasulidwa kwatsopano kwadongosolo. Panthawi imodzimodziyo, timakhala ndi nthawi yofufuza momwe zinthu zilili ngati pali zolakwika zilizonse.

▍Nanga bwanji ngati chinachake sichikuyenda bwino panthawi yotumizidwa?

Kusintha ma code nthawi zonse kumakhala pachiwopsezo. Koma tikulimbana ndi izi chifukwa cha kukhalapo kwa "atsogoleri ogwira ntchito" ophunzitsidwa bwino omwe amayang'anira njira yobweretsera kumasulidwa kwatsopano pakupanga, kuyang'anira zizindikiro zowunikira ndikugwirizanitsa ntchito za opanga mapulogalamu otulutsa code.

Zikachitika kuti chinachake chalakwika, timayesa kuzindikira vutoli mwamsanga. Timafufuza zavutoli, kupeza PR yomwe ikuyambitsa zolakwikazo, tikuyitembenuza, kuisanthula bwino, ndikupanga njira yatsopano. Zowona, nthawi zina vuto silidziwika mpaka polojekitiyo ikayamba kupanga. Zikatero, chofunika kwambiri ndi kubwezeretsa utumiki. Chifukwa chake, tisanayambe kufufuza vutoli, nthawi yomweyo timabwereranso ku ntchito yomanga kale.

Zomangamanga za Deployment System

Tiyeni tiwone matekinoloje omwe amathandizira kachitidwe kathu ka projekiti.

▍Kutumiza mwachangu

Mayendedwe a ntchito omwe tawafotokozera pamwambapa angawonekere, m'mbuyo, momveka bwino. Koma dongosolo lathu lotumiza anthu silinakhale chonchi nthawi yomweyo.

Kampaniyo ikakhala yaying'ono, ntchito yathu yonse imatha kugwira ntchito 10 za Amazon EC2. Kutumiza pulojekitiyi kumatanthauza kugwiritsa ntchito rsync kuti mulunzanitse ma seva onse mwachangu. M'mbuyomu, code yatsopano inali sitepe imodzi yokha kuchoka pakupanga, yoyimiridwa ndi malo owonetsera. Misonkhano idapangidwa ndikuyesedwa m'malo oterowo, ndiyeno idapita molunjika kupanga. Zinali zosavuta kumvetsetsa dongosolo loterolo; zimalola wopanga mapulogalamu aliyense kuti agwiritse ntchito code yomwe adalemba nthawi iliyonse.

Koma pamene chiwerengero cha makasitomala chikukula, momwemonso kukula kwa zomangamanga zomwe zimafunikira kuti zithandizire ntchitoyi. Posakhalitsa, kupatsidwa kukula kosalekeza kwa dongosololi, chitsanzo chathu chotumizira, kutengera kukankhira kachidindo katsopano kumaseva, sichinalinso kugwira ntchito yake. Mwakutero, kuwonjezera seva yatsopano iliyonse kumatanthauza kuwonjezera nthawi yofunikira kuti amalize kutumiza. Ngakhale njira zozikidwa pakugwiritsa ntchito kofanana kwa rsync zili ndi malire.

Tinatha kuthetsa vutoli mwa kusamukira ku njira yotumizira yofanana kwathunthu, yomwe inapangidwa mosiyana ndi dongosolo lakale. Momwemo, tsopano sitinatumize kachidindo ku maseva pogwiritsa ntchito script yolumikizana. Tsopano seva iliyonse idatsitsa payokha msonkhano watsopano, podziwa kuti iyenera kutero poyang'anira kusintha kwachinsinsi kwa Consul. Ma seva adadzaza kachidindo kofanana. Izi zinatipangitsa kuti tikhalebe ndi liwiro lalikulu la kutumizidwa ngakhale m'malo a kukula kwa dongosolo nthawi zonse.

Njira yoyendetsera polojekiti yomwe imagwiritsidwa ntchito ku Slack
1. Ma seva opanga amayang'anira kiyi ya Consul. 2. Kusintha kwakukulu, izi zimauza ma seva kuti akuyenera kuyamba kukopera code yatsopano. 3. Maseva amatsitsa mafayilo a tarball ndi code ya pulogalamu

▍ Kutumiza kwa ma atomiki

Njira inanso yomwe idatithandizira kufikira njira yotumizira magulu ambiri inali kutumiza ma atomiki.

Musanagwiritse ntchito ma atomiki, kutumizidwa kulikonse kungayambitse kuchuluka kwa mauthenga olakwika. Chowonadi ndi chakuti njira yokopera mafayilo atsopano ku maseva opanga sanali atomiki. Izi zidapangitsa kuti pakhale nthawi yayitali pomwe code yomwe idatcha ntchito zatsopano idapezeka ntchitozo zisanapezeke. Khodi yotere itayitanidwa, zinapangitsa kuti zolakwika zamkati zibwezedwe. Izi zidawonekera pazopempha zomwe zidalephera ku API komanso masamba osweka.

Gulu lomwe linagwira ntchito pa vutoli linathetsa izo mwa kuyambitsa lingaliro la "kutentha" ndi "kuzizira" zolemba. Khodi yomwe ili m'ndandanda yotentha imakhala ndi udindo wokonza magalimoto. Ndipo m'mabuku "ozizira", code, pamene dongosolo likugwira ntchito, likungokonzekera kugwiritsidwa ntchito. Pakutumiza, code yatsopano imakopera ku bukhu lozizira lomwe silinagwiritsidwe ntchito. Kenako, ngati palibe njira zogwirira ntchito pa seva, kusintha kwachikwatu pompopompo kumachitika.

Njira yoyendetsera polojekiti yomwe imagwiritsidwa ntchito ku Slack
1. Kutulutsa kachidindo ka pulogalamu "yozizira". 2. Kusintha kachitidwe kukhala chikwatu "chozizira", chomwe chimakhala "chotentha" (ntchito ya atomiki)

Zotsatira: kusintha kwa kutsindika kudalirika

Mu 2018, polojekitiyi idakula kwambiri kotero kuti kutumizidwa mwachangu kudayamba kuwononga kukhazikika kwazinthuzo. Tinali ndi makina apamwamba kwambiri otumizira omwe tidayikamo nthawi yambiri ndi khama. Zomwe tinkafunika kuchita ndikumanganso ndikuwongolera njira zotumizira anthu. Takula kukhala kampani yayikulu, yomwe zitukuko zake zakhala zikugwiritsidwa ntchito padziko lonse lapansi kukonza zolumikizirana zosasokoneza komanso kuthana ndi mavuto ofunikira. Choncho, kudalirika kunakhala cholinga chathu.

Tinkafunika kupanga njira yotumizira zatsopano za Slack kukhala zotetezeka kwambiri. Izi zidatipangitsa kukonza dongosolo lathu lotumiza anthu. Kunena zowona, tinakambilana kachitidwe kabwino kameneka pamwambapa. Pakuya kwadongosolo, tikupitiriza kugwiritsa ntchito matekinoloje ofulumira komanso a atomiki. Njira yotumizira anthu yasintha. Dongosolo lathu latsopano lapangidwa kuti lizitumiza pang'onopang'ono kachidindo katsopano pamagawo osiyanasiyana, m'malo osiyanasiyana. Tsopano timagwiritsa ntchito zida zothandizira zapamwamba komanso zida zowunikira machitidwe kuposa kale. Izi zimatipatsa mphamvu yogwira ndi kukonza zolakwika nthawi yayitali asanakhale ndi mwayi wofikira wogwiritsa ntchito.

Koma sitikalekeza pamenepo. Tikuwongolera dongosololi mosalekeza, pogwiritsa ntchito zida zowonjezera zowonjezera komanso zida zopangira ntchito.

Wokondedwa owerenga! Kodi njira yotumizira zotulutsa zatsopano za projekiti imagwira ntchito bwanji komwe mumagwira?

Njira yoyendetsera polojekiti yomwe imagwiritsidwa ntchito ku Slack

Source: www.habr.com

Kuwonjezera ndemanga