Mashandisiro atakaita SonarQube uye takaona kugona kwayo kukuru

Mashandisiro atakaita SonarQube uye takaona kugona kwayo kukuru

Tinoda kugovera ruzivo rwedu rwekushandisa iyo SonarQube chikuva chekuenderera mberi kwekuongorora uye kuyerwa kwemhando yekodhi mune iripo nzira yekuvandudza yeDPO system (kuwedzera kune Alameda depository uye clearing accounting system) yeNational Settlement Depository.

The National Settlement Depository (Moscow Exchange boka remakambani) ndeimwe yemakambani akakosha muhupfumi hwehupfumi, kuchengetedza uye accounting yezvibatiso zveRussia nevekunze vanoburitsa zvinodarika 50 trillion rubles. Kukura kwehuwandu hwekushanda kunoitwa nehurongwa, pamwe nekuenderera mberi kwekuwedzera kwekushanda, kunoda kuchengetedza yakakwirira mhando sosi kodhi yemasisitimu. Chishandiso chimwe chekuzadzisa chinangwa ichi iSonarQube static analyzer. Muchikamu chino tichatsanangura chiitiko chakabudirira chekushandisa zvisina musono SonarQube static analyzer mune iripo budiriro maitirwo edhipatimendi redu.

Muchidimbu nezvedhipatimendi

Kugona kwedu kunosanganisira mamodule anotevera: kubhadhara kuvatengi veNSD, kutonga kwemagwaro emagetsi (EDF), kugadzirisa mameseji ezvekutengesa (kunyoreswa kwekutengeserana kwepamusoro-soro), nzira dzekudyidzana kwemagetsi pakati pevatengi neNSD, nezvimwe zvakawanda. Kazhinji, kune basa rakawanda rinofanira kuitwa padivi rehunyanzvi rekuita mabasa. Tinoshanda pahwaro hwezvikumbiro. Zvikumbiro kubva kumahofisi ekushanda zvinogadziriswa nevanoongorora: vanotora zvinodiwa nemutengi uye vanotipa chiono chavo chekuti chinofanira kupinda sei muchirongwa. Inotevera ndiyo yakajairwa chirongwa: kodhi yekuvandudza - kuyedza - kuyedza mashandiro - kuendeswa kwekodhi kudunhu rekugadzira kune akananga mutengi.

Sei SonarQube?

Ichi ndicho chiitiko chekutanga chedhipatimendi redu mukuita chikuva chekudzora mhando yekodhi - kare takazviita nemaoko, tichingoita wongororo yekodhi chete. Asi kukura kwehuwandu hwebasa kunoda automation yeiyi maitiro. Mukuwedzera, boka racho rinosanganisira vashandi vasina ruzivo vasina ruzivo rwakakwana nemitemo yekuvandudza mukati uye vanowanzoita zvikanganiso zvakawanda. Kudzora kunaka kwekodhi, zvakasarudzwa kushandisa static analyzer. Sezvo SonarQube yakanga yatoshandiswa mune mamwe maNSD masisitimu, hazvina kutora nguva yakareba kusarudza. Pakutanga, vaaishanda navo kubva kune mamwe madhipatimendi vaiishandisa kuongorora kodhi yemicroservices muAlameda system (NSD's own depository uye clearing accounting system), muCFT (information system yekuchengetedza accounting, mabhareshi, kugadzirira zvinosungirwa uye zvemukati kushuma), mune dzimwe nzira. mamwe masisitimu. Zvekuyedza, takafunga kutanga neiyo yemahara vhezheni yeSonarQube. Saka ngatipfuurirei panyaya yedu.

Implementation process

Tine:

  • otomatiki system musangano muTeamCity;
  • maitiro ekurodha kodhi kuburikidza neMergeRequest kubva kubazi reficha kuenda kune master bazi muGitLab yakagadziriswa (yekuvandudza maitiro maererano neGitHub Flow);
  • SonarQube, yakagadzirirwa kuongorora kodhi yeDPO system pane hurongwa.

Chinangwa chedu: ita otomatiki kodhi ongororo muCI/CD maitiro eDPO.

Inoda kugadzirisa: maitiro ekutarisa otomatiki kodhi ine static analyzer neMergeRequest yega yega kubazi guru.

Avo. Mufananidzo waunonangwa wakaita seizvi: kana mugadziri angoisa shanduko kuchikamu chebazi, otomatiki cheki yezvikanganiso zvitsva mukodhi inotangwa. Kana pasina zvikanganiso, ipapo shanduko dzinobvumirwa kugamuchirwa, kana zvisina kudaro zvikanganiso zvichafanirwa kugadziriswa. Nechekare padanho rekutanga takakwanisa kuona imwe nhamba yezvikanganiso mukodhi. Iyo sisitimu ine zvigadziriso zvinochinjika: inogona kugadzirwa nenzira yekuti inoshanda kune chaiwo mabasa evagadziri, kune yega yega sisitimu uye maitiro ehurongwa.

Kumisikidza QualityGate muSonarQube

QualityGate kuongororwa chinhu chatinoverenga pakadzika peInternet. Pakutanga, takashandisa nzira yakasiyana, yakaoma uye, mune dzimwe nzira, kwete yakakwana zvachose. Kutanga, isu takamhanyisa scan kaviri kuburikidza neSonarQube: isu takaongorora iyo ficha bazi uye bazi kwataizobatanidza iro rebazi rebazi, tobva taenzanisa nhamba yezvikanganiso. Iyi nzira yakanga isina kugadzikana uye haina kugara ichiburitsa mhinduro chaiyo. Uye takazoona kuti panzvimbo yekumhanyisa SonarQube kaviri, tinogona kuseta muganho pahuwandu hwezvikanganiso zvakaitwa (QualityGate) uye ongorora chete bazi raunorodha nekuenzanisa.

Mashandisiro atakaita SonarQube uye takaona kugona kwayo kukuru

Parizvino isu tichiri kushandisa iyo yekare kodhi ongororo. Zvakakosha kucherechedza kuti SonarQube haienderane nemimwe mitauro yekuronga, kusanganisira Delphi. Parizvino, isu tinoongorora chete PLSql kodhi yehurongwa hwedu.

Inoshanda seizvi:

  • Isu tinoongorora chete PL/SQL kodhi yepurojekiti yedu.
  • SonarQube ine QualityGate yakagadziriswa kuitira kuti nhamba yezvikanganiso isawedzere nekuita.
  • Nhamba yezvikanganiso pakutanga kwekutanga yaive 229. Kana paine zvikanganiso zvakawanda panguva yekuzvipira, saka kusanganisa hakubvumirwe.
  • Kupfuurirazve, kana zvikanganiso zvikagadziriswa, zvinogoneka kugadzirisa zvakare QualityGate.
  • Iwe unogona zvakare kuwedzera mapoinzi matsva ekuongorora, semuenzaniso, kodhi yekuvhara nemiedzo, nezvimwe.

Scheme yebasa:

Mashandisiro atakaita SonarQube uye takaona kugona kwayo kukuru

Maonero echinyorwa anoratidza kuti nhamba yezvikanganiso muchikamu chebazi haina kuwedzera. Saka zvese zvakanaka.

Mashandisiro atakaita SonarQube uye takaona kugona kwayo kukuru

Bhatani reMerge rinowanikwa.

Mashandisiro atakaita SonarQube uye takaona kugona kwayo kukuru

Mune zvirevo zvechinyorwa, unogona kuona kuti nhamba yezvikanganiso muchikamu chebazi chave kupfuura kugamuchirwa. Saka zvese ZVAKAIPA.

Mashandisiro atakaita SonarQube uye takaona kugona kwayo kukuru

Bhatani reMerge rakatsvuka. Parizvino, hapana kurambidzwa kurodha shanduko zvichibva pane isina kururama kodhi, asi izvi zvinoitwa pakufunga kwemugadziri ane mutoro. Mune ramangwana, unogona kudzivirira kuzvipira kwakadaro kubva kuwedzerwa kubazi guru.

Mashandisiro atakaita SonarQube uye takaona kugona kwayo kukuru

Basa rakazvimirira pane zvikanganiso

Tevere, iwe unofanirwa kutarisa zvikanganiso zvese zvakaonekwa nehurongwa, nekuti SonarQube inoongorora zvinoenderana neyakaomesesa zviyero. Zvaanoona kukanganisa zvinogona kunge zvisiri izvo mukodhi yedu. Naizvozvo, iwe unofanirwa kutarisa uye kuona kana ichi chiri chikanganiso chaicho, kana kuti hapana chikonzero chekugadzirisa mumamiriro edu ezvinhu. Nenzira iyi tinoderedza kuwanda kwekukanganisa. Nekufamba kwenguva, sisitimu inozodzidza kunzwisisa aya nuances.

Tavinga chii

Chinangwa chedu chaive chekunzwisisa kana zvingave zvine musoro kwatiri kuendesa kodhi ongororo kune otomatiki. Uye mugumisiro wakararama maererano nezvaitarisirwa. SonarQube inotibvumira kushanda nemitauro yatinoda, inoita ongororo ine hunyanzvi, uye ine mukana wekudzidza kubva kumazano evagadziri. Pakazere, isu tinofara nechiitiko chedu chekutanga tichishandisa SonarQube uye kuronga kuenderera mberi mune ino nzira. Tinotarisira kuti mune ramangwana tichakwanisa kuchengetedza nguva yakawanda uye simba pakuongorora kwekodhi uye kuita kuti zvive nani nekubvisa chinhu chevanhu. Zvichida mukuita tichawana kukanganisa kwepuratifomu kana, zvakasiyana, tichagutsikana zvakare kuti ichi chinhu chinotonhorera chine simba guru.

Muchinyorwa chino chekuongorora takataura nezve kuzivana kwedu neSonarQube static analyzer. Kana uine mibvunzo, tapota nyora mumashoko. Kana iwe uchifarira nyaya iyi, mune rimwe bhuku idzva tichatsanangura zvakadzama nzira yekumisikidza zvese nemazvo uye kunyora kodhi kuita cheki yakadaro.

Munyori wezvinyorwa: atanya

Source: www.habr.com

Voeg