3 cov cuab yeej nrov rau kev teeb tsa kev xa mus tas li (Nruam Deployment)
Kev xa mus tas li yog ib txoj hauv kev tshwj xeeb hauv kev txhim kho software uas yog siv los ua kom sai, nyab xeeb thiab ua tau zoo siv ntau yam haujlwm hauv software.
Lub tswv yim tseem ceeb yog los tsim cov txheej txheem txhim khu kev qha automated uas tso cai rau tus tsim tawm sai sai xa cov khoom tiav rau tus neeg siv. Nyob rau tib lub sijhawm, kev hloov pauv tas li yog ua rau kev tsim khoom - qhov no yog hu ua kev xa khoom txuas ntxiv (CD Pipeline).
Txhawm rau tswj cov dej ntws, koj tuaj yeem siv ntau yam cuab yeej, suav nrog ob qho tib si them thiab dawb kiag li. Kab lus no piav txog peb qhov kev daws teeb meem nrov tshaj plaws ntawm cov neeg tsim khoom uas tuaj yeem pab tau rau txhua tus programmer.
Jenkins
Tag nrho nws tus kheej muaj qhib qhov chaw automation server. Nws tsim nyog ua hauj lwm nrog rau automate txhua yam hauj lwm uas muaj feem xyuam rau lub tsev, kuaj, shipping, los yog deploying software.
Yam tsawg kawg nkaus rau PC:
256 MB RAM, 1 GB cov ntaub ntawv chaw.
Qhov zoo tshaj plaws:
1 GB RAM, 50 GB hard drive.
Txhawm rau ua haujlwm, koj tseem yuav xav tau software ntxiv - Java Runtime Ib puag ncig (JRE) version 8.
Lub architecture (distributed xam) zoo li no:
Jenkins Server yog ib qho kev teeb tsa uas yog lub luag haujlwm rau GUI hosting, nrog rau kev teeb tsa thiab ua tiav tag nrho cov tsim.
Jenkins Node/Slave/Build Server - cov khoom siv uas tuaj yeem teeb tsa los ua haujlwm tsim ua haujlwm sawv cev ntawm tus tswv (tus tswv ntawm tus tswv).
Installation rau Linux
Ua ntej koj yuav tsum ntxiv Jenkins repository rau lub system:
Tom qab no, Jenkins yuav muaj nyob rau hauv lub kaw lus ntawm qhov chaw nres nkoj 8080.
Txhawm rau txheeb xyuas kev ua haujlwm, koj yuav tsum qhib qhov chaw nyob hauv browser localhostib: 8080. Lub kaw lus yuav ua kom koj nkag mus rau thawj tus password rau tus neeg siv hauv paus. Tus password no nyob hauv cov ntaub ntawv /var/lib/jenkins/secrets/initialAdminPassword.
Tam sim no txhua yam yog npaj mus, koj tuaj yeem pib tsim CI / CD ntws. Lub graphical interface ntawm workbench zoo li no:
Jenkins Strengths:
scalability muab los ntawm Master/Slave architecture;
muaj REST XML/JSON API;
lub peev xwm los txuas ntau qhov txuas ntxiv ua tsaug rau plugins;
active thiab evolving zej zog tas li.
Txais:
tsis muaj analytical thaiv;
tsis heev user-friendly interface.
TeamCity
Kev tsim kho lag luam los ntawm JetBrains. Cov neeg rau zaub mov zoo nrog kev teeb tsa yooj yim thiab kev sib txuas zoo heev. Lub neej ntawd configuration muaj ib tug loj tus naj npawb ntawm functions, thiab tus naj npawb ntawm muaj plugins yog tas li nce.
Yuav tsum Java Runtime Ib puag ncig (JRE) version 8.
Cov kev xav tau ntawm lub server hardware tsis yog qhov tseem ceeb:
RAM - 3,2 GB;
processor - dual-core, 3,2 GHz;
kev sib txuas lus channel nrog lub peev xwm ntawm 1 Gb / s.
Lub server tso cai rau koj ua tiav kev ua haujlwm siab:
60 tej yaam num nrog 300 tsim configurations;
2 MB faib rau tsim cav;
50 tus neeg ua haujlwm tsim;
muaj peev xwm ua haujlwm nrog 50 cov neeg siv hauv lub vev xaib thiab 30 cov neeg siv hauv IDE;
100 kev sib txuas ntawm VCS sab nraud, feem ntau Perforce thiab Subversion. Lub sijhawm hloov pauv nruab nrab yog 120 vib nas this;
ntau tshaj 150 kev hloov kho ib hnub;
ua haujlwm nrog database ntawm ib tus neeg rau zaub mov;
JVM server txheej txheem teeb tsa: -Xmx1100m -XX:MaxPermSize=120m.
Cov kev xav tau ntawm tus neeg sawv cev yog nyob ntawm kev sib sau ua ke. Lub luag haujlwm tseem ceeb ntawm cov neeg rau zaub mov yog saib xyuas txhua tus neeg sawv cev sib txuas thiab faib cov kab ke sib dhos rau cov neeg ua haujlwm no raws li cov kev xav tau sib xws, tshaj tawm cov txiaj ntsig. Cov neeg sawv cev tuaj nyob rau hauv ntau lub platforms thiab kev khiav hauj lwm systems, ntxiv rau ib puag ncig pre-configured.
Thiab thaum kawg, txhawm rau kom ntseeg tau tias cov txheej txheem xa mus tas li ua tau zoo, koj yuav tsum tsim cov txheej txheem uas nws qhov tshwj xeeb yuav tso cai rau koj kom txo qis ntawm cov cuab yeej muaj.