Paano ginagamit ng mga enterprise development team ang GitLab at Mattermost ChatOps para mapabilis ang pag-develop

Hello ulit! Ang OTUS ay naglulunsad ng bagong kurso noong Pebrero "CI/CD sa AWS, Azure at Gitlab". Bilang pag-asa sa pagsisimula ng kurso, naghanda kami ng pagsasalin ng kapaki-pakinabang na materyal.

Isang buong hanay ng mga tool ng DevOps, isang open source messenger at ChatOps - paano ka hindi maiinlove?

Wala pang mas maraming pressure sa mga development team kaysa sa ngayon, na may ganitong pagnanais na lumikha ng mga produkto nang mas mabilis at mas mahusay. Ang pagsikat ng DevOps sa katanyagan ay higit sa lahat ay resulta ng mga inaasahan na inilagay dito upang pabilisin ang mga siklo ng pag-unlad, pataasin ang liksi, at tulungan ang mga koponan na harapin ang mga problema nang mas mabilis. Bagama't ang pagiging available at pagiging komprehensibo ng mga tool ng DevOps ay bumuti nang malaki sa nakalipas na ilang taon, ang pagpili lamang ng pinakabago at pinakamahusay na mga tool ay hindi ginagarantiyahan ang isang maayos at walang problema na lifecycle ng pag-unlad.

Bakit ang GitLab

Sa isang ecosystem ng mabilis na lumalagong pagpili at pagiging kumplikado, ang GitLab ay nagbibigay ng isang kumpletong open source na platform ng DevOps na maaaring pabilisin ang mga yugto ng pag-unlad, bawasan ang mga gastos sa pag-develop, at pataasin ang produktibidad ng developer. Mula sa pagpaplano at coding hanggang sa pag-deploy at pagsubaybay (at bumalik muli), pinagsasama-sama ng GitLab ang maraming magkakaibang tool sa isang bukas na hanay.

Bakit Pinakamahalagang ChatOps

Sa Mattermost kami ay malaking tagahanga ng GitLab, kaya naman ang Mattermost ay nagpapadala sa GitLab Omnibus at nagsusumikap kami upang matiyak na ang Mattermost ay madaling tumatakbo gamit ang GitLab.

Buksan ang plataporma Pinakamahalagang ChatOps nagbibigay-daan sa iyo na magbigay ng may-katuturang impormasyon sa iyong koponan at gumawa ng mga pagpapasya kung saan nangyayari ang pag-uusap. Kapag may nangyaring isyu, ang daloy ng trabaho sa ChatOps ay maaaring alertuhan ang mga nauugnay na miyembro ng team na nagtutulungan upang lutasin ang isyu nang direkta sa loob ng Mattermost.

Nagbibigay ang ChatOps ng paraan upang makipag-ugnayan sa mga gawain ng CI/CD sa pamamagitan ng pagmemensahe. Ngayon, sa loob ng mga organisasyon, maraming talakayan, pakikipagtulungan at paglutas ng problema ang dinadala sa mga messenger, at ang pagkakaroon ng kakayahang magpatakbo ng mga gawain sa CI/CD na may output na ibinalik sa channel ay maaaring makabuluhang mapabilis ang daloy ng trabaho ng team.

Mattermost + GitLab

Isang buong hanay ng mga tool ng DevOps, isang open source messenger at ChatOps - paano ka hindi maiinlove? Sa GitLab at Mattermost, hindi lamang mapapasimple ng mga developer ang kanilang proseso ng DevOps, ngunit ilipat din ito sa parehong interface ng chat kung saan tinatalakay ng mga miyembro ng team ang mga isyu, nakikipagtulungan, at gumagawa ng mga desisyon.

Narito ang ilang halimbawa kung paano ginagamit ng mga development team ang Mattermost at GitLab nang magkasama upang mapabuti ang pagiging produktibo gamit ang ChatOps.

