Yuav ua li cas peb siv SonarQube thiab paub txog nws lub peev xwm zoo

Yuav ua li cas peb siv SonarQube thiab paub txog nws lub peev xwm zoo

Peb xav qhia peb cov kev paub dhau los ntawm kev siv SonarQube platform rau kev soj ntsuam tas li thiab ntsuas cov lej zoo rau hauv cov txheej txheem kev txhim kho uas twb muaj lawm ntawm DPO system (ntxiv rau Alameda depository thiab clearing accounting system) ntawm National Settlement Depository.

National Settlement Depository (Moscow Exchange group of tuam txhab) yog ib lub tuam txhab tseem ceeb hauv kev lag luam nyiaj txiag, khaws cia thiab suav nyiaj rau kev nyab xeeb ntawm Lavxias thiab cov neeg tawm txawv teb chaws muaj nqis tshaj 50 trillion rubles. Kev loj hlob ntim ntawm kev ua haujlwm tau ua los ntawm lub kaw lus, nrog rau kev nthuav dav ntxiv ntawm kev ua haujlwm, yuav tsum muaj kev tswj hwm qhov zoo ntawm qhov system. Ib qho cuab yeej kom ua tiav lub hom phiaj no yog SonarQube static analyzer. Hauv tsab xov xwm no peb yuav piav qhia txog kev ua tiav ntawm kev ua tiav ntawm kev siv SonarQube static analyzer rau hauv cov txheej txheem kev loj hlob uas twb muaj lawm ntawm peb lub tuam tsev.

Luv luv txog lub department

Peb lub peev xwm muaj xws li cov qauv hauv qab no: kev them nyiaj rau NSD cov neeg siv khoom, kev tswj hwm cov ntaub ntawv hluav taws xob (EDF), kev ua lag luam cov ntaub ntawv khaws cia (sau npe ntawm kev lag luam hauv khw muag khoom), kev sib cuam tshuam hluav taws xob ntawm cov neeg siv khoom thiab NSD, thiab ntau ntxiv. Feem ntau, muaj ntau txoj haujlwm yuav tsum tau ua nyob rau sab kev ua haujlwm ntawm kev ua haujlwm. Peb ua haujlwm raws li kev thov. Cov ntawv thov los ntawm cov tub ceev xwm ua haujlwm tau ua tiav los ntawm cov kws tshuaj ntsuam: lawv sau cov neeg siv khoom xav tau thiab nthuav qhia peb nrog lawv lub zeem muag ntawm qhov nws yuav tsum haum rau hauv qhov program. Tom ntej no yog cov txheej txheem txheej txheem: kev txhim kho code - kev sim - kev sim ua haujlwm - xa cov lej mus rau cov khoom siv hluav taws xob rau cov neeg siv khoom ncaj qha.

Vim li cas SonarQube?

Nov yog thawj qhov kev paub dhau los ntawm peb lub tuam tsev hauv kev siv lub platform rau kev tswj hwm kev tswj hwm zoo - yav dhau los peb tau ua nws manually, ua tsuas yog kev tshuaj xyuas cov cai. Tab sis kev loj hlob ntim ntawm kev ua haujlwm yuav tsum muaj automation ntawm cov txheej txheem no. Tsis tas li ntawd, pab neeg no tseem suav nrog cov neeg ua haujlwm tsis muaj kev paub dhau los uas tsis paub txog kev txhim kho sab hauv thiab nyiam ua yuam kev ntau dua. Yuav kom tswj tau qhov zoo ntawm cov cai, nws tau txiav txim siab los siv lub tshuab ntsuas static. Txij li thaum SonarQube twb tau siv nyob rau hauv qee qhov NSD systems, nws tsis siv sijhawm ntev los xaiv. Yav dhau los, cov npoj yaig los ntawm lwm lub tuam tsev tau siv nws los tshuaj xyuas cov cai ntawm microservices hauv Alameda system (NSD tus kheej tso nyiaj thiab tshem tawm cov ntaub ntawv pov thawj), hauv CFT (cov ntaub ntawv kaw lus rau kev tswj hwm nyiaj txiag, daim ntawv tshuav nyiaj, npaj yuav tsum tau ua thiab qhia sab hauv), hauv qee qhov lwm systems. Rau kev sim, peb txiav txim siab pib nrog cov dawb version ntawm SonarQube. Yog li cia peb mus rau peb rooj plaub.

Cov txheej txheem ua

Peb muaj:

  • kev sib dhos tsis siv neeg hauv TeamCity;
  • cov txheej txheem ntawm uploading code ntawm MergeRequest los ntawm lub feature ceg mus rau tus tswv ceg nyob rau hauv GitLab tau teeb tsa (txoj kev loj hlob raws li GitHub Flow);
  • SonarQube, teeb tsa los txheeb xyuas cov cai rau DPO system ntawm lub sijhawm.

Peb lub hom phiaj: siv tsis siv neeg kev tshuaj ntsuam xyuas hauv CI/CD cov txheej txheem ntawm DPO.

Yuav tsum configure: cov txheej txheem ntawm kev txiav txim xyuas cov lej nrog tus ntsuas zoo li qub nrog txhua MergeRequest mus rau ceg loj.

Cov. Lub hom phiaj daim duab yog raws li nram no: sai li sai tau raws li tus tsim tawm uploads hloov mus rau lub feature ceg, ib tug tsis siv neeg xyuas rau tshiab yuam kev nyob rau hauv lub code yog launched. Yog tias tsis muaj qhov yuam kev, ces cov kev hloov pauv raug tso cai lees txais, txwv tsis pub cov kev ua yuam kev yuav tsum raug kho. Twb tau nyob rau theem pib peb tuaj yeem txheeb xyuas qee qhov yuam kev hauv cov lej. Lub kaw lus muaj qhov hloov pauv tau yooj yim: nws tuaj yeem teeb tsa hauv txoj hauv kev uas nws ua haujlwm rau cov haujlwm tshwj xeeb ntawm cov neeg tsim khoom, rau txhua qhov system thiab programming style.

Teeb tsa QualityGate hauv SonarQube

QualityGate tsom xam yog ib yam uas peb nyeem hauv qhov tob hauv Internet. Thaum pib, peb siv txoj hauv kev sib txawv, ntau txoj hauv kev thiab, qee txoj hauv kev, tsis yog tag nrho. Ua ntej, peb tau khiav qhov scan ob zaug dhau los ntawm SonarQube: peb tau tshuaj xyuas cov ceg haujlwm thiab cov ceg uas peb yuav mus ua ke cov ceg feature, thiab tom qab ntawd muab piv rau cov lej yuam kev. Txoj kev no tsis ruaj khov thiab tsis tas yuav tsim qhov tseeb. Thiab tom qab ntawd peb pom tias es tsis txhob khiav SonarQube ob zaug, peb tuaj yeem teeb tsa tus lej ntawm qhov ua yuam kev (QualityGate) thiab txheeb xyuas tsuas yog cov ceg uas koj upload thiab sib piv.

Yuav ua li cas peb siv SonarQube thiab paub txog nws lub peev xwm zoo

Txog tam sim no peb tseem tab tom siv kev tshuaj xyuas cov cai qub qub. Nws yog ib qho tsim nyog sau cia tias SonarQube tsis sib haum nrog qee hom lus programming, suav nrog Delphi. Tam sim no, peb tsom xam tsuas yog PLSql code rau peb qhov system.

Nws ua haujlwm zoo li no:

  • Peb tsom xam tsuas yog PL / SQL code rau peb qhov project.
  • SonarQube muaj QualityGate teeb tsa kom tus lej ntawm qhov yuam kev tsis nce nrog kev cog lus.
  • Tus naj npawb ntawm qhov yuam kev ntawm thawj zaug tso tawm yog 229. Yog tias muaj ntau qhov yuam kev thaum lub sijhawm ua haujlwm, ces kev sib koom ua ke tsis raug tso cai.
  • Tsis tas li ntawd, yog tias qhov ua yuam kev raug kho, nws yuav tuaj yeem rov kho dua QualityGate.
  • Koj tuaj yeem ntxiv cov ntsiab lus tshiab rau kev tsom xam, piv txwv li, kev them nyiaj code nrog kev xeem, thiab lwm yam.

Scheme ntawm kev ua haujlwm:

Yuav ua li cas peb siv SonarQube thiab paub txog nws lub peev xwm zoo

Cov lus ntawm tsab ntawv qhia tau hais tias tus naj npawb ntawm qhov yuam kev nyob rau hauv lub feature ceg tsis tau nce. Yog li txhua yam yog OK.

Yuav ua li cas peb siv SonarQube thiab paub txog nws lub peev xwm zoo

Lub Merge khawm yuav muaj.

Yuav ua li cas peb siv SonarQube thiab paub txog nws lub peev xwm zoo

Nyob rau hauv cov lus ntawm tsab ntawv, koj tuaj yeem pom tias tus naj npawb ntawm qhov yuam kev hauv cov ceg feature tau dhau los ua ntau dua qhov tau txais. Yog li txhua yam tsis zoo.

Yuav ua li cas peb siv SonarQube thiab paub txog nws lub peev xwm zoo

Lub Merge khawm yog liab. Tam sim no, tsis muaj kev txwv tsis pub rub tawm cov kev hloov pauv raws li cov cai yuam kev, tab sis qhov no yog ua los ntawm kev txiav txim siab ntawm tus tsim tawm lub luag haujlwm. Nyob rau hauv lub neej yav tom ntej, koj muaj peev xwm tiv thaiv xws li commits los ntawm muab ntxiv rau lub ntsiab ceg.

Yuav ua li cas peb siv SonarQube thiab paub txog nws lub peev xwm zoo

Kev ua haujlwm ywj pheej ntawm kev ua yuam kev

Tom ntej no, koj yuav tsum tau kuaj xyuas txhua qhov yuam kev uas tau pom los ntawm lub kaw lus, vim tias SonarQube txheeb xyuas raws li nws cov qauv nruj. Qhov nws xav tias qhov yuam kev yuav tsis yog ib qho hauv peb cov cai. Yog li ntawd, koj yuav tsum tau kuaj xyuas thiab nco ntsoov seb qhov no puas yog qhov yuam kev tiag tiag, lossis tsis muaj qhov yuav tsum tau hloov kho hauv peb cov xwm txheej. Txoj kev no peb txo tus lej ntawm qhov yuam kev. Nyob rau tib lub sijhawm, lub kaw lus yuav kawm kom nkag siab txog cov nuances no.

Peb tuaj txog dab tsi

Peb lub hom phiaj yog kom nkag siab seb nws puas yuav pom zoo hauv peb rooj plaub kom hloov cov lej tshuaj xyuas mus rau automation. Thiab qhov tshwm sim tau nyob mus txog qhov kev cia siab. SonarQube tso cai rau peb ua haujlwm nrog cov lus peb xav tau, ua qhov kev soj ntsuam zoo, thiab muaj peev xwm kawm los ntawm cov lus qhia tsim tawm. Zuag qhia tag nrho, peb zoo siab nrog peb thawj qhov kev paub siv SonarQube thiab npaj los txhim kho ntxiv rau hauv cov kev taw qhia no. Peb cia siab tias yav tom ntej peb yuav muaj peev xwm txuag tau ntau lub sijhawm thiab kev siv zog ntawm kev tshuaj xyuas cov cai thiab ua kom nws zoo dua los ntawm kev tshem tawm cov tib neeg. Tej zaum nyob rau hauv tus txheej txheem peb yuav nrhiav tau qhov shortcomings ntawm lub platform los yog, conversely, peb yuav tau ntseeg ib zaug ntxiv tias qhov no yog ib tug txias yam uas muaj peev xwm loj.

Hauv tsab xov xwm tshuaj xyuas no peb tau tham txog peb cov neeg paub nrog SonarQube static analyzer. Yog tias koj muaj lus nug, thov sau rau hauv cov lus. Yog tias koj txaus siab rau lub ntsiab lus no, hauv kev tshaj tawm tshiab peb yuav piav qhia ntau ntxiv txog yuav ua li cas teeb tsa txhua yam kom raug thiab sau cov lej los ua qhov kev kuaj ntawd.

Tus sau ntawv: atanya

Tau qhov twg los: www.hab.com

Ntxiv ib saib