2015-06-26 18:28:34

Diegimų atomatizavimas

Nors IT profesionalai, jau ilgą laiką naudojasi šiuo įrankiu ir neblogai jį išmano. Pamaniau, kad bus naudinga paruošti HowTo Lietuvių kalba, su pagrindinių užduočių ir žingsnių aprašymais, naujokams.

Prerequisites (tai kas turi būti pasiruošta): 

  • Ubuntu OS.
  • BitBucket repositorija su php failais kurioje yra pridėtas SSH raktas.
  • sudo vartotojo teisės.

Tutorialų ciklą pradėsiu nuo paprastų, ne profesionalų naudojamų diegimo automatizacijos techikų.

Kodėl verta automatizuoti diegimus:

  • Diegiant, žmonės gali padaryti klaidų.
  • Žmonėms tingisi atlikti pasikartojančias užduotis. Tai demotyvuoja. Tai nėra įdomu.
  • Diegiant žmogui, diegimas paprastai užtrunka ilgiau.
  • Leidžia integruoti kokybės užtikrinimo įrankius.
  • CI ir panašios programinės įrangos kūrimo teorijos reikalauja automatizacijos, kad šie gan sudėtingi procesai taptų efektyvūs.

O pradėsiu nuo įrankio vadinamo Jenkins.

Nors IT profesionalai, jau ilgą laiką naudojasi šiuo įrankiu ir neblogai jį išmano. Pamaniau, kad bus naudinga paruošti HowTo Lietuvių kalba, su pagrindinių užduočių ir žingsnių aprašymais, naujokams.


Kadangi šis tutorialas skirtas naujokams, naudosime Jenkins pluginus vietoj kiek lankstesnių bet sudėtingesnių Ant konfigūruojamų darbų, juos pasiliksime ateičiai. Šį kart tikslas yra kuo greičiau ir papraščiau gauti pakeitimus ir sudiegti juos į serverį. Bet nagrinėjant PHP CI, būtinai juos paminėsiu ;)

Galbūt pažvelgsime į diegimų automatizavimą pasinaudojant paprastais git hook'ais.

Kodėl verta naudoti Jenkins:

  • Gausu jau paruoštų plugin'ų.
  • Gausu dokumentacijos.
  • Nes tai yra cool :D

Tikiuosi, šis pamokėlių ciklas, padės geriau suprasti reikalo esmę. Velesnėse pamokėlėse peržvelgsiu PHP diegimų automatizacijos standartus.