Moni nonse! Ndife mainjiniya ochita kupanga kuchokera kukampani Positive Technologies ndipo timathandizira kupanga zinthu zamakampani: timathandizira mapaipi onse osonkhanitsira kuchokera pakupanga mzere wamakhodi ndi opanga mpaka kufalitsa zinthu zomalizidwa ndi zilolezo pa maseva osintha. Mwamwayi, timatchedwa DevOps mainjiniya. M'nkhaniyi, tikufuna kulankhula za magawo aukadaulo a pulogalamu yopangira mapulogalamu, momwe timawawonera komanso momwe timawayika m'magulu.
Kuchokera kuzinthu zomwe muphunzira za zovuta zogwirizanitsa chitukuko cha zinthu zambiri, za mapu aukadaulo ndi momwe zimathandizire kuwongolera ndi kubwereza mayankho, ndi magawo otani ndi masitepe a chitukuko, momwe madera omwe ali ndiudindo alili. pakati pa DevOps ndi magulu akampani yathu.
Za Chaos ndi DevOps
Mwachidule, lingaliro la DevOps limaphatikizapo zida zachitukuko ndi ntchito, komanso njira ndi njira zabwino zogwiritsira ntchito. Tiyeni titchule zapadziko lonse lapansi cholinga kuchokera pakukhazikitsa malingaliro a DevOps pakampani yathu: uku ndikuchepetsa kosasintha kwa mtengo wopangira ndi kukonza zinthu mochulukira (maola amunthu kapena maola amakina, CPU, RAM, Disk, etc.). Njira yosavuta komanso yodziwikiratu yochepetsera mtengo wonse wa chitukuko pamlingo wa kampani yonse ndi kuchepetsa mtengo wochitira ntchito zanthawi zonse pazigawo zonse zopanga. Koma kodi magawowa ndi ati, momwe mungawalekanitse ndi zochitika zonse, ndi masitepe ati omwe ali nawo?
Kampani ikapanga chinthu chimodzi, zonse zimamveka bwino: nthawi zambiri pamakhala mapu amsewu ndi dongosolo lachitukuko. Koma chochita pamene mzere wa malonda ukukula ndipo pali zinthu zambiri? Poyang'ana koyamba, ali ndi njira zofanana ndi mizere ya msonkhano, ndipo masewera a "pezani X kusiyana" muzitsulo ndi zolemba zimayamba. Koma bwanji ngati pali mapulojekiti 5+ omwe akutukuka ndikuthandizira matembenuzidwe angapo opangidwa zaka zingapo akufunika? Kodi tikufuna kugwiritsanso ntchito kuchuluka kwa mayankho omwe tingathe nawo pamapaipi azinthu kapena kodi ndife okonzeka kugwiritsa ntchito ndalama popanga chitukuko chapadera pa chilichonse?
Momwe mungapezere malire pakati pa zapadera ndi ma serial solutions?
ife: "Sitikudziwa, sitinafunse funso ngati limeneli, koma ndi zizindikiro ziti zomwe ziyenera kuganiziridwa?"
Mtsogoleri Wachitukuko: "Angadziwe ndani! Think…”
Monga mufilimu yotchukayo: "Ndili mu hotelo! .." - "Uh ... Kodi mungandiwonetse njira?" Polingalira, tinafika pomaliza kuti choyamba tiyenera kusankha pa mayiko omaliza a malonda; ichi chidakhala cholinga chathu choyamba.
Ndiye, mumasanthula bwanji zinthu khumi ndi ziwiri zokhala ndi magulu akulu kwambiri kuyambira anthu 10 mpaka 200 ndikuzindikira ma metric omwe angayesedwe potengera mayankho?
1: 0 mokomera Chisokonezo, kapena DevOps pamapewa
Tinayamba ndi kuyesa kugwiritsa ntchito zithunzi za IDEF0 ndi zojambula zosiyanasiyana zamabizinesi kuchokera pamndandanda wa BPwin. Chisokonezocho chinayamba pambuyo pa gawo lachisanu la gawo lotsatira la polojekiti yotsatira, ndipo mabwalo awa a polojekiti iliyonse akhoza kukokedwa mumchira wa python wautali pansi pa masitepe 50+. Ndidamva chisoni ndipo ndidafuna kulira mwezi - sunakhale wokwanira.
Ntchito zofananira zopanga
Njira zopangira ma Model ndi ntchito yovuta kwambiri komanso yowawa: muyenera kusonkhanitsa, kukonza ndi kusanthula zambiri kuchokera kumadipatimenti osiyanasiyana ndi maunyolo opanga. Mutha kuwerenga zambiri za izi m'nkhani "Kutengera njira zopangira mumakampani a IT".
Titayamba kupanga chitsanzo cha kupanga kwathu, tinali ndi cholinga chenicheni - kufotokozera wogwira ntchito aliyense amene akukhudzidwa ndi chitukuko cha zinthu za kampani yathu, komanso kwa oyang'anira polojekiti:
momwe zogulitsa ndi zigawo zake, kuyambira pakupanga mzere wamakhodi, zimafikira kasitomala ngati oyika ndi zosintha,
ndi zinthu ziti zomwe zimaperekedwa pagawo lililonse lopanga zinthu,
ndi ntchito ziti zomwe zikukhudzidwa pagawo lililonse,
kulimbikitsa zomanga zoyesedwa kuti zitulutse nkhokwe ku Artifactory,
kufalitsa kumasulidwa kumamanga pa ma seva osintha,
kutumiza kwa misonkhano ndi zosintha pakupanga,
kuyambitsa kukhazikitsa ndi kukonzanso malonda.
Mwachitsanzo, taganizirani chitsanzo chaukadaulo cha chiwembu chomasuliridwa ichi (pano ndi Model) ngati mawonekedwe a IDEF0. Ikuwonetsa magawo akulu a njira yathu ya CI. Mitundu ya IDEF0 imagwiritsa ntchito zomwe zimatchedwa Chizindikiro cha ICOM (Input-Control-Output-Mechanism) kufotokoza zomwe zimagwiritsidwa ntchito pagawo lililonse, kutengera malamulo ndi zofunikira zomwe zimagwira ntchito, zomwe zimatuluka, ndi njira, mautumiki kapena anthu omwe amatsatira gawo linalake.
Kusindikiza pa chithunzi kudzatsegula mu kukula kwathunthu
Monga lamulo, ndizosavuta kuwola ndi tsatanetsatane kufotokozera njira mu zitsanzo zogwira ntchito. Koma pamene chiŵerengero cha maelementi chikukula, kumakhala kovuta kwambiri kumvetsetsa kanthu kena mwa izo. Koma pakukula kwenikweni palinso magawo othandizira: kuyang'anira, kutsimikizira kwazinthu, makina opangira ntchito, ndi zina. Ndi chifukwa cha vuto la makulitsidwe kuti tinasiya kufotokoza uku.
Kubadwa kwa Chiyembekezo
M'buku limodzi, tinapeza mapu akale a Soviet omwe akufotokoza njira zamakono (zomwe, mwa njira, zimagwiritsidwabe ntchito masiku ano m'mabizinesi ambiri a boma ndi mayunivesite). Dikirani, dikirani, chifukwa tilinso ndi kayendedwe ka ntchito!.. Pali magawo, zotsatira, zoyezera, zofunikira, zizindikiro, ndi zina zotero… Bwanji osayesanso kugwiritsa ntchito ma flowsheets pamapaipi athu azinthu? Ndinamva kuti: “Izi ndiye! Tapeza ulusi woyenera, nthawi yakwana yoti tichikoke bwino!
Mu tebulo losavuta, tinaganiza zojambulira zinthu ndi mizati, ndi magawo aukadaulo ndi masitepe a mapaipi azinthu m'mizere. Milestones ndi chinthu chachikulu, monga sitepe yomanga zinthu. Ndipo masitepe ndichinthu chaching'ono komanso chatsatanetsatane, monga gawo lotsitsa gwero lachidziwitso ku seva yomanga kapena gawo lolemba kachidindo.
Pamphambano za mizere ndi mizati ya mapu, timayika masitepe a siteji ndi malonda. Kwa ma status, gulu la mayiko linatanthauzidwa:
Palibe deta - kapena zosayenera. Ndikofunikira kusanthula kufunikira kwa gawo lazogulitsa. Kaya kusanthula kwachitika kale, koma siteji sikufunikanso kapena sikuli koyenera pazachuma.
Zakhazikitsidwa. Gawo la payipi likugwiritsidwa ntchito mu voliyumu yofunikira.
Kudzaza tebulo kunayamba ntchito ndi polojekiti. Choyamba, magawo ndi masitepe a projekiti imodzi adasankhidwa ndikujambulidwa. Kenako adatenga projekiti yotsatira, ndikuyika ma stade omwe ali mmenemo ndikuwonjezera masitepe ndi masitepe omwe anali kusowa mumapulojekiti am'mbuyomu. Zotsatira zake, tapeza magawo ndi masitepe a payipi yathu yonse yopanga ndi ma status awo mu ntchito inayake. Zinapezeka zofananira ndi luso lopanga mapaipi azinthu. Tinatcha matrix oterowo mapu aukadaulo.
Mothandizidwa ndi mapu aukadaulo, timagwirizanitsa momveka bwino ndi maguluwo mapulani a ntchito zapachaka ndi zolinga zomwe tikufuna kukwaniritsa limodzi: magawo ati omwe timawonjezera pulojekitiyi chaka chino, ndi ati omwe timasiya mtsogolo. Komanso, pogwira ntchito, titha kukhala ndi zowongolera pamagawo omwe tamaliza pa chinthu chimodzi chokha. Kenako timakulitsa mapu athu ndikuwonetsa kusinthaku ngati gawo kapena gawo latsopano, kenako timasanthula chinthu chilichonse ndikupeza kuthekera kobwerezanso.
Iwo angatitsutse kuti: “Izi ndi zonse, ndithudi, zabwino, kokha ndi nthawi chiwerengero cha masitepe ndi masitepe adzakhala ochuluka kwambiri. Kukhala bwanji?
Tapereka mafotokozedwe okhazikika komanso athunthu pazofunikira pagawo lililonse ndi gawo lililonse, kuti amvetsetsedwe ndi aliyense mkati mwakampani mwanjira yomweyo. M'kupita kwa nthawi, pamene kusintha kumayambitsidwa, sitepe ikhoza kulowetsedwa mu gawo lina kapena sitepe, ndiyeno "idzagwa". Nthawi yomweyo, zofunikira zonse ndi ma nuances aukadaulo zimagwirizana ndi zomwe zimafunikira pagawo la generalizing kapena sitepe.
Magawo a chitukuko awonetsedwa kale ngati zochitika zazikulu komanso masitepe pamapu. Titha kukhudza kutsika kwa mtengo wazinthu poyambitsa makina opangira masitepe. Pambuyo pake, timaganizira za kusintha kwa makhalidwe abwino, kuchuluka kwa ma metrics ndi phindu lomwe gulu limalandira (mu maola a munthu kapena maola osungira ndalama).
Mapu aukadaulo a njira yopangira
Ngati titenga magawo athu onse ndi masitepe, kuwayika ndi ma tag ndikuwakulitsa kukhala unyolo umodzi, ndiye kuti zikhala zazitali komanso zosamvetsetseka (ndi "mchira wa python" womwe tidakambirana koyambirira kwa nkhaniyi) :
Awa ndi magawo a zinthu zomangira [Build], kuwatumiza kuti ayese maseva [Deploy], kuyesa [Mayeso], kulimbikitsa zomanga kuti zitulutse nkhokwe kutengera zotsatira za kuyezetsa [Limbikitsani], kupanga ndi kusindikiza malayisensi [License], kusindikiza [ Sindikizani] pa seva yosinthira ya GUS ndi kutumiza ku maseva osintha a FLUS, kukhazikitsa ndi kukonzanso zinthu pamitengo yamakasitomala pogwiritsa ntchito Product Configuration Management [Install], komanso kutolera ma telemetry [Telemetry] kuchokera kuzinthu zomwe zayikidwa.
Kuphatikiza pa iwo, magawo osiyana amatha kusiyanitsa: kuwunika kwa boma [InfMonitoring], kumasulira kwa code source [SourceCodeControl], kukonza chilengedwe [Konzekerani], kasamalidwe ka polojekiti [Workflow], kupatsa magulu zida zoyankhulirana [Kulankhulana], chitsimikiziro chazinthu [ Certification] ndikuwonetsetsa kudzikwanira kwa njira za CI [CISelfSufficiency] (mwachitsanzo, kudziyimira pawokha kwa misonkhano kuchokera pa intaneti). Masitepe ambiri munjira zathu sizingaganizidwe, chifukwa ndi achindunji.
Zidzakhala zosavuta kumvetsetsa ndikuwona ndondomeko yonse yopangira ngati ikuwonetsedwa mu mawonekedwe mapu zamakono; ili ndi tebulo lomwe magawo opangira payekha ndi masitepe owonongeka a Chitsanzo amalembedwa m'mizere, ndipo m'mizere kufotokozera zomwe zimachitika pagawo lililonse kapena sitepe. Kugogomezera kwakukulu kumayikidwa pazithandizo zomwe zimapereka gawo lililonse, ndikuyika malire a madera omwe ali ndi udindo.
Mapu kwa ife ndi mtundu wa gulu. Imawonetsa mbali zazikulu zaumisiri zopanga zinthu. Chifukwa cha izi, zidakhala zosavuta kuti gulu lathu lochita kupanga lizitha kulumikizana ndi opanga ndikukonzekereratu kukhazikitsidwa kwa magawo odzipangira okha, komanso kumvetsetsa zomwe ndalama zogwirira ntchito ndi zida (anthu ndi zida) zidzafunikire pa izi.
Mkati mwa kampani yathu, mapu amapangidwa okha kuchokera ku template ya jinja ngati fayilo ya HTML yokhazikika, kenaka imakwezedwa ku seva ya GitLab Pages. Chithunzi chokhala ndi chitsanzo cha mapu opangidwa mokwanira chikhoza kuwonedwa kugwirizana.
Kusindikiza pa chithunzi kudzatsegula mu kukula kwathunthu
Mwachidule, mapu aukadaulo ndi chithunzi chokhazikika cha kapangidwe kake, chomwe chimawonetsa midadada yodziwika bwino ndi magwiridwe antchito.
Mapangidwe a mapu athu amsewu
Mapuwa ali ndi magawo angapo:
Malo amutu - apa pali kufotokozera kwa mapu, mfundo zoyambira zimayambitsidwa, zofunikira zazikulu ndi zotsatira za kupanga zimatanthauzidwa.
Dashboard - apa mutha kuwongolera kuwonetsa kwazinthu zamtundu uliwonse, chidule cha magawo omwe akhazikitsidwa ndi masitepe ambiri pazogulitsa zonse zimaperekedwa.
kumvetsetsa kuti ndi magawo ati omwe akusowa muzinthu zenizeni kapena polojekiti, ndikuwunika kufunikira kwa kukhazikitsidwa kwawo;
kuchepetsa madera omwe ali ndi udindo pakati pa madipatimenti angapo ngati akugwira ntchito zosiyanasiyana;
gwirizanani pamakontrakitala polowera ndi kutuluka kwa magawo;
phatikizani gawo lanu la ntchito muzochitika zonse zachitukuko;
kuwunika molondola kufunikira kwa zinthu zomwe zimapereka gawo lililonse.
Kufotokozera mwachidule zonsezi
Njirayi ndi yosinthasintha, yowonjezera komanso yosavuta kukonza. Ndizosavuta kupanga ndikusunga mafotokozedwe anjira mwanjira iyi kusiyana ndi mtundu wokhazikika wamaphunziro wa IDEF0. Kuonjezera apo, kufotokozera tabular ndi kosavuta, kodziwika bwino komanso kopangidwa bwino kuposa chitsanzo chogwira ntchito.
Pakukhazikitsa kwaukadaulo kwa masitepe, tili ndi chida chapadera chamkati CrossBuilder - chida chosanjikiza pakati pa machitidwe a CI, ntchito ndi zomangamanga. Wopangayo sayenera kudula njinga yake: mu dongosolo lathu la CI, ndikwanira kuyendetsa imodzi mwazolemba (zotchedwa ntchito) za chida cha CrossBuilder, chomwe chidzachite bwino, poganizira za mawonekedwe athu. .