SlideShare uma empresa Scribd logo
1 de 32
Continuous integration (CI) v praksi
@otobrglez - oto.brglez@dlabs.si
Kaj je continuous integration (CI)?
CI je razvojna praksa pri kateri se zahteva od
vseh razvijalcev, prispevek kode v skupni
repozitorij - večkrat na dan.
Vsak prispevek je samodejno grajen in
preizkušen. Slednje omogoča članom hitrejše
in zgodnjejše odkrivanje napak.
Z pogostim integriranjem je odkrivanje napak
lažje in hitrejše; kvaliteta produkta pa boljša.
Praktični primer
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
fail?
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
Kaj se dogaja v ozadju?
Continuous integration (CI) v praksi
Kvaliteta?
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
Kako pa produkcija?
Continuous integration (CI) v praksi
Continuous integration (CI) v praksi
Dobra paksa
● En projekt en repozitorij
● Samodejni build
● Build naj se testira samodejno
● Vsak commit se mora bildat na CI okolju
● Build naj bo hitr
● Test naj se izvaja na klonu produkcijskega okolja
● Dostop do zadnje kode naj bo enostaven za vse člane
● Vsi morajo imeti vpogled v stanje
● Samodejni deployment
Odgovornosti razvijalcev
● Pogosta oddaja kode
● Ne-objava pokvarjene kode
● Ne-objava ne testirane kode
● Dokler je build pokvarjen se objavlja nove
kode
● Domov greš šele ko je build zelen!
Vprašanja?
Oto Brglez
oto.brglez@dlabs.si
Hvala!

Mais conteúdo relacionado

Mais de Oto Brglez

Oto Brglez - Tips for better tests
Oto Brglez - Tips for better testsOto Brglez - Tips for better tests
Oto Brglez - Tips for better testsOto Brglez
 
Kdaj lahko uporabimo piškotke?
Kdaj lahko uporabimo piškotke?Kdaj lahko uporabimo piškotke?
Kdaj lahko uporabimo piškotke?Oto Brglez
 
Ruby in prijatelji
Ruby in prijateljiRuby in prijatelji
Ruby in prijateljiOto Brglez
 
Ruby in ogrodje Rails
Ruby in ogrodje RailsRuby in ogrodje Rails
Ruby in ogrodje RailsOto Brglez
 
Subversion in Redmine implementacija
Subversion in Redmine implementacijaSubversion in Redmine implementacija
Subversion in Redmine implementacijaOto Brglez
 
mojakoda.si - predstavitev
mojakoda.si - predstavitevmojakoda.si - predstavitev
mojakoda.si - predstavitevOto Brglez
 
Šolski Spletni Informacijski Sistem
Šolski Spletni Informacijski SistemŠolski Spletni Informacijski Sistem
Šolski Spletni Informacijski SistemOto Brglez
 
PHP: Hypertext Preprocessor Introduction
PHP: Hypertext Preprocessor IntroductionPHP: Hypertext Preprocessor Introduction
PHP: Hypertext Preprocessor IntroductionOto Brglez
 
Java Servlet in JSP
Java Servlet in JSPJava Servlet in JSP
Java Servlet in JSPOto Brglez
 

Mais de Oto Brglez (11)

Oto Brglez - Tips for better tests
Oto Brglez - Tips for better testsOto Brglez - Tips for better tests
Oto Brglez - Tips for better tests
 
Elasticsearch
ElasticsearchElasticsearch
Elasticsearch
 
Kdaj lahko uporabimo piškotke?
Kdaj lahko uporabimo piškotke?Kdaj lahko uporabimo piškotke?
Kdaj lahko uporabimo piškotke?
 
nanob
nanobnanob
nanob
 
Ruby in prijatelji
Ruby in prijateljiRuby in prijatelji
Ruby in prijatelji
 
Ruby in ogrodje Rails
Ruby in ogrodje RailsRuby in ogrodje Rails
Ruby in ogrodje Rails
 
Subversion in Redmine implementacija
Subversion in Redmine implementacijaSubversion in Redmine implementacija
Subversion in Redmine implementacija
 
mojakoda.si - predstavitev
mojakoda.si - predstavitevmojakoda.si - predstavitev
mojakoda.si - predstavitev
 
Šolski Spletni Informacijski Sistem
Šolski Spletni Informacijski SistemŠolski Spletni Informacijski Sistem
Šolski Spletni Informacijski Sistem
 
PHP: Hypertext Preprocessor Introduction
PHP: Hypertext Preprocessor IntroductionPHP: Hypertext Preprocessor Introduction
PHP: Hypertext Preprocessor Introduction
 
Java Servlet in JSP
Java Servlet in JSPJava Servlet in JSP
Java Servlet in JSP
 

Continuous integration (CI) v praksi

  • 1. Continuous integration (CI) v praksi @otobrglez - oto.brglez@dlabs.si
  • 2. Kaj je continuous integration (CI)? CI je razvojna praksa pri kateri se zahteva od vseh razvijalcev, prispevek kode v skupni repozitorij - večkrat na dan. Vsak prispevek je samodejno grajen in preizkušen. Slednje omogoča članom hitrejše in zgodnjejše odkrivanje napak. Z pogostim integriranjem je odkrivanje napak lažje in hitrejše; kvaliteta produkta pa boljša.
  • 18. fail?
  • 21. Kaj se dogaja v ozadju?
  • 30. Dobra paksa ● En projekt en repozitorij ● Samodejni build ● Build naj se testira samodejno ● Vsak commit se mora bildat na CI okolju ● Build naj bo hitr ● Test naj se izvaja na klonu produkcijskega okolja ● Dostop do zadnje kode naj bo enostaven za vse člane ● Vsi morajo imeti vpogled v stanje ● Samodejni deployment
  • 31. Odgovornosti razvijalcev ● Pogosta oddaja kode ● Ne-objava pokvarjene kode ● Ne-objava ne testirane kode ● Dokler je build pokvarjen se objavlja nove kode ● Domov greš šele ko je build zelen!