NET Core pa Linux, DevOps pa akavalo

Tinapanga DevOps momwe tingathere. Tinali 8 a ife, ndipo Vasya anali wozizira kwambiri mu Windows. Mwadzidzidzi Vasya adachoka, ndipo ndinali ndi ntchito yoyambitsa ntchito yatsopano yomwe idaperekedwa ndi chitukuko cha Windows. Nditataya zodzaza zonse za Windows patebulo, ndidazindikira kuti izi zinali zowawa ...

Umu ndi momwe nkhani imayambira Alexandra Sinchinova pa DevOpsConf. Pamene katswiri wamkulu wa Windows adachoka ku kampaniyo, Alexander adadabwa kuti atani tsopano. Sinthani ku Linux, inde! Alexander akuwuzani momwe adakwanitsira kupanga choyambira ndikusamutsa gawo la chitukuko cha Windows kupita ku Linux pogwiritsa ntchito chitsanzo cha projekiti yomalizidwa ya ogwiritsa ntchito 100.

NET Core pa Linux, DevOps pa akavalo

Momwe mungatulutsire pulojekiti mosavuta komanso mosavutikira ku RPM pogwiritsa ntchito TFS, Puppet, Linux .NET core? Momwe mungathandizire kusinthidwa kwa database ya polojekiti ngati gulu lachitukuko likumva mawu akuti Postgres ndi Flyway kwa nthawi yoyamba, ndipo tsiku lomaliza ndi mawa? Momwe mungaphatikizire ndi Docker? Kodi mungalimbikitse bwanji opanga NET kuti asiye Mawindo ndi ma smoothies m'malo mwa Puppet ndi Linux? Momwe mungathetsere mikangano yamaganizidwe ngati palibe mphamvu, kapena chikhumbo, kapena zothandizira kusunga Windows pakupanga? Za izi, komanso za Kutumiza kwa Webusaiti, kuyesa, CI, za machitidwe ogwiritsira ntchito TFS muzinthu zomwe zilipo kale, ndipo, ndithudi, za ndodo zosweka ndi zothetsera ntchito, muzolemba za lipoti la Alexander.


Chifukwa chake, Vasya adachoka, ntchitoyi ili pa ine, opanga akudikirira mopanda chipiriro ndi mafoloko. Nditazindikira kuti Vasya sangabwezedwe, ndinayamba kuchita bizinesi. Poyamba, ndidayesa kuchuluka kwa ma Win VM m'zombo zathu. Zotsatirazi sizinali mokomera Windows.

NET Core pa Linux, DevOps pa akavalo

Popeza tikupanga DevOps mwachangu, ndidazindikira kuti china chake chiyenera kusinthidwa popereka pulogalamu yatsopano. Panali yankho limodzi lokha - ngati n'kotheka, sinthani zonse ku Linux. Google inandithandiza - panthawiyo .Net inali itatumizidwa kale ku Linux, ndipo ndinazindikira kuti iyi inali yankho!

Chifukwa chiyani .NET core molumikizana ndi Linux?

Panali zifukwa zingapo zochitira zimenezi. Pakati pa "malipiro" ndi "osalipira", ambiri adzasankha chachiwiri - monga ine. Chilolezo cha MSDB chimawononga pafupifupi $1; kusunga gulu la makina a Windows kumawononga mazana a madola. Kwa kampani yayikulu izi ndi ndalama zambiri. Ndichifukwa chake kupulumutsa - chifukwa choyamba. Osati chofunikira kwambiri, koma chimodzi mwazofunikira kwambiri.

Makina enieni a Windows amatenga zinthu zambiri kuposa abale awo a Linux - amalemera. Poganizira kukula kwa kampani yayikulu, tidasankha Linux.

Dongosololi limangophatikizidwa mu CI yomwe ilipo. Timadziona tokha DevOps opita patsogolo, timagwiritsa ntchito Bamboo, Jenkins ndi GitLab CI, kotero ntchito yathu yambiri imagwira ntchito pa Linux.

Chifukwa chomaliza ndi kutsagana kwabwino. Tinafunika kuchepetsa chotchinga cholowera kwa "operekeza" -anyamata omwe amamvetsetsa gawo laukadaulo, amaonetsetsa kuti ntchitoyo isasokonezedwe, ndikusamalira mautumiki kuchokera pamzere wachiwiri. Iwo anali atadziwa kale phula la Linux, kotero ndizosavuta kwa iwo kuti amvetse, kuthandizira ndi kusunga mankhwala atsopano kusiyana ndi kugwiritsa ntchito zina zowonjezera kuti amvetse ntchito yofanana ya mapulogalamu a Windows.

amafuna

Choyamba komanso chofunika kwambiri - kuphweka kwa njira yatsopano yopangira mapulogalamu. Sikuti onse anali okonzeka kusintha, makamaka mawu a Linux atanenedwa. Madivelopa akufuna Visual Studio yawo yomwe amakonda, TFS yokhala ndi ma autotests amisonkhano ndi ma smoothies. Momwe kutumiza kukupanga kumachitikira sikofunikira kwa iwo. Chifukwa chake, tidasankha kuti tisasinthe zomwe tidachita ndikusiya zonse osasintha pakukula kwa Windows.

Ntchito yatsopano ikufunika kuphatikiza mu CI yomwe ilipo. Njanjizo zinalipo kale ndipo ntchito yonse iyenera kuchitidwa poganizira magawo a kasamalidwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe kake.

Kumasuka kwa chithandizo ndi ntchito, monga chikhalidwe chocheperako cholowera kwa omwe atenga nawo mbali atsopano kuchokera kumagulu osiyanasiyana ndi dipatimenti yothandizira.

Tsiku lomalizira - dzulo.

Win Development Group

Kodi gulu la Windows likugwira ntchito ndi chiyani panthawiyo?

NET Core pa Linux, DevOps pa akavalo

Tsopano ndikhoza kunena zimenezo molimba mtima IdentityServer4 ndi njira yabwino yaulere ya ADFS yokhala ndi kuthekera kofanana, kapena chiyani Entity Framework Core - paradaiso kwa wopanga mapulogalamu, komwe simuyenera kuvutikira kulemba zolemba za SQL, koma fotokozani mafunso mu database mu mawu a OOP. Koma ndiye, pokambitsirana za ndondomeko yochitirapo kanthu, ndinayang'ana pa stack iyi ngati kuti ndi cuneiform ya Sumerian, ndikuzindikira PostgreSQL ndi Git zokha.

Pa nthawiyo tinali kugwiritsa ntchito mwakhama Chidole monga dongosolo kasamalidwe kasamalidwe. M'mapulojekiti athu ambiri tidagwiritsa ntchito GitLab CI, zotanuka, ntchito zolemetsa kwambiri zogwiritsidwa ntchito HAProxy kuyang'anira zonse ndi Zabbix, mitsempha grafana ΠΈ Prometheus, Mlenje, ndipo zonsezi zinali kuzungulira zidutswa zachitsulo HPESXi pa VMware. Aliyense akudziwa - tingachipeze powerenga mtundu wanyimbo.

NET Core pa Linux, DevOps pa akavalo

Tiyeni tiwone ndikuyesera kumvetsetsa zomwe zidachitika tisanayambe njira zonsezi.

Chinachitika ndi chiyani

TFS ndi dongosolo lamphamvu kwambiri lomwe silimangopereka kachidindo kuchokera kwa wopanga mpaka kumakina omaliza opangira, komanso lili ndi seti yolumikizana yosinthika ndi mautumiki osiyanasiyana - kuti apereke CI pamtanda.

NET Core pa Linux, DevOps pa akavalo
M'mbuyomu, awa anali mazenera olimba. TFS idagwiritsa ntchito ma Build agents angapo, omwe amagwiritsidwa ntchito kusonkhanitsa ma projekiti ambiri. Wothandizira aliyense ali ndi antchito 3-4 kuti afananize ntchito ndikuwongolera njirayo. Kenako, molingana ndi mapulani otulutsa, TFS idapereka Mangani ophikidwa kumene ku seva ya Windows application.

Kodi tinkafuna kukwaniritsa chiyani?

Timagwiritsa ntchito TFS popereka ndi chitukuko, ndikuyendetsa pulogalamuyo pa seva ya Linux Application, ndipo pali matsenga amtundu wina pakati pawo. Izi Matsenga Bokosi ndipo pali mchere wa ntchito yomwe ili patsogolo pake. Ndisanachilekanitse, ndipita pambali ndikunena mawu ochepa okhudza kugwiritsa ntchito.

Ntchitoyi

Pulogalamuyi imapereka magwiridwe antchito ogwiritsira ntchito makhadi olipidwa.

NET Core pa Linux, DevOps pa akavalo

kasitomala

Panali mitundu iwiri ya ogwiritsa ntchito. Yoyamba adapeza mwayi polowa pogwiritsa ntchito satifiketi ya SSL SHA-2. U wachiwiri panali mwayi wogwiritsa ntchito lolowera ndi mawu achinsinsi.

Hapo

Kenako pempho la kasitomala lidapita ku HAProxy, yomwe idathetsa mavuto awa:

  • chilolezo choyambirira;
  • Kutha kwa SSL;
  • kukonza zopempha za HTTP;
  • zopempha zowulutsa.

Satifiketi ya kasitomala idatsimikizika pamndandanda. Ife - ulamuliro ndipo titha kukwanitsa izi, popeza ife tokha timapereka ziphaso kwa makasitomala.

Samalani nsonga yachitatu, tibwereranso kwa iyo pambuyo pake.

Bwererani

Iwo akukonzekera kupanga backend pa Linux. The backend imalumikizana ndi nkhokwe, imanyamula mndandanda wofunikira wamwayi ndiyeno, kutengera mwayi womwe wogwiritsa ntchitoyo ali nawo, amapereka mwayi wosayina zikalata zachuma ndikuzitumiza kuti zikachitidwe, kapena kupanga lipoti lamtundu wina.

Sungani ndi HAProxy

Kuphatikiza pazigawo ziwiri zomwe kasitomala aliyense adayendera, panalinso chidziwitso chazidziwitso. IdentityServer4 zimangokulolani kuti mulowe, iyi ndi analogue yaulere komanso yamphamvu ADFS - Ntchito za Directory Directory.

Pempho la chizindikiritso lidakonzedwa munjira zingapo. Gawo loyamba - kasitomala adalowa kumbuyo, yomwe idalumikizana ndi seva iyi ndikuwunika kukhalapo kwa chizindikiro kwa kasitomala. Ngati sichinapezeke, pempholo lidabwezeredwa ku zomwe zidachokera, koma ndikuwongoleranso, ndikuwongoleranso zidapita ku chidziwitso.

Gawo lachiwiri - pempho lidalandiridwa kupita patsamba lovomerezeka mu IdentityServer, komwe kasitomala adalembetsa, ndipo chizindikiro chomwe chidali kuyembekezera kwa nthawi yayitali chidawonekera mu database ya IdentityServer.

Gawo lachitatu - kasitomala adabwezedwanso ku nkhani yomwe idachokera.

NET Core pa Linux, DevOps pa akavalo

IdentityServer4 ili ndi mawonekedwe: imabwezera yankho ku pempho lobwereza kudzera pa HTTP. Ziribe kanthu momwe tinkavutikira kukhazikitsa seva, ziribe kanthu momwe tinadziunikira tokha ndi zolembazo, nthawi iliyonse timalandira pempho loyamba lamakasitomala ndi ulalo womwe udabwera kudzera pa HTTPS, ndipo IdentityServer idabwezanso nkhani yomweyo, koma ndi HTTP. Tinadabwa kwambiri! Ndipo tinasamutsa zonsezi kupyolera mu chidziwitso kupita ku HAProxy, ndipo pamitu tinayenera kusintha HTTP protocol ku HTTPS.

Kuwongolera ndi chiyani ndipo mwasunga kuti?

Tinasunga ndalama pogwiritsa ntchito njira yaulere yololeza gulu la ogwiritsa ntchito, zothandizira, popeza sitinayike IdentityServer4 ngati node yosiyana m'gawo lina, koma tinaigwiritsa ntchito pamodzi ndi backend pa seva yomweyi komwe kumbuyo kwa ntchito kumayendera. .

Momwe ziyenera kugwirira ntchito

Chifukwa chake, monga ndidalonjeza - Magic Box. Timamvetsetsa kale kuti tatsimikizika kupita ku Linux. Tiyeni tipange ntchito zenizeni zomwe zimafunikira mayankho.

NET Core pa Linux, DevOps pa akavalo

Zidole zimawonekera. Kuti mupereke ndi kuyang'anira ntchito ndi kasinthidwe ka ntchito, maphikidwe abwino amayenera kulembedwa. Mpukutu wa pensulo umasonyeza bwino lomwe momwe zinachitikira mofulumira komanso mwaluso.

Njira yotumizira. Muyezo ndi RPM. Aliyense amamvetsetsa kuti mu Linux simungathe kuchita popanda izo, koma polojekitiyo, pambuyo pa msonkhano, inali ma fayilo a DLL omwe angathe kuchitidwa. Analipo pafupifupi 150, ntchitoyo inali yovuta kwambiri. Njira yokhayo yogwirizana ndikuyika binary iyi mu RPM ndikugwiritsa ntchito pulogalamuyo.

Kusintha. Tinkayenera kumasula nthawi zambiri, ndipo tinkayenera kusankha momwe tingapangire dzina la phukusi. Ili ndi funso la kuchuluka kwa kuphatikiza ndi TFS. Tidali ndi womanga pa Linux. TFS ikatumiza ntchito kwa wogwirizira - wogwira ntchito - kwa Build agent, imadutsanso mulu wamitundu yosiyanasiyana yomwe imatha kukhala pamalo ogwirira ntchito. Zosintha zachilengedwe izi zili ndi dzina la Build, dzina la mtundu, ndi zina. Werengani zambiri za izi mu gawo la "Kumanga phukusi la RPM".

Kupanga TFS adabwera kudzakhazikitsa Pipeline. M'mbuyomu, tidasonkhanitsa mapulojekiti onse a Windows pa Windows agents, koma tsopano wothandizila wa Linux akuwonekera - Wothandizira Build, yemwe akuyenera kuphatikizidwa mgulu la omanga, olemeretsedwa ndi zinthu zakale, ndikuwuza mtundu wa ma projekiti omwe adzamangidwe pa Build agent. , ndipo mwanjira ina sinthani Pipeline.

IdentityServer. ADFS si njira yathu, tikupita ku Open Source.

Tiyeni tidutse zigawozo.

Matsenga Bokosi

Amakhala ndi magawo anayi.

NET Core pa Linux, DevOps pa akavalo

Linux Build agent. Linux, chifukwa timapangira - ndizomveka. Gawoli lidachitika m'masitepe atatu.

  • Konzani antchito ndipo osati yekha, popeza ntchito yogawira ntchitoyo inkayembekezeredwa.
  • Ikani .NET Core 1.x. Chifukwa chiyani 1.x pomwe 2.0 ilipo kale munkhokwe yokhazikika? Chifukwa pamene tidayamba chitukuko, mtundu wokhazikika unali 1.09, ndipo adaganiza zopanga polojekitiyo potengera izo.
  • Git 2.x.

RPM-nkhokwe. Phukusi la RPM liyenera kusungidwa kwinakwake. Zinkaganiziridwa kuti tidzagwiritsa ntchito malo omwewo a RPM omwe amapezeka kwa onse omwe ali ndi Linux. Ndicho chimene iwo anachita. Seva yosungiramo zinthu idakonzedwa webuok yomwe idatsitsa phukusi lofunikira la RPM kuchokera pamalo omwe atchulidwa. Phukusili lidanenedwa ku webhook ndi Build agent.

GitLab. Chenjerani! GitLab apa sagwiritsidwa ntchito ndi omanga, koma ndi dipatimenti yoyendetsera ntchito kuwongolera mitundu ya mapulogalamu, mitundu ya phukusi, kuyang'anira momwe makina onse a Linux alili, ndipo imasunga maphikidwe - zonse ziwonetsero za Zidole.

Chidole - imathetsa mikangano yonse ndikupereka masinthidwe omwe tikufuna kuchokera ku Gitlab.

Timayamba kuthawa. Kodi kutumiza kwa DLL ku RPM kumagwira ntchito bwanji?

Kutumiza kwa DDL ku RPM

Tinene kuti tili ndi .NET development rockstar. Imagwiritsa ntchito Visual Studio ndikupanga nthambi yotulutsa. Pambuyo pake, imayiyika ku Git, ndipo Git apa ndi gulu la TFS, ndiye kuti, ndilo malo ogwiritsira ntchito omwe wopanga ntchitoyo amagwira nawo ntchito.

NET Core pa Linux, DevOps pa akavalo

Pambuyo pake TFS ikuwona kuti kudzipereka kwatsopano kwafika. Ndi pulogalamu iti? M'makonzedwe a TFS pali chizindikiro chosonyeza kuti wothandizira wina wa Build ali ndi chiyani. Pankhaniyi, akuwona kuti tikumanga pulojekiti ya .NET Core ndikusankha wothandizira Linux Build kuchokera padziwe.

The Build agent amalandira magwero ndikutsitsa zofunikira zodalira kuchokera ku .NET repository, npm, ndi zina. ndipo mutatha kumanga pulogalamuyo yokha ndikuyikako, imatumiza phukusi la RPM kumalo osungirako a RPM.

Kumbali ina, zotsatirazi zimachitika. Katswiri wa dipatimenti yogwira ntchito akutenga nawo mbali pakukhazikitsa polojekitiyi: amasintha mitundu ya phukusi dzulo m'malo omwe maphikidwe ogwiritsira ntchito amasungidwa, pambuyo pake Chidole chimayambitsa Yum, imatenga phukusi latsopanolo kuchokera m'nkhokwe, ndipo pulogalamu yatsopanoyi yakonzeka kugwiritsidwa ntchito.

NET Core pa Linux, DevOps pa akavalo

Chilichonse ndi chosavuta m'mawu, koma chimachitika ndi chiyani mkati mwa Build agent?

Kuyika DLL RPM

Analandira magwero a polojekiti ndikumanga ntchito kuchokera ku TFS. Wothandizira kumanga imayamba kumanga polojekiti yokha kuchokera ku magwero. Ntchito yosonkhanitsidwa imapezeka ngati seti DLL mafayilo, zomwe zimayikidwa mu zip archive kuti muchepetse katundu pamafayilo.

Zosungidwa zakale za ZIP zatayidwa kupita ku chikwatu chomanga phukusi la RPM. Kenako, script ya Bash imayambitsa zosintha zachilengedwe, imapeza Build version, mtundu wa polojekiti, njira yopita ku bukhu lomanga, ndikuyendetsa RPM-build. Ntchito yomanga ikamalizidwa, phukusi limasindikizidwa ku malo osungira, yomwe ili pa Build agent.

Chotsatira, kuchokera kwa Mangani wothandizira kupita ku seva munkhokwe ya RPM Pempho la JSON latumizidwa kusonyeza dzina la Baibulo ndi kumanga. Webhook, yomwe ndinanenapo kale, imatsitsa phukusi lomweli kuchokera kumalo osungiramo malo pa Build agent ndikupanga msonkhano watsopano kuti ukhazikitsidwe.

NET Core pa Linux, DevOps pa akavalo

Chifukwa chiyani chiwembu choperekera phukusili kupita kunkhokwe ya RPM? Chifukwa chiyani sindingathe kutumiza phukusi lomwe lasonkhanitsidwa nthawi yomweyo kumalo osungira? Chowonadi ndi chakuti ichi ndi chikhalidwe chowonetsetsa chitetezo. Izi zimachepetsa kuthekera kwa anthu osaloledwa kuyika ma RPM phukusi ku seva yomwe imapezeka ndi makina onse a Linux.

Kusintha kwa database

Pokambirana ndi gulu lachitukuko, zidapezeka kuti anyamatawo anali pafupi ndi MS SQL, koma m'mapulojekiti ambiri omwe si a Windows tinkagwiritsa ntchito kale PostgreSQL ndi mphamvu zawo zonse. Popeza tinali titasankha kale kusiya zonse zomwe talipira, tinayamba kugwiritsa ntchito PostgreSQL panonso.

NET Core pa Linux, DevOps pa akavalo

Mugawoli ndikufuna ndikuuzeni momwe tidasinthira nkhokwe ndi momwe tidasankhira pakati pa Flyway ndi Entity Framework Core. Tiyeni tione ubwino ndi kuipa kwawo.

ΠœΠΈΠ½ΡƒΡΡ‹

Flyway amangopita njira imodzi, ife sitingathe kubwerera mmbuyo - ichi ndi choyipa chachikulu. Mutha kuzifanizitsa ndi Entity Framework Core m'njira zina - motengera kusavuta kwa omanga. Mukukumbukira kuti tidayika izi patsogolo, ndipo chofunikira chachikulu sichinali kusintha chilichonse pakukula kwa Windows.

Kwa Flyway ife mtundu wina wa zokutira unkafunikakuti anyamata asalembe Mafunso a SQL. Iwo ali pafupi kwambiri kugwira ntchito mu mawu OOP. Tinalemba malangizo ogwirira ntchito ndi zinthu za database, kupanga funso la SQL ndikulichita. Mtundu watsopano wa database ndi wokonzeka, woyesedwa - zonse zili bwino, zonse zimagwira ntchito.

Entity Framework Core ili ndi minus - yolemetsa kwambiri imapanga mafunso ochepera a SQL, ndipo kutsitsa kwa database kungakhale kofunikira. Koma popeza tilibe ntchito yolemetsa kwambiri, sitiwerengera kuchuluka kwa ma RPS mazana, tidavomereza zoopsazi ndikugawa vutoli kwamtsogolo.

ΠŸΠ»ΡŽΡΡ‹

Entity Framework Core imagwira ntchito m'bokosi ndipo ndiyosavuta kupanga, ndi Flyway Zimaphatikizana mosavuta ndi CI yomwe ilipo. Koma timapangitsa kuti zikhale zosavuta kwa opanga :)

Ndondomeko ya kusamba

Chidole chikuwona kuti kusintha kwa phukusi kukubwera, kuphatikizapo yomwe imayambitsa kusamuka. Choyamba, imayika phukusi lomwe lili ndi zolemba zosamukira ndi magwiridwe antchito okhudzana ndi database. Pambuyo pake, ntchito yomwe imagwira ntchito ndi database imayambiranso. Kenako pakubwera kuyika kwa zigawo zotsalira. Dongosolo lomwe mapaketi amayikidwira ndikuyambitsa mapulogalamu akufotokozedwa mu chiwonetsero cha Zidole.

Mapulogalamu amagwiritsa ntchito zidziwitso zodziwika bwino, monga ma tokeni, mapasiwedi achinsinsi, zonsezi zimakokedwa mu config kuchokera kwa Puppet master, komwe zimasungidwa mu encrypted form.

Mavuto a TFS

Titasankha ndikuzindikira kuti zonse zikuyenda bwino kwa ife, ndinaganiza zoyang'ana zomwe zikuchitika ndi misonkhano ya TFS yonse ya dipatimenti ya chitukuko cha Win pazinthu zina - kaya tikumanga / kumasula mwamsanga kapena ayi, ndi anapeza mavuto aakulu ndi liwiro .

Imodzi mwazinthu zazikuluzikulu zimatenga mphindi 12-15 kuti zisonkhane - ndi nthawi yayitali, simungathe kukhala choncho. Kusanthula kwachangu kunawonetsa kutsika koyipa kwa I/O, ndipo izi zinali pamindandanda.

Nditasanthula gawo ndi gawo, ndidazindikira magawo atatu. Choyamba - "Kaspersky antivayirasi", yomwe imayang'ana magwero pa othandizira onse a Windows Build. Chachiwiri - Windows Indexer. Sizinayimitsidwe, ndipo zonse zidalembedwa munthawi yeniyeni pa Othandizira a Build panthawi yotumiza.

Chachitatu - Npm install. Zinapezeka kuti m'mapaipi ambiri tidagwiritsa ntchito izi. Chifukwa chiyani ali woyipa? Ndondomeko ya kukhazikitsa Npm imayendetsedwa pamene mtengo wodalira umapangidwa phukusi-lock.json, kumene matembenuzidwe a mapepala omwe adzagwiritsidwe ntchito pomanga polojekiti amalembedwa. Choyipa ndichakuti Npm install imakoka mitundu yaposachedwa kwambiri yapaintaneti nthawi zonse, ndipo izi zimatenga nthawi yayitali ngati polojekiti yayikulu.

Madivelopa nthawi zina amayesa makina am'deralo kuyesa momwe gawo linalake kapena polojekiti yonse imagwirira ntchito. Nthawi zina zinkapezeka kuti zonse zinali bwino kwanuko, koma adazisonkhanitsa, kuzitulutsa, ndipo palibe chomwe chinagwira ntchito. Timayamba kudziwa chomwe vuto ndi - eya, mitundu yosiyanasiyana yamapaketi okhala ndi zodalira.

chisankho

  • Zochokera mu AV kupatula.
  • Letsani kulondolera.
  • Pitani ku npm ci.

Ubwino wa npm ci ndikuti ife Timasonkhanitsa mtengo wodalira kamodzi, ndipo timapeza mwayi wopereka wopanga mndandanda wamakono wa phukusi, zimene angathe kuyesa nazo kwanuko mmene akufunira. Izi amapulumutsa nthawi opanga omwe amalemba ma code.

Kukhazikika

Tsopano pang'ono za kasinthidwe kankhokwe. M'mbiri timagwiritsa ntchito Nexus kuyang'anira nkhokwe, kuphatikiza REPO yamkati. Nkhokwe yamkatiyi ili ndi zonse zomwe timagwiritsa ntchito pazolinga zamkati, mwachitsanzo, kuyang'anira zolembera zokha.

NET Core pa Linux, DevOps pa akavalo

Timagwiritsanso ntchito NuGet, popeza ili ndi caching yabwino poyerekeza ndi oyang'anira phukusi ena.

chifukwa

Titakonza Zomangamanga, nthawi yomanga idachepetsedwa kuchoka pa mphindi 12 kufika pa 7.

Ngati tiwerengera makina onse omwe tikanagwiritsa ntchito pa Windows, koma titasinthira ku Linux mu polojekitiyi, tasunga pafupifupi $ 10 000. Ndipo izi zangokhala pa malayisensi, ndi zina ngati tiganizira zomwe zili.

Mapulani

Kwa kotala yotsatira, tinakonza zogwira ntchito yokonza ma code.

Kusintha kwa chithunzi cha Docker chomangidwira. TFS ndichinthu chozizira chokhala ndi mapulagini ambiri omwe amakulolani kuti muphatikizidwe mu Pipeline, kuphatikiza msonkhano woyambira, tinene, chithunzi cha Docker. Tikufuna kupanga choyambitsa ichi kwa yemweyo phukusi-lock.json. Ngati mapangidwe azinthu zomwe zimagwiritsidwa ntchito pomanga polojekitiyo asintha mwanjira ina, timapanga chithunzi chatsopano cha Docker. Pambuyo pake imagwiritsidwa ntchito kuyika chidebecho ndi pulogalamu yophatikizidwa. Izi sizili choncho tsopano, koma tikukonzekera kusinthana ndi zomangamanga zazing'ono ku Kubernetes, zomwe zikukula mwachangu mu kampani yathu ndipo zakhala zikupereka mayankho opangira kwa nthawi yayitali.

Chidule

Ndikulimbikitsa aliyense kutaya Windows, koma osati chifukwa sindikudziwa kuphika. Chifukwa chake ndikuti mayankho ambiri a Opensource ali Linux stack. Kodi muli bwino sungani ndalama. Malingaliro anga, tsogolo ndi la Open Source zothetsera pa Linux ndi gulu lamphamvu.

Mbiri ya speaker ya Alexander Sinchinov pa GitHub.

DevOps Conf ndi msonkhano wokhudza kuphatikizika kwa chitukuko, kuyesa ndi njira zogwirira ntchito kwa akatswiri ndi akatswiri. Ndi chifukwa chake ntchito imene Alexander anakamba? idakhazikitsidwa ndikugwira ntchito, ndipo patsiku la sewerolo panali zotulutsa ziwiri zopambana. Yambani DevOps Conf ku RIT ++ Pa Meyi 27 ndi 28 padzakhalanso milandu yofananira kuchokera kwa asing'anga. Mutha kulumphirabe m'ngolo yomaliza ndi perekani lipoti kapena kutenga nthawi kusungitsa tikiti. Tikumane ku Skolkovo!

Source: www.habr.com

Kuwonjezera ndemanga