Ensi ya DevOps ezimbiddwa ku automation. Tuwandiika script deployments, tuddukanya infrastructure nga code, era tufuba okufuula buli process okuddibwamu era eyesigika. Ku mutima gwa kino eri ttiimu z’enkulaakulana ezitabalika ye GitHub, omukutu ogusangibwa buli wamu ogw’okukolagana kwa koodi. Naye watya singa amaanyi gaayo gayinza okugaziwa okusukka version control ne CI/CD? Eno y’emboozi y’okugezesa okusika ensalo za GitHub Actions, okugikyusa okuva ku muyimbi azimba n’okugezesa okudda mu nkola y’obusimu ey’omu makkati —ennyonyi efugira —ku lwa Platform as a Service (PaaS) yonna.
Okuddamu okunnyonnyola Ennyonyi y'okufuga
Mu nnono, ennyonyi efugira PaaS kitundu kya pulogulaamu ekizibu, ekikoleddwa ku mutindo. Kitongole kya wakati ekifuna ebiragiro (okuteeka mu nkola kino, okulinnyisa ekyo) era ne kitegeka ebikozesebwa ebisirikitu okukituukiriza. Ekwata ku kugaba, emikutu, obukuumi, n’okuddukanya obulamu. Okuzimba emu mulimu gwa yinginiya ogw’amaanyi. Endowooza y’okugezesa kwaffe yali nnyangu: tusobola okukozesa enkola y’emirimu eriwo, ey’amaanyi, era emanyiddwa eya GitHub Actions okukola emirimu gino gye gimu? Mu kifo ky'okuwandiika ennyonyi y'okufuga eya monolithic, twandikozesezza fayiro za YAML, okusaba okusika, n'enkola ya GitHub ennywevu evugirwa ebibaddewo okuddukanya omukutu gwaffe.
"Ekikozesebwa ekisinga amaanyi kye kimu ttiimu yo ky'emanyi edda okukozesa. Nga tukozesa GitHub Actions ng'ennyonyi yaffe ey'okufuga, tetwalina kuzimba UI oba okusomesa endowooza empya; twagaziya enkola y'emirimu eriwo eya Git-centric workflow abakola gye baagala."
nga bwe kiri
Okuzimba PaaS evugirwa GitHub
Enzimba yeesigamiziddwa ku kutwala ebirangiriro by'ebizimbe n'ensengeka z'enkola nga koodi munda mu tterekero. Enkola y'emirimu gy'omukozi okuteeka mu nkola microservice empya, okugeza, yandirabise bweti:
Omukozi akola dayirekita empya ey'empeereza yaabwe era n'ayongerako fayiro ya `mewayz.app.yaml` ng'etegeeza ebyetaago byayo: CPU, memory, enkyukakyuka z'obutonde, ne domain.
Bakola fayiro eno ne baggulawo Pull Request. Ekikolwa kyennyini eky'okuggulawo PR kivaako enkola y'emirimu gya GitHub Actions.
Entambula y'emirimu, ekola nga ennyonyi y'okufuga, esengejja fayiro ya YAML, ekakasa ensengeka, era ekola dry-run y'enkyukakyuka mu bikozesebwa.
PR bw'emala okugattibwa, enkola y'emirimu ey'okuteeka mu nkola ey'enjawulo etandikibwawo. Enkola eno ey’emirimu erimu ensonga y’okuwuliziganya ne API ez’enjawulo ez’ekire (Kubernetes, AWS, n’ebirala) okusobola okuwa ddala eby’obugagga ebyetaagisa n’okuteeka mu nkola empeereza.
Entambula y'emirimu olwo eyogera ku commit n'omukago omulamu eri empeereza empya essiddwa mu nkola, okumaliriza loopu.
Enkola eno yakwatagana bulungi n’obufirosoofo bwa Mewayz obw’okukola modularity n’obumanyirivu bw’abakugu. Embeera y’omukutu yonna yali efugibwa enkyusa, ebalibwa, era nga egoberera enkola y’emu ey’okukebera ey’okukolagana nga koodi y’okukozesa yennyini.
Ebyokuyiga okuva mu nsalo
Okugezesa kwali kwa buwanguzi bwa maanyi mu kukakasa nti kisoboka. Twatuuka ku PaaS ekola mu bujjuvu, evugirwa Git-ops nga buli nkyukakyuka elondoolebwa era nga ekyusibwa. Kyokka era kyalaga ebintu ebikulu eby’okulowoozaako. Enzirukanya y’eggwanga enzibu oluusi yasika ensalo z’ebyo ebyali ebirabika obulungi mu fayiro ya YAML. Wadde nga GitHub Actions esobola okulinnyisibwa mu ngeri etategeerekeka, ku mikutu egy’amaanyi amangi, obudde bw’okusimba ennyiriri n’okutuukiriza enkola z’emirimu buyinza okufuuka ekizibu bw’ogeraageranya n’ennyonyi eyeetongodde, ey’okufuga ekiseera ekitono API. Obukuumi bwe bwali obusinga obukulu; twalina okuddukanya n’obwegendereza ebyama n’olukusa okukakasa nti omuddusi wa GitHub Action alina obusobozi obutono obutuufu obwetaagisa okukola emirimu gyayo —endowooza ekwatagana bulungi n’emisingi gya Mewayz egy’obukuumi okusinziira ku dizayini.
Okulaba mu biseera eby’omu maaso ebisinziira ku Git
Okugezesa kuno kulaga nti ebikozesebwa bye tukozesa okukolagana ne CI/CD bya maanyi ekimala okuddamu okukozesebwa mu musingi gwennyini ogw’emikutu gyaffe. Kiziba layini wakati w’okukola enkola n’okuddukanya embeera gy’etambulirako, n’ezigatta wansi w’enkola emu, eyesigamiziddwa ku Git. Ku kkampuni nga Mewayz, ezizimba omulembe oguddako ogwa business OS platforms, okunoonyereza kuno kwa muwendo nnyo. Esoomooza enzimba eya bulijjo era eggulawo enzigi eri obumanyirivu bw’abakugu mu ngeri etategeerekeka era nga bukwataganye. Wadde nga kiyinza obutadda mu kifo kya buli nnyonyi efugira ku mutindo, eyimiridde ng’obujulizi obw’amaanyi ku ndowooza nti eky’okugonjoola ekisinga obulungi kiyinza okuba nga kyali dda mu kitabo kyo eky’ebikozesebwa.
Ensi ya DevOps ezimbiddwa ku automation. Tuwandiika script deployments, tuddukanya infrastructure nga code, era tufuba okufuula buli process okuddibwamu era eyesigika. Ku mutima gwa kino eri ttiimu z’enkulaakulana ezitabalika ye GitHub, omukutu ogusangibwa buli wamu ogw’okukolagana kwa koodi. Naye watya singa amaanyi gaayo gayinza okugaziwa okusukka version control ne CI/CD? Eno y’emboozi y’okugezesa okusika ensalo za GitHub Actions, okugikyusa okuva ku muyimbi azimba n’okugezesa okudda mu nkola y’obusimu ey’omu makkati —ennyonyi efugira —ku lwa Platform as a Service (PaaS) yonna.
Okuddamu okunnyonnyola Ennyonyi y'okufuga
Mu nnono, ennyonyi efugira PaaS kitundu kya pulogulaamu ekizibu, ekikoleddwa ku mutindo. Kitongole kya wakati ekifuna ebiragiro (okuteeka mu nkola kino, okulinnyisa ekyo) era ne kitegeka ebikozesebwa ebisirikitu okukituukiriza. Ekwata ku kugaba, emikutu, obukuumi, n’okuddukanya obulamu. Okuzimba emu mulimu gwa yinginiya ogw’amaanyi. Endowooza y’okugezesa kwaffe yali nnyangu: tusobola okukozesa enkola y’emirimu eriwo, ey’amaanyi, era emanyiddwa eya GitHub Actions okukola emirimu gino gye gimu? Mu kifo ky'okuwandiika ennyonyi y'okufuga eya monolithic, twandikozesezza fayiro za YAML, okusaba okusika, n'enkola ya GitHub ennywevu evugirwa ebibaddewo okuddukanya omukutu gwaffe.
Okuzimba PaaS evugirwa GitHub
Enzimba yeesigamiziddwa ku kutwala ebirangiriro by'ebizimbe n'ensengeka z'enkola nga koodi munda mu tterekero. Enkola y'emirimu gy'omukozi okuteeka mu nkola microservice empya, okugeza, yandirabise bweti:
Ebyokuyiga okuva mu nsalo
Okugezesa kwali kwa buwanguzi bwa maanyi mu kukakasa nti kisoboka. Twatuuka ku PaaS ekola mu bujjuvu, evugirwa Git-ops nga buli nkyukakyuka elondoolebwa era nga ekyusibwa. Kyokka era kyalaga ebintu ebikulu eby’okulowoozaako. Enzirukanya y’eggwanga enzibu oluusi yasika ensalo z’ebyo ebyali ebirabika obulungi mu fayiro ya YAML. Wadde nga GitHub Actions esobola okulinnyisibwa mu ngeri etategeerekeka, ku mikutu egy’amaanyi amangi, obudde bw’okusimba ennyiriri n’okutuukiriza enkola z’emirimu buyinza okufuuka ekizibu bw’ogeraageranya n’ennyonyi eyeetongodde, ey’okufuga ekiseera ekitono API. Obukuumi bwe bwali obusinga obukulu; twalina okuddukanya n’obwegendereza ebyama n’olukusa okukakasa nti omuddusi wa GitHub Action alina obusobozi obutono obutuufu obwetaagisa okukola emirimu gyayo —endowooza ekwatagana bulungi n’emisingi gya Mewayz egy’obukuumi okusinziira ku dizayini.
Okulaba mu biseera eby’omu maaso ebisinziira ku Git
Okugezesa kuno kulaga nti ebikozesebwa bye tukozesa okukolagana ne CI/CD bya maanyi ekimala okuddamu okukozesebwa mu musingi gwennyini ogw’emikutu gyaffe. Kiziba layini wakati w’okukola enkola n’okuddukanya embeera gy’etambulirako, n’ezigatta wansi w’enkola emu, eyesigamiziddwa ku Git. Ku kkampuni nga Mewayz, ezizimba omulembe oguddako ogwa business OS platforms, okunoonyereza kuno kwa muwendo nnyo. Esoomooza enzimba eya bulijjo era eggulawo enzigi eri obumanyirivu bw’abakugu mu ngeri etategeerekeka era nga bukwataganye. Wadde nga kiyinza obutadda mu kifo kya buli nnyonyi efugira ku mutindo, eyimiridde ng’obujulizi obw’amaanyi ku ndowooza nti eky’okugonjoola ekisinga obulungi kiyinza okuba nga kyali dda mu kitabo kyo eky’ebikozesebwa.
Ebikozesebwa Byo Byonna mu Bizinensi Mu Kifo Kimu
Lekera awo okujugumira apps eziwera. Mewayz egatta ebikozesebwa 208 ku doola 49 zokka/omwezi — okuva ku yinvensulo okutuuka ku HR, okubuuka okutuuka ku kwekenneenya. Tekyetaagisa kaadi ya ssente okutandika.