ProHoster > Blog > talafou initaneti > 3 meafaigaluega taʻutaʻua mo le faʻatulagaina o le faʻaauau pea o le faʻaogaina (Faʻaauau le Faʻaaogaina)
3 meafaigaluega taʻutaʻua mo le faʻatulagaina o le faʻaauau pea o le faʻaogaina (Faʻaauau le Faʻaaogaina)
Fa'aauau le Fa'atinoina o se faiga fa'apitoa i le atina'eina o polokalama fa'aoga e fa'aoga vave, saogalemu ma lelei le fa'atinoina o galuega eseese i polokalama.
O le manatu autu o le fatuina lea o se faʻagasologa otometi faʻalagolago e mafai ai e le tagata atiaʻe ona vave tuʻuina atu le oloa maeʻa i le tagata faʻaoga. I le taimi lava e tasi, o suiga faifaipea e faia i le gaosiga - e taʻua o le faʻaauau pea le tuʻuina atu o paipa (CD Pipeline).
Matou te faʻamanatu atu ia te oe:mo tagata faitau uma o le "Habr" - o se faʻaitiitiga o 10 rubles pe a lesitala i soʻo se vasega Skillbox e faʻaaoga ai le code promotional "Habr".
Ina ia pulea le tafe, e mafai ona e faʻaogaina le tele o meafaigaluega, e aofia uma ai le totogiina ma le leai o se totogi. O lenei tusiga o loʻo faʻamatalaina ai le tolu o fofo sili ona lauiloa i le au atinaʻe e mafai ona aoga i tagata fai polokalame uma.
Jenkins
Fa'ato'a fa'atotonuina e le tagata lava ia sau fa'aautomatika fa'apogai matala. E aoga le galulue fa'atasi e fa'autometi ituaiga uma o galuega e feso'ota'i ma faufale, fa'ata'ita'iga, felauaiga, po'o le fa'aogaina o polokalame.
La'ititi mana'omia PC:
256 MB RAM, 1 GB avanoa faila.
Lelei:
1 GB RAM, 50 GB malo malo.
Ina ia galue, e te manaʻomia foʻi polokalame faʻaopoopo - Java Runtime Environment (JRE) version 8.
O le fausaga (distributed computing) e pei o lenei:
Jenkins Server o se faʻapipiʻi e nafa ma le GUI talimalo, faʻapea foʻi ma le faʻatulagaina ma le faʻatinoina o le fale atoa.
Jenkins Node/Slave/Build Server - masini e mafai ona fetuutuunai e faatino galuega faufale e fai ma sui o le Matai (master node).
Fa'atulagaina mo Linux
Muamua e te manaʻomia faʻaopoopo le fale teu Jenkins i le faiga:
A maeʻa lenei mea, o le a avanoa Jenkins i le polokalama e ala i le faʻaogaina o le port 8080.
Ina ia siaki galuega, e tatau ona e tatalaina le tuatusi i le browser localhost:8080. O le a faʻamalosia oe e le faiga e ulufale i le upu muamua mo le tagata faʻaoga aʻa. O lenei faʻaupuga o loʻo i totonu o le faila /var/lib/jenkins/secrets/initialAdminPassword.
O lea la ua sauni mea uma e alu, e mafai ona e amata fatuina o tafe CI / CD. O le fa'afanua fa'akalafi o le laulau faigaluega e pei o lenei:
Jenkins Malosi:
scalability saunia e le Master/Slave fausaga;
maua ole REST XML/JSON API;
le mafai ona faʻafesoʻotaʻi le tele o faʻaopoopoga faʻafetai i plugins;
toaga ma fa'atupu pea le fa'alapotopotoga.
Cons:
e leai se poloka su'esu'e;
e le matua fa'aoga-fa'aoga fa'aoga.
TeamCity
Atinaʻe faʻapisinisi mai JetBrains. E lelei le 'au'aunaga i se seti faigofie ma se atina'e lelei. O le faʻaogaina le faʻaogaina o loʻo i ai le tele o galuega, ma o le numera o faʻapipiʻi avanoa o loʻo faʻateleina pea.
Manaomia le Java Runtime Environment (JRE) version 8.
O mana'oga meafaigaluega a le server e le'o fa'atauaina:
RAM - 3,2 GB;
gaosiga - lua-autu, 3,2 GHz;
ala feso'ota'iga ma le gafatia o le 1 Gb/s.
O le 'au'aunaga e fa'atagaina oe e ausia le fa'atinoga maualuga:
60 poloketi faʻatasi ma 300 faʻapipiʻi faufale;
2 MB fa'asoa mo le fau fale;
50 tagata faufale;
le mafai ona galulue faʻatasi ma le 50 tagata faʻaoga i le upega tafaʻilagi ma 30 tagata faʻaoga i le IDE;
100 fesoʻotaʻiga o VCS i fafo, e masani lava Perforce ma Subversion. Ole taimi ole suiga ole 120 sekone;
sili atu i le 150 suiga i le aso;
galue ma le database i luga o le tasi server;
Fa'atonuga fa'agaioiga a le JVM server: -Xmx1100m -XX:MaxPermSize=120m.
O mana'oga a le sooupu e fa'avae i luga o fa'alapotopotoga fa'atautaia. O le galuega autu a le 'auʻaunaga o le mataʻituina lea o soʻotaga fesoʻotaʻi uma ma tufatufa faʻapotopotoga tuʻufaʻatasia i nei sui faʻavae i luga o manaʻoga o fesoʻotaʻiga, lipoti o taunuʻuga. E sau sui i tulaga eseese ma faiga fa'aoga, fa'atasi ai ma se si'osi'omaga na fa'atulaga muamua.
O fa'amatalaga uma e uiga i taunu'uga faufale o lo'o teuina i totonu o fa'amaumauga. Ole mea muamua ole tala fa'asolopito ma isi fa'amatalaga tutusa, suiga VCS, sui, fau laina, fa'amatalaga fa'aoga ma fa'atagaga. O le database e le na'o le fausiaina o ogalaau ma mea taua.
Fa'atulagaina mo Linux
Ina ia faʻapipiʻi lima TeamCity ma se pusa servlet Tomcat, e tatau ona e faʻaogaina le TeamCity archive: TeamCity .tar.gz. La'u mai e mafai ona e maua mai iinei.
tar -xfz TeamCity.tar.gz
/bin/runAll. sh [amata|tu]
A e amata muamua, e tatau ona e filifilia le ituaiga o faʻamaumauga o loʻo teuina ai faʻamaumauga faʻapotopotoga.
O lo'o fa'aauau pea le fa'atonuga localhost:8111/ fa'atasi ai ma se sui faufale e tasi ua resitalaina o lo'o fa'agaoioi i le PC lava e tasi.
Malosiaga o TeamCity:
seti faigofie;
fa'aoga fa'aoga-fa'aoga;
se numera tele o galuega faʻapipiʻi;
Auaunaga lagolago;
o loʻo i ai se API MAFALIGA;
pepa lelei;
saogalemu lelei.
Cons:
fa'atapula'a tu'ufa'atasiga;
O se meafaigaluega totogi lea;
o se nuu laitiiti (ae peitai, o loo tuputupu ae).
GoCD
O se galuega fa'avae tatala e mana'omia ai le Java Runtime Environment (JRE) version 8 mo le fa'apipi'iina ma le fa'agaioiga.
Faiga Faʻapitoa:
RAM - 1 GB laʻititi, sili atu e sili atu;
gaosiga - lua-autu, faʻatasi ai ma le faʻasologa autu o le 2 GHz;
malo malo - a itiiti mai 1 GB avanoa avanoa.
Suisui:
RAM - a itiiti ifo 128 MB, sili atu e sili atu;
processor - a itiiti mai 2 GHz.
E faʻamautinoa e le 'auʻaunaga le faʻaogaina o sui ma tuʻuina atu se faʻaoga faigofie mo le tagata faʻaoga:
Laasaga/Galue/Galue:
Fa'atulagaina mo Linux
siuleo "aitalafu download.gocd.org /” | sudo tee /etc/apt/sources.list.d/gocd.list
mafai ona fa'aali la'asaga i lea la'asaga GoCD ala fa'apipi'i i le tasi va'aiga:
faʻaaliga sili ona lelei o le fausaga o paipa:
GoCD optimizes le CD workflow i totonu o siosiomaga ao sili ona lauiloa e aofia ai Docker, AWS;
o le meafaigaluega e mafai ai ona faʻasaʻo faʻafitauli i le paipa, lea o loʻo i ai le siakiina o suiga uma mai le tuʻuina atu i le faʻapipiʻiina i le taimi moni.
Cons:
a itiiti mai e tasi le sooupu e manaʻomia;
e leai se fa'amafanafanaga e fa'aalia ai galuega uma ua mae'a;
e faʻatino poloaiga taʻitasi, e tatau ona e faia se galuega se tasi mo le faʻatulagaina o paipa;
Ina ia faʻapipiʻi le plugin e te manaʻomia le faʻanofoina o le faila .jar i /plugins/external ma toe amata le server;
e fai si toalaiti nuu.
O se faaiuga
E na o le tolu lava mea faigaluega, o le mea moni e tele isi mea. E faigata ona filifili, o lea e tatau ona e gauai atu i vaega faaopoopo.
O le fa'asinomaga tatala o le mea faigaluega e mafai ai ona malamalama po'o le a, fa'aopoopo i ai fa'aopoopo mea fou vave. Ae afai e le aoga se mea, e tatau ona e faalagolago ia te oe lava ma le fesoasoani a le nuu. O meafaigaluega totogi e maua ai le lagolago e mafai i nisi taimi ona taua.
Afai o le saogalemu o lau faʻamuamua sili, e aoga le galue ma se meafaigaluega faʻapitonuʻu. Afai e leai, o le filifilia o se fofo SaaS o se filifiliga lelei.
Ma le mea mulimuli, ina ia faʻamautinoaina se faʻagasologa faʻaauau faʻaauau le faʻaogaina, e tatau ona e faʻatulagaina ni taʻiala e faʻatagaina oe e faʻaititia le tele o meafaigaluega avanoa.