Travis CI Miro Hronˇ cok Co je CI Kˇ cemu CI Co je potˇ reba k CI Co je Travis CI Jak to pouˇ z´ ıt Jak to funguje travis.yml Demo Travis CI Miro Hronˇ cok InstallFest 2015 8. bˇ rezna 2015
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Travis CI
Miro Hroncok
InstallFest 2015
8. brezna 2015
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I vzniklo to jako metoda extremnıho programovanı
I 20 let stary pojemI dle Wikipedie:
I kod ve spolecnem repozitariI automaticke zbuildenıI automaticke testyI do repozitare prispıvajı vsichni kazdy denI kazdy prıspevek se zbuildı a otestujeI build je rychlyI testuje se v kopii produkcnıho prostredıI kazda nova zmena jde jednoduse zıskatI vsichni by meli videt vysledek poslednıho testuI automaticky deployment
I odeberme VSC (git apod.)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I vzniklo to jako metoda extremnıho programovanı
I 20 let stary pojemI dle Wikipedie:
I kod ve spolecnem repozitariI automaticke zbuildenıI automaticke testyI do repozitare prispıvajı vsichni kazdy denI kazdy prıspevek se zbuildı a otestujeI build je rychlyI testuje se v kopii produkcnıho prostredıI kazda nova zmena jde jednoduse zıskatI vsichni by meli videt vysledek poslednıho testuI automaticky deployment
I odeberme VSC (git apod.)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I vzniklo to jako metoda extremnıho programovanı
I 20 let stary pojemI dle Wikipedie:
I kod ve spolecnem repozitariI automaticke zbuildenıI automaticke testyI do repozitare prispıvajı vsichni kazdy denI kazdy prıspevek se zbuildı a otestujeI build je rychlyI testuje se v kopii produkcnıho prostredıI kazda nova zmena jde jednoduse zıskatI vsichni by meli videt vysledek poslednıho testuI automaticky deployment
I odeberme VSC (git apod.)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I vzniklo to jako metoda extremnıho programovanı
I 20 let stary pojemI dle Wikipedie:
I kod ve spolecnem repozitariI automaticke zbuildenıI automaticke testyI do repozitare prispıvajı vsichni kazdy denI kazdy prıspevek se zbuildı a otestujeI build je rychlyI testuje se v kopii produkcnıho prostredıI kazda nova zmena jde jednoduse zıskatI vsichni by meli videt vysledek poslednıho testuI automaticky deployment
I odeberme VSC (git apod.)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I vzniklo to jako metoda extremnıho programovanı
I 20 let stary pojemI dle Wikipedie:
I kod ve spolecnem repozitariI automaticke zbuildenıI automaticke testyI do repozitare prispıvajı vsichni kazdy denI kazdy prıspevek se zbuildı a otestujeI build je rychlyI testuje se v kopii produkcnıho prostredıI kazda nova zmena jde jednoduse zıskatI vsichni by meli videt vysledek poslednıho testuI automaticky deployment
I odeberme VSC (git apod.)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I vzniklo to jako metoda extremnıho programovanı
I 20 let stary pojemI dle Wikipedie:
I kod ve spolecnem repozitariI automaticke zbuildenıI automaticke testyI do repozitare prispıvajı vsichni kazdy denI kazdy prıspevek se zbuildı a otestujeI build je rychlyI testuje se v kopii produkcnıho prostredıI kazda nova zmena jde jednoduse zıskatI vsichni by meli videt vysledek poslednıho testuI automaticky deployment
I odeberme VSC (git apod.)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I vzniklo to jako metoda extremnıho programovanı
I 20 let stary pojemI dle Wikipedie:
I kod ve spolecnem repozitariI automaticke zbuildenıI automaticke testyI do repozitare prispıvajı vsichni kazdy denI kazdy prıspevek se zbuildı a otestujeI build je rychlyI testuje se v kopii produkcnıho prostredıI kazda nova zmena jde jednoduse zıskatI vsichni by meli videt vysledek poslednıho testuI automaticky deployment
I odeberme VSC (git apod.)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I vzniklo to jako metoda extremnıho programovanı
I 20 let stary pojemI dle Wikipedie:
I kod ve spolecnem repozitariI automaticke zbuildenıI automaticke testyI do repozitare prispıvajı vsichni kazdy denI kazdy prıspevek se zbuildı a otestujeI build je rychlyI testuje se v kopii produkcnıho prostredıI kazda nova zmena jde jednoduse zıskatI vsichni by meli videt vysledek poslednıho testuI automaticky deployment
I odeberme VSC (git apod.)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I vzniklo to jako metoda extremnıho programovanı
I 20 let stary pojemI dle Wikipedie:
I kod ve spolecnem repozitariI automaticke zbuildenıI automaticke testyI do repozitare prispıvajı vsichni kazdy denI kazdy prıspevek se zbuildı a otestujeI build je rychlyI testuje se v kopii produkcnıho prostredıI kazda nova zmena jde jednoduse zıskatI vsichni by meli videt vysledek poslednıho testuI automaticky deployment
I odeberme VSC (git apod.)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I vzniklo to jako metoda extremnıho programovanı
I 20 let stary pojemI dle Wikipedie:
I kod ve spolecnem repozitariI automaticke zbuildenıI automaticke testyI do repozitare prispıvajı vsichni kazdy denI kazdy prıspevek se zbuildı a otestujeI build je rychlyI testuje se v kopii produkcnıho prostredıI kazda nova zmena jde jednoduse zıskatI vsichni by meli videt vysledek poslednıho testuI automaticky deployment
I odeberme VSC (git apod.)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I vzniklo to jako metoda extremnıho programovanı
I 20 let stary pojemI dle Wikipedie:
I kod ve spolecnem repozitariI automaticke zbuildenıI automaticke testyI do repozitare prispıvajı vsichni kazdy denI kazdy prıspevek se zbuildı a otestujeI build je rychlyI testuje se v kopii produkcnıho prostredıI kazda nova zmena jde jednoduse zıskatI vsichni by meli videt vysledek poslednıho testuI automaticky deployment
I odeberme VSC (git apod.)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I vzniklo to jako metoda extremnıho programovanı
I 20 let stary pojemI dle Wikipedie:
I kod ve spolecnem repozitariI automaticke zbuildenıI automaticke testyI do repozitare prispıvajı vsichni kazdy denI kazdy prıspevek se zbuildı a otestujeI build je rychlyI testuje se v kopii produkcnıho prostredıI kazda nova zmena jde jednoduse zıskatI vsichni by meli videt vysledek poslednıho testuI automaticky deployment
I odeberme VSC (git apod.)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I vzniklo to jako metoda extremnıho programovanı
I 20 let stary pojemI dle Wikipedie:
I kod ve spolecnem repozitariI automaticke zbuildenıI automaticke testyI do repozitare prispıvajı vsichni kazdy denI kazdy prıspevek se zbuildı a otestujeI build je rychlyI testuje se v kopii produkcnıho prostredıI kazda nova zmena jde jednoduse zıskatI vsichni by meli videt vysledek poslednıho testuI automaticky deployment
I odeberme VSC (git apod.)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I vzniklo to jako metoda extremnıho programovanı
I 20 let stary pojemI dle Wikipedie:
I kod ve spolecnem repozitariI automaticke zbuildenıI automaticke testyI do repozitare prispıvajı vsichni kazdy denI kazdy prıspevek se zbuildı a otestujeI build je rychlyI testuje se v kopii produkcnıho prostredıI kazda nova zmena jde jednoduse zıskatI vsichni by meli videt vysledek poslednıho testuI automaticky deployment
I odeberme VSC (git apod.)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I sypeme do toho commity
I zbuildı se to
I otestuje se to
I prıpadne se to nasadı
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I sypeme do toho commity
I zbuildı se to
I otestuje se to
I prıpadne se to nasadı
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I sypeme do toho commity
I zbuildı se to
I otestuje se to
I prıpadne se to nasadı
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Continuous integration
I sypeme do toho commity
I zbuildı se to
I otestuje se to
I prıpadne se to nasadı
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Vyhody Continuous integration
I zjistıme, ze se rozbily testy
I zjistıme, kdy se rozbily testy
I zıskame development build
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Vyhody Continuous integration
I zjistıme, ze se rozbily testy
I zjistıme, kdy se rozbily testy
I zıskame development build
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Vyhody Continuous integration
I zjistıme, ze se rozbily testy
I zjistıme, kdy se rozbily testy
I zıskame development build
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Co potrebujeme k Continuous integration
I nejake testy
I nejaky CI system
I automatizaci CI
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Co potrebujeme k Continuous integration
I nejake testy
I nejaky CI system
I automatizaci CI
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Co potrebujeme k Continuous integration
I nejake testy
I nejaky CI system
I automatizaci CI
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Co je Travis CI
I travis-ci.org
I sluzba pro automaticke CII pouze pro GitHub repozitare
I zdarma pro verejne repozitareI placene travis-ci.com pro privatnı
I zdarma v ramci GitHub Student Developer Pack
I vyborna dokumentace na docs.travis-ci.com
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Co je Travis CI
I travis-ci.org
I sluzba pro automaticke CII pouze pro GitHub repozitare
I zdarma pro verejne repozitareI placene travis-ci.com pro privatnı
I zdarma v ramci GitHub Student Developer Pack
I vyborna dokumentace na docs.travis-ci.com
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Co je Travis CI
I travis-ci.org
I sluzba pro automaticke CII pouze pro GitHub repozitare
I zdarma pro verejne repozitareI placene travis-ci.com pro privatnı
I zdarma v ramci GitHub Student Developer Pack
I vyborna dokumentace na docs.travis-ci.com
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Co je Travis CI
I travis-ci.org
I sluzba pro automaticke CII pouze pro GitHub repozitare
I zdarma pro verejne repozitareI placene travis-ci.com pro privatnı
I zdarma v ramci GitHub Student Developer Pack
I vyborna dokumentace na docs.travis-ci.com
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Co je Travis CI
I travis-ci.org
I sluzba pro automaticke CII pouze pro GitHub repozitare
I zdarma pro verejne repozitareI placene travis-ci.com pro privatnı
I zdarma v ramci GitHub Student Developer Pack
I vyborna dokumentace na docs.travis-ci.com
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Co je Travis CI
I travis-ci.org
I sluzba pro automaticke CII pouze pro GitHub repozitare
I zdarma pro verejne repozitareI placene travis-ci.com pro privatnı
I zdarma v ramci GitHub Student Developer Pack
I vyborna dokumentace na docs.travis-ci.com
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Co je Travis CI
I travis-ci.org
I sluzba pro automaticke CII pouze pro GitHub repozitare
I zdarma pro verejne repozitareI placene travis-ci.com pro privatnı
I zdarma v ramci GitHub Student Developer Pack
I vyborna dokumentace na docs.travis-ci.com
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Jak zacıt pouzıvat Travis CI
I vlezete na travis-ci.org
I prihlasıte se pres GitHub
I zapnete webhook pro repozitar
I pridate travis.yml
I pushnete
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Jak zacıt pouzıvat Travis CI
I vlezete na travis-ci.org
I prihlasıte se pres GitHub
I zapnete webhook pro repozitar
I pridate travis.yml
I pushnete
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Jak zacıt pouzıvat Travis CI
I vlezete na travis-ci.org
I prihlasıte se pres GitHub
I zapnete webhook pro repozitar
I pridate travis.yml
I pushnete
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Jak zacıt pouzıvat Travis CI
I vlezete na travis-ci.org
I prihlasıte se pres GitHub
I zapnete webhook pro repozitar
I pridate travis.yml
I pushnete
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Jak zacıt pouzıvat Travis CI
I vlezete na travis-ci.org
I prihlasıte se pres GitHub
I zapnete webhook pro repozitar
I pridate travis.yml
I pushnete
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Jak funguje Travis CI
I vyvojar pushne nove commity
I GitHub rekne Travisu, ze se to staloI Travis CI:
I naklonuje vase repo a prepne se na ten dany commitI precte travis.ymlI nastartuje kontajneryI spustı build a testyI reportuje uspech/selhanıI (udela deploy)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Jak funguje Travis CI
I vyvojar pushne nove commity
I GitHub rekne Travisu, ze se to staloI Travis CI:
I naklonuje vase repo a prepne se na ten dany commitI precte travis.ymlI nastartuje kontajneryI spustı build a testyI reportuje uspech/selhanıI (udela deploy)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Jak funguje Travis CI
I vyvojar pushne nove commity
I GitHub rekne Travisu, ze se to staloI Travis CI:
I naklonuje vase repo a prepne se na ten dany commitI precte travis.ymlI nastartuje kontajneryI spustı build a testyI reportuje uspech/selhanıI (udela deploy)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Jak funguje Travis CI
I vyvojar pushne nove commity
I GitHub rekne Travisu, ze se to staloI Travis CI:
I naklonuje vase repo a prepne se na ten dany commitI precte travis.ymlI nastartuje kontajneryI spustı build a testyI reportuje uspech/selhanıI (udela deploy)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Jak funguje Travis CI
I vyvojar pushne nove commity
I GitHub rekne Travisu, ze se to staloI Travis CI:
I naklonuje vase repo a prepne se na ten dany commitI precte travis.ymlI nastartuje kontajneryI spustı build a testyI reportuje uspech/selhanıI (udela deploy)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Jak funguje Travis CI
I vyvojar pushne nove commity
I GitHub rekne Travisu, ze se to staloI Travis CI:
I naklonuje vase repo a prepne se na ten dany commitI precte travis.ymlI nastartuje kontajneryI spustı build a testyI reportuje uspech/selhanıI (udela deploy)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Jak funguje Travis CI
I vyvojar pushne nove commity
I GitHub rekne Travisu, ze se to staloI Travis CI:
I naklonuje vase repo a prepne se na ten dany commitI precte travis.ymlI nastartuje kontajneryI spustı build a testyI reportuje uspech/selhanıI (udela deploy)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Jak funguje Travis CI
I vyvojar pushne nove commity
I GitHub rekne Travisu, ze se to staloI Travis CI:
I naklonuje vase repo a prepne se na ten dany commitI precte travis.ymlI nastartuje kontajneryI spustı build a testyI reportuje uspech/selhanıI (udela deploy)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Jak funguje Travis CI
I vyvojar pushne nove commity
I GitHub rekne Travisu, ze se to staloI Travis CI:
I naklonuje vase repo a prepne se na ten dany commitI precte travis.ymlI nastartuje kontajneryI spustı build a testyI reportuje uspech/selhanıI (udela deploy)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
A co ten travis.yml
I YAML souborI definuje:
I jazyk projektuI runtimy
I napr. ruzne verze Pythonu
I co nainstalovat za zavislostiI sluzby a jejich konfiguraceI jak to zbuilditI jak pustit testyI jak deploynoutI dalsı volby specificke pro dany jazyk
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
A co ten travis.yml
I YAML souborI definuje:
I jazyk projektuI runtimy
I napr. ruzne verze Pythonu
I co nainstalovat za zavislostiI sluzby a jejich konfiguraceI jak to zbuilditI jak pustit testyI jak deploynoutI dalsı volby specificke pro dany jazyk
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
A co ten travis.yml
I YAML souborI definuje:
I jazyk projektuI runtimy
I napr. ruzne verze Pythonu
I co nainstalovat za zavislostiI sluzby a jejich konfiguraceI jak to zbuilditI jak pustit testyI jak deploynoutI dalsı volby specificke pro dany jazyk
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
A co ten travis.yml
I YAML souborI definuje:
I jazyk projektuI runtimy
I napr. ruzne verze Pythonu
I co nainstalovat za zavislostiI sluzby a jejich konfiguraceI jak to zbuilditI jak pustit testyI jak deploynoutI dalsı volby specificke pro dany jazyk
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
A co ten travis.yml
I YAML souborI definuje:
I jazyk projektuI runtimy
I napr. ruzne verze Pythonu
I co nainstalovat za zavislostiI sluzby a jejich konfiguraceI jak to zbuilditI jak pustit testyI jak deploynoutI dalsı volby specificke pro dany jazyk
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
A co ten travis.yml
I YAML souborI definuje:
I jazyk projektuI runtimy
I napr. ruzne verze Pythonu
I co nainstalovat za zavislostiI sluzby a jejich konfiguraceI jak to zbuilditI jak pustit testyI jak deploynoutI dalsı volby specificke pro dany jazyk
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
A co ten travis.yml
I YAML souborI definuje:
I jazyk projektuI runtimy
I napr. ruzne verze Pythonu
I co nainstalovat za zavislostiI sluzby a jejich konfiguraceI jak to zbuilditI jak pustit testyI jak deploynoutI dalsı volby specificke pro dany jazyk
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
A co ten travis.yml
I YAML souborI definuje:
I jazyk projektuI runtimy
I napr. ruzne verze Pythonu
I co nainstalovat za zavislostiI sluzby a jejich konfiguraceI jak to zbuilditI jak pustit testyI jak deploynoutI dalsı volby specificke pro dany jazyk
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
A co ten travis.yml
I YAML souborI definuje:
I jazyk projektuI runtimy
I napr. ruzne verze Pythonu
I co nainstalovat za zavislostiI sluzby a jejich konfiguraceI jak to zbuilditI jak pustit testyI jak deploynoutI dalsı volby specificke pro dany jazyk
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
A co ten travis.yml
I YAML souborI definuje:
I jazyk projektuI runtimy
I napr. ruzne verze Pythonu
I co nainstalovat za zavislostiI sluzby a jejich konfiguraceI jak to zbuilditI jak pustit testyI jak deploynoutI dalsı volby specificke pro dany jazyk
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
A co ten travis.yml
I YAML souborI definuje:
I jazyk projektuI runtimy
I napr. ruzne verze Pythonu
I co nainstalovat za zavislostiI sluzby a jejich konfiguraceI jak to zbuilditI jak pustit testyI jak deploynoutI dalsı volby specificke pro dany jazyk
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – prıklad
language: python
python:
- "2.6"
- "2.7"
- "3.3"
- "3.4"
- "pypy"
- "pypy3"
install:
- pip install -r requirements.txt
- if [[ $TRAVIS_PYTHON_VERSION == ’2.6’ ]]; then...
script: nosetests
I prıklady pro jine jazyky
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – poradı vykonanı sekcı
I before install
I install
I before script
I script
I after success nebo after failure
I after script
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – instalace zavislostı
I docs.travis-ci.com/user/installing-dependencies
I interprety/kompilatory se instalujı samy (podle jazyka)
I sluzby jsou nainstalovane, ale nemusı bezetI knihovny pomocı language-specific metod
I PyPII RubygemnsI . . .
I muzete doinstalovavat balıcky pomocı apt-getI prıpadne stahovat tary a kompilovat
I (jde delat prakticky cokoliv)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – instalace zavislostı
I docs.travis-ci.com/user/installing-dependencies
I interprety/kompilatory se instalujı samy (podle jazyka)
I sluzby jsou nainstalovane, ale nemusı bezetI knihovny pomocı language-specific metod
I PyPII RubygemnsI . . .
I muzete doinstalovavat balıcky pomocı apt-getI prıpadne stahovat tary a kompilovat
I (jde delat prakticky cokoliv)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – instalace zavislostı
I docs.travis-ci.com/user/installing-dependencies
I interprety/kompilatory se instalujı samy (podle jazyka)
I sluzby jsou nainstalovane, ale nemusı bezetI knihovny pomocı language-specific metod
I PyPII RubygemnsI . . .
I muzete doinstalovavat balıcky pomocı apt-getI prıpadne stahovat tary a kompilovat
I (jde delat prakticky cokoliv)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – instalace zavislostı
I docs.travis-ci.com/user/installing-dependencies
I interprety/kompilatory se instalujı samy (podle jazyka)
I sluzby jsou nainstalovane, ale nemusı bezetI knihovny pomocı language-specific metod
I PyPII RubygemnsI . . .
I muzete doinstalovavat balıcky pomocı apt-getI prıpadne stahovat tary a kompilovat
I (jde delat prakticky cokoliv)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – instalace zavislostı
I docs.travis-ci.com/user/installing-dependencies
I interprety/kompilatory se instalujı samy (podle jazyka)
I sluzby jsou nainstalovane, ale nemusı bezetI knihovny pomocı language-specific metod
I PyPII RubygemnsI . . .
I muzete doinstalovavat balıcky pomocı apt-getI prıpadne stahovat tary a kompilovat
I (jde delat prakticky cokoliv)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – instalace zavislostı
I docs.travis-ci.com/user/installing-dependencies
I interprety/kompilatory se instalujı samy (podle jazyka)
I sluzby jsou nainstalovane, ale nemusı bezetI knihovny pomocı language-specific metod
I PyPII RubygemnsI . . .
I muzete doinstalovavat balıcky pomocı apt-getI prıpadne stahovat tary a kompilovat
I (jde delat prakticky cokoliv)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – instalace zavislostı
I docs.travis-ci.com/user/installing-dependencies
I interprety/kompilatory se instalujı samy (podle jazyka)
I sluzby jsou nainstalovane, ale nemusı bezetI knihovny pomocı language-specific metod
I PyPII RubygemnsI . . .
I muzete doinstalovavat balıcky pomocı apt-getI prıpadne stahovat tary a kompilovat
I (jde delat prakticky cokoliv)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – instalace zavislostı
I docs.travis-ci.com/user/installing-dependencies
I interprety/kompilatory se instalujı samy (podle jazyka)
I sluzby jsou nainstalovane, ale nemusı bezetI knihovny pomocı language-specific metod
I PyPII RubygemnsI . . .
I muzete doinstalovavat balıcky pomocı apt-getI prıpadne stahovat tary a kompilovat
I (jde delat prakticky cokoliv)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – instalace zavislostı
I docs.travis-ci.com/user/installing-dependencies
I interprety/kompilatory se instalujı samy (podle jazyka)
I sluzby jsou nainstalovane, ale nemusı bezetI knihovny pomocı language-specific metod
I PyPII RubygemnsI . . .
I muzete doinstalovavat balıcky pomocı apt-getI prıpadne stahovat tary a kompilovat
I (jde delat prakticky cokoliv)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – instalace zavislostı
I docs.travis-ci.com/user/installing-dependencies
I interprety/kompilatory se instalujı samy (podle jazyka)
I sluzby jsou nainstalovane, ale nemusı bezetI knihovny pomocı language-specific metod
I PyPII RubygemnsI . . .
I muzete doinstalovavat balıcky pomocı apt-getI prıpadne stahovat tary a kompilovat
I (jde delat prakticky cokoliv)
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – sluzby
I docs.travis-ci.com/user/database-setup
I MySQL, PostgreSQL, MongoDB, Redis, RabbitMQ,Memcached. . .
services:
- redis
- memcached
# mysql defaultne samo
before_script:
# username travis/root, blank password
- mysql -e ’create database myapp_test;’
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – deployment
I docs.travis-ci.com/user/deployment
I OpenShift, Heroku. . .
I PyPI, Rubygems. . .
deploy:
provider: openshift
user: eggs
password: foo
domain: spam
I kontrolnı otazka
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – deployment
I docs.travis-ci.com/user/deployment
I OpenShift, Heroku. . .
I PyPI, Rubygems. . .
deploy:
provider: openshift
user: eggs
password: foo
domain: spam
I kontrolnı otazka
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – notifikace
I docs.travis-ci.com/user/notifications
I e-mail, IRC, webhook. . .
I rozumne defaultnı chovanı
notifications:
irc:
channels:
- "chat.freenode.net#my-channel"
- "chat.freenode.net#some-other-channel"
on_success: [always|never|change] # default: change
on_failure: [always|never|change] # default: always
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – build matrix
I docs.travis-ci.com/user/build-configuration
I poustı se nekolik kontajneru (paralelne)
I defaultne matice runtime × env (× jeste neco)
rvm:
- 1.8.7
- 1.9.3
- jruby
- ree
gemfile:
- gemfiles/Gemfile.rails-2.3.x
- gemfiles/Gemfile.rails-3.1.x
- gemfiles/Gemfile.rails-edge
env:
- ISOLATED=true
- ISOLATED=false
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
travis.yml – prıklady
I github.com/rails/rails – komplexnı prıklad
I github.com/vrutkovs/dogtail – GTK+ GUI testing
I github.com/travis-ci-examples – prıklady prımo odTravisaku
Travis CI
Miro Hroncok
Co je CI
K cemu CI
Co je potreba k CI
Co je Travis CI
Jak to pouzıt
Jak to funguje
travis.yml
Demo
Demo
Demo