Gumagamit ang Itk ng GitLab at Mattermost upang maihatid ang code sa oras at pinapataas ang bilang ng mga deployment ng produksyon bawat taon ng anim na beses
Itk na nakabase sa Montpellier, France, ay bumuo ng mga tool at application na tumutulong sa mga magsasaka na ma-optimize ang mga proseso ng pag-aani, mapabuti ang kalidad ng ani at mas mahusay na pamahalaan ang panganib.

Sinimulan nilang gamitin ang GitLab noong 2014 at pangunahing gumamit ng legacy na tool sa pakikipag-chat para sa pang-araw-araw na trabaho, pagmemensahe, at mga video call. Gayunpaman, habang ang kumpanya ay lumago, ang tool ay hindi sumukat sa kanila; walang permanenteng nakaimbak, madaling mahanap na mga mensahe, at lalong naging mahirap ang pagtutulungan ng magkakasama. Kaya nagsimula silang maghanap ng alternatibo.

Di nagtagal, natuklasan nila na ang GitLab Omnibus package ay kasama ng isang open messaging platform: Mattermost. Agad nilang nagustuhan ang simpleng paggana ng pagbabahagi ng code, kabilang ang awtomatikong pag-highlight ng syntax at buong suporta sa Markdown, pati na rin ang kadalian ng pagbabahagi ng kaalaman, paghahanap ng mensahe, at ang buong koponan na nakikipagtulungan sa mga ideya upang bumuo ng mga bagong solusyon na isinama sa GitLab.

Bago lumipat sa Mattermost, hindi madaling makatanggap ng mga notification ang mga miyembro ng team tungkol sa pag-unlad ng development. Ngunit gusto nilang makitang masubaybayan ang mga proyekto, pagsamahin ang mga kahilingan, at magsagawa ng iba pang mga aksyon sa GitLab.

Noon si Romain Maneski, isang developer mula sa itk, ay nagsimulang magsulat ng isang GitLab plugin para sa Mattermost, na kalaunan ay pinahintulutan ang kanyang koponan na mag-subscribe sa mga notification ng GitLab sa Mattermost at makatanggap ng mga abiso tungkol sa mga bagong isyu at mga kahilingan sa pagsusuri sa isang lugar.

Sa ngayon suportado ng plugin:

  • Pang-araw-araw na Paalalaupang makatanggap ng impormasyon tungkol sa kung aling isyu at mga kahilingan sa pagsasama ang nangangailangan ng iyong pansin;
  • Abiso – para makatanggap ng mga notification mula sa Mattermost kapag may nagbanggit sa iyo, nagpadala sa iyo ng kahilingan sa pagsusuri, o nagpasa ng isyu sa iyo sa GitLab.
  • Mga pindutan ng sidebar – Magkaroon ng kamalayan sa kung gaano karaming mga review, hindi pa nababasang mga mensahe, mga takdang-aralin at bukas na mga kahilingan sa pagsasanib na kasalukuyang mayroon ka gamit ang mga button sa Mattermost sidebar.
  • Mga subscription sa mga proyekto – gumamit ng mga slash command para mag-subscribe sa mahahalagang channel para makatanggap ng mga notification tungkol sa mga bagong kahilingan o isyu sa pagsasama sa GitLab.

Ngayon ang kanyang buong kumpanya ay gumagamit ng parehong GitLab at Mattermost upang pabilisin ang mga daloy ng trabaho gamit ang ChatOps. Bilang resulta, nakapaghatid sila ng mga update nang mas mabilis, na humantong sa tatlong beses na pagtaas sa bilang ng mga proyekto at microservice na pinagtatrabahuhan ng team at anim na beses na pagtaas sa bilang ng mga deployment ng produksyon sa buong taon, habang lumalaki ang development at agronomist team sa pamamagitan ng 5 beses.

Paano ginagamit ng mga enterprise development team ang GitLab at Mattermost ChatOps para mapabilis ang pag-develop

Pinapabuti ng kumpanya ng software development ang pagiging produktibo nang may higit na transparency at visibility sa mga pagbabago sa code at configuration

Ang kumpanya ng software at data services na nakabase sa Maryland ay nagpatupad din ng Mattermost na isinama sa GitLab upang mapabuti ang pagiging produktibo at tuluy-tuloy na pakikipagtulungan. Nagsasagawa sila ng analytics, namamahala ng data, at bumuo ng software para sa mga biomedical na organisasyon sa buong mundo.

Ang GitLab ay madalas na ginagamit ng kanilang koponan at nakikita nila ang paggamit nito bilang isang malaking benepisyo sa kanilang mga daloy ng trabaho sa DevOps.

Pinagsama rin nila ang GitLab at Mattermost, pinagsama-sama ang mga commit mula sa GitLab sa isang feed sa Mattermost sa pamamagitan ng mga webhook, na nagpapahintulot sa management na makakuha ng bird's eye view sa kung ano ang nangyayari sa kumpanya sa isang partikular na araw. Idinagdag din ang mga update sa pamamahala ng configuration at pagkontrol sa bersyon, na nagbigay ng mga snapshot ng iba't ibang pagbabagong ginawa sa panloob na imprastraktura at mga system sa buong araw.

Nag-set up din ang team ng magkakahiwalay na channel na "Heartbeat" para magpadala ng mga notification tungkol sa mga kaganapan sa app. Sa pamamagitan ng pagpapadala ng mga mensaheng ito sa mga partikular na channel ng Heartbeat, maiiwasan mong makagambala sa mga miyembro ng team mula sa mga pag-uusap sa trabaho sa mga regular na channel, na nagpapahintulot sa mga miyembro ng team na hiwalay na lumipat sa mga tanong na naka-post sa mga channel ng Heartbeat.

Ang isa sa mga pangunahing benepisyo ng pagsasamang ito ay ang kakayahang makita sa mga pagbabago sa mga bersyon at real-time na pamamahala ng configuration. Sa sandaling maisagawa at maitulak ang mga pagbabago, magpapadala ng notification sa channel ng Heartbeat nang real time. Kahit sino ay maaaring mag-subscribe sa naturang channel. Wala nang palipat-lipat sa pagitan ng mga application, pagtatanong sa mga miyembro ng team, o pagsubaybay sa mga commit - lahat ito ay nasa Mattermost, habang ang pamamahala ng configuration at pagbuo ng application ay ginagawa sa GitLab.

Ang GitLab at Mattermost ChatOps ay nagpapataas ng Visibility at Productivity sa Bilis ng Pag-unlad

Ang pinakamahalaga ay kasama GitLab Omnibus package, nagbibigay ng out-of-the-box na suporta para sa GitLab SSO, pre-packaged na GitLab integrations at PostgreSQL support, pati na rin ang Prometheus integration na nagbibigay-daan para sa pagsubaybay sa system at pamamahala ng aksyon tugon ng insidente. Sa wakas, ang Mattermost ay maaari na ngayong i-deploy gamit ang GitLab Cloud Native.

Ang mga koponan ng DevOps ay hindi kailanman nagkaroon ng mas mahusay na tool na may mga benepisyo na mayroon ang ChatOps hanggang ngayon. I-install ang GitLab Omnibus na may Mattermost at subukan ito para sa iyong sarili!

Iyon lang. Gaya ng dati, iniimbitahan namin ang lahat libreng webinar, kung saan pag-aaralan natin ang mga tampok ng pakikipag-ugnayan sa pagitan ng Jenkins at Kubernetes, isaalang-alang ang mga halimbawa ng paggamit ng diskarteng ito, at susuriin ang paglalarawan ng pagpapatakbo ng plugin at operator.

Pinagmulan: www.habr.com

Magdagdag ng komento