Otu anyị siri tinye SonarQube wee mata nnukwu ike ya

Otu anyị siri tinye SonarQube wee mata nnukwu ike ya

Anyị chọrọ ịkekọrịta ahụmịhe anyị nke imejuputa usoro SonarQube maka nyocha na-aga n'ihu na nha nke ogo koodu n'ime usoro mmepe dị adị nke sistemụ DPO (mgbakwunye na ntinye ego nke Alameda na ikpochapụ usoro ndekọ ego) nke National Settlement Depository.

The National Settlement Depository (Moscow Exchange otu nke ụlọ ọrụ) bụ otu n'ime isi ụlọ ọrụ na ego akụrụngwa, na-echekwa na aza ajụjụ maka ala nke Russian na mba ọzọ na-enye ihe ruru ihe karịrị 50 trillion rubles. Ọnụ ọgụgụ na-eto eto nke arụ ọrụ nke usoro ahụ na-arụ, yana mgbasawanye na-aga n'ihu na-arụ ọrụ, chọrọ ịnọgide na-enwe koodu isi iyi dị elu nke usoro. Otu ngwaọrụ iji nweta ebumnuche a bụ SonarQube static analyzer. N'isiokwu a, anyị ga-akọwa ahụmahụ na-aga nke ọma nke imejuputa SonarQube static analyzer n'ime usoro mmepe nke ngalaba anyị.

Na nkenke banyere ngalaba

Ikike anyị gụnyere modul ndị a: ịkwụ ụgwọ nye ndị ahịa NSD, njikwa akwụkwọ eletrọnịkị (EDF), nhazi ozi nchekwa azụmaahịa (ndebanye aha nke azụmahịa n'elu), ọwa nke mmekọrịta elektrọnik n'etiti ndị ahịa na NSD, na ọtụtụ ndị ọzọ. N'ozuzu, enwere ọtụtụ ọrụ a ga-arụ n'akụkụ teknụzụ nke ọrụ arụmọrụ. Anyị na-arụ ọrụ na ndabere nke arịrịọ. A na-edozi ngwa sitere na ndị ọrụ na-arụ ọrụ site na ndị nyocha: ha na-anakọta ihe ndị ahịa chọrọ ma na-ewetara anyị ọhụụ ha ka ọ ga-esi daba na mmemme ahụ. Ọzọ bụ ọkọlọtọ ọkọlọtọ: koodu mmepe - ule - ọrụ ikpe - nnyefe nke koodu na sekit mmepụta na kpọmkwem ahịa.

Gịnị kpatara SonarQube?

Nke a bụ ahụmahụ mbụ nke ngalaba anyị n'imejuputa ikpo okwu maka njikwa koodu - na mbụ anyị ji aka mee ya, na-eduzi naanị nyocha koodu. Mana oke ọrụ na-eto eto chọrọ akpaaka nke usoro a. Na mgbakwunye, ndị otu ahụ na-agụnyekwa ndị ọrụ na-enweghị ahụmahụ bụ ndị na-amaghị nke ọma na iwu mmepe nke ime ma na-emekarị mmejọ. Iji chịkwaa àgwà nke koodu ahụ, e kpebiri ime ihe nyocha static. Ebe ọ bụ na ejirila SonarQube na ụfọdụ sistemụ NSD, enweghị nhọrọ dị ogologo. Na mbụ, ndị ọrụ ibe si na ngalaba ndị ọzọ na-eji ya nyochaa koodu nke microservices na Alameda usoro (NSD's depository and clearing accounting system), na CFT (usoro ozi maka ịnọgide na-enwe ndekọ ego, akwụkwọ nguzozi, na-akwadebe akwụkwọ ikike na nke ime ụlọ), na ụfọdụ. usoro ndị ọzọ. Maka nnwale, anyị kpebiri ibido na ụdị SonarQube n'efu. Ya mere, ka anyị gaa n'ihu n'okwu anyị.

Usoro mmejuputa

Anyị nwere:

  • mgbakọ usoro akpaka na TeamCity;
  • Usoro nke bulite koodu site na MergeRequest site na ngalaba njirimara gaa na ngalaba nna ukwu na GitLab ka ahaziri (usoro mmepe dịka GitHub Flow);
  • SonarQube, ahaziri iji nyochaa koodu maka sistemụ DPO na nhazi oge.

Ebumnuche anyị: mejuputa nyocha koodu akpaka na usoro CI / CD nke DPO.

Kwesịrị ịhazi: usoro nke na-akpaghị aka ịlele koodu na static analyzer na onye ọ bụla MergeRequest na isi alaka.

Ndị ahụ. Foto e lekwasịrị anya bụ nke a: ozugbo onye nrụpụta bulitere mgbanwe na ngalaba njirimara, a ga-ewepụta nlele akpaka maka mperi ọhụrụ na koodu ahụ. Ọ bụrụ na enweghị njehie, mgbe ahụ, a na-ekwe ka a nabata mgbanwe ndị ahụ, ma ọ bụghị ya, a ga-edozi njehie ahụ. Ugbua na ọkwa mbụ anyị nwere ike ịchọpụta ụfọdụ njehie na koodu. Usoro ahụ nwere ntọala na-agbanwe agbanwe: enwere ike ịhazi ya n'ụzọ ọ na-arụ ọrụ maka ọrụ dị iche iche nke ndị mmepe, maka usoro ọ bụla na ụdị mmemme.

Ịtọlite ​​QualityGate na SonarQube

QualityGate analysis bụ ihe anyị na-agụ na omimi nke Ịntanetị. Na mbụ, anyị na-eji ụzọ dị iche, dị mgbagwoju anya na, n'ụzọ ụfọdụ, ọ bụghị kpamkpam. Nke mbụ, anyị na-agba ọsọ nyocha ahụ ugboro abụọ site na SonarQube: anyị nyochara alaka ụlọ ọrụ na alaka ebe anyị ga-ejikọta ngalaba njirimara, wee jiri ọnụ ọgụgụ nke njehie tụnyere. Usoro a esighi ike ma ọ bụghị mgbe niile na-arụpụta nsonaazụ ziri ezi. Ma mgbe ahụ, anyị chọpụtara na kama ịgba ọsọ SonarQube ugboro abụọ, anyị nwere ike ịtọ oke na ọnụ ọgụgụ nke njehie mere (QualityGate) wee nyochaa naanị alaka ụlọ ọrụ ị na-ebugo ma tụnyere.

Otu anyị siri tinye SonarQube wee mata nnukwu ike ya

Maka ugbu a, anyị ka na-eji nyocha koodu mbụ karịa. Ọ dị mma ịmara na SonarQube adabaghị na ụfọdụ asụsụ mmemme, gụnyere Delphi. N'oge a, anyị na-enyocha naanị PLSql koodu maka sistemụ anyị.

Ọ na-arụ ọrụ dị ka nke a:

  • Anyị na-enyocha naanị koodu PL/SQL maka ọrụ anyị.
  • Ahaziri SonarQube QualityGate ka ọnụọgụ mmejọ ghara ịba ụba site na itinye aka.
  • Ọnụọgụ nke mperi na mbido mbụ bụ 229. Ọ bụrụ na enwere ọtụtụ mperi n'oge a na-eme, anaghị anabata njikọ.
  • Ọzọkwa, ọ bụrụ na emeziri mperi, ọ ga-ekwe omume ịhazigharị QualityGate.
  • Ịnwekwara ike ịgbakwunye isi ihe ọhụrụ maka nyocha, dịka ọmụmaatụ, mkpuchi koodu na ule, wdg.

Atụmatụ ọrụ:

Otu anyị siri tinye SonarQube wee mata nnukwu ike ya

Nkwupụta nke edemede ahụ na-egosi na ọnụọgụ njehie dị na ngalaba njirimara abawanyela. Yabụ na ihe niile dị mma.

Otu anyị siri tinye SonarQube wee mata nnukwu ike ya

Bọtịnụ Njikọ ga-adị.

Otu anyị siri tinye SonarQube wee mata nnukwu ike ya

Na nkwupụta nke edemede ahụ, ị ​​​​nwere ike ịhụ na ọnụ ọgụgụ nke njehie na ngalaba njirimara aghọwo ihe a na-anabata. Yabụ na ihe niile dị njọ.

Otu anyị siri tinye SonarQube wee mata nnukwu ike ya

Bọtịnụ Njikọ ahụ na-acha uhie uhie. N'oge a, ọ nweghị mmachibido na-ebugote mgbanwe dabere na koodu na-ezighi ezi, mana nke a na-eme na ikike nke onye nrụpụta ọrụ. N'ọdịnihu, ị nwere ike igbochi mmegide ndị dị otú ahụ na-agbakwunye na alaka isi.

Otu anyị siri tinye SonarQube wee mata nnukwu ike ya

Ọrụ nọọrọ onwe ya na mperi

Na-esote, ịkwesịrị ịlele njehie niile sistemụ ahụ achọpụtara, n'ihi na SonarQube na-enyocha dịka ụkpụrụ ya siri dị. Ihe ọ na-ewere dị ka njehie nwere ike ọ gaghị abụ otu n'ime koodu anyị. Ya mere, ịkwesịrị ịlele ma mara ma nke a ọ bụ n'ezie njehie, ma ọ bụ na ọ dịghị mkpa idezi na ọnọdụ anyị. N'ụzọ dị otú a, anyị na-ebelata ọnụ ọgụgụ nke njehie. Ka oge na-aga, usoro ahụ ga-amụta ịghọta nuances ndị a.

Kedu ihe anyị bịarutere

Ebumnuche anyị bụ ịghọta ma ọ ga-adị mma n'ọnọdụ anyị ịnyefe nyocha koodu na akpaaka. Ihe si na ya pụta dịrị ndụ ruo ihe a tụrụ anya ya. SonarQube na-enye anyị ohere iji asụsụ ndị anyị chọrọ ịrụ ọrụ, na-eme nyocha nke ọma ma nwee ike ịmụta site na ndụmọdụ ndị nrụpụta. N'ozuzu, anyị nwere obi ụtọ na ahụmahụ mbụ anyị na-eji SonarQube ma na-eme atụmatụ ịmalite n'ihu na ntụziaka a. Anyị na-atụ anya na n'ọdịnihu anyị ga-enwe ike ịzọpụta oge na mgbalị na nyocha koodu ma mee ka ọ dị mma site n'iwepụ ihe mmadụ na-akpata. Ikekwe n'ime usoro a, anyị ga-achọpụta adịghị ike nke ikpo okwu ma ọ bụ, n'aka nke ọzọ, anyị ga-ekwenye ọzọ na nke a bụ ihe dị mma nke nwere nnukwu ikike.

N'ime akụkọ nlegharị anya a, anyị kwuru maka amata anyị na SonarQube static analyzer. Ọ bụrụ na ị nwere ajụjụ, biko dee na nkọwa. Ọ bụrụ na ị nwere mmasị na isiokwu a, na akwụkwọ ọhụrụ anyị ga-akọwa n'ụzọ zuru ezu otu esi edozi ihe niile n'ụzọ ziri ezi ma dee koodu iji mee nlele dị otú ahụ.

Onye edemede ederede: atanya

isi: www.habr.com

Tinye a comment