Jistě jste slyšeli o lampách napojených na buildovací server. Toto téma mne také zaujalo a tak jsme se rozhodli jej zrealizovat. Na internetu existuje mnoho návodů, nicméně málokterý z nich je snadno použitelný v evropě kvůli cenám a dostupnosti zařízení.
Berte tedy tento dokument jako návod, jak si něco takového také pořídit.
První co budete potřebovat je buildovací server a software do něj. Můžete, stejně jako my, použít například Hudson.
Dále budete potřebovat spínač zásuvky. My jsme se rozhodli použít zařízení X10. X10 je protokol, který se používá pro ovládání zařízení přes elektrickou síť – prostě jen vše zapojíte do zásuvky a můžete komunikovat.
Budete tedy potřebovat X10 rozhraní pro počítač. To lze sehnat za 1 750,- Kč. Jedná se o seriový ovladač s USB převodníkem. Toto zařízení připojíte do počítače a můžete s ním komunikovat i z Linuxu pomocí programu heyu. Můžete pak snadno z příkazové řádky řídit moduly příkazem heyu -c /etc/heyu/x10config on A1
. Tento ovladač dokáže řídit až stovky spínacích modulů.
Dále budete potřebovat jedno nebo více modulů pro ovládání zásuvky za 749,- Kč nebo modul do objímky žárovky za 499,- Kč. Záleží tedy na typu zvolené lampy a zda levnější modul lze použít. Ke každému spínači budete potřebovat také hezkou lampu (např. lávovou či prostě jen kouli). Každý modul má dva přepínače – pro domácnost (A až P) a číslo jednotky (1 až 16), které určují jeho adresu.
Teď to již celé musíte jen propojit. K tomu lze použít náš program, který se opakovaně připojuje na Hudson a pomocí XML rozhraní zjišťuje stav překladů a testů. Toto rozhraní lze získat přidáním /api/xml
na konec URL a obsahuje stejné informace jako HTML stránka, ale ve strojově čitelném formátu.
Abychom zjednodušili konfiguraci, zvolili jsme řešení, že v Hudsonu máme vytvořené pohledy s názvem „lampa-1“, kde číslo 1 určuje spínací modul. Do každého pohledu pak mohu zahrnout projekty, na které mám být upozorňován. Pokud přidám nový pohled, zásuvka se prostě automaticky začne spínat. Více modulů také může mít stejný kód a lze je pak spínat najednou (v případě, že je tým ve více místnostech).
Když to shrneme, lze za 1 750,- Kč pořídit řídící jednotku a každá další lampa stojí od 700,- do 1 250,- Kč. Celý systém je v provozu již nějakou dobu a všichni vývojáři si na něj celkem zvykli a zkrátila se doba, po kterou je build rozbitý.
Build lampy jsou super, mají jedinou mouchu: za celou dobu, co je tu máme, ještě nikdo nerozbil build žádného projektu. Lávové lampy se při testování konfigurace neosvědčily, jejich naběhnutí se počítá v desítkách minut.
Můj favorit: http://www.spal.cz/rotacni-majak-12v-cerveny-magnet.html?id=13226
Vo co proboha jako jde? Snad to není jen o tom, že během buildu svítí nějaký maják… omfg… 😉
Přesně o tohle jde 🙂 Lampa ovšem svítí jen při rozbitém buildu.
Více viz:
http://srakyi.modry.cz/blog/2007/08/continuous-integration-lepe-a-radostneji/
http://weblogs.java.net/blog/nidaley/archive/2007/08/my_extreme_feed_1.html
No, na tohle jsme mivali jednodussi reseni – chodil nam mail/sms na mobil – jmeno projektu-cislo buildu-povedlo/nepovedlo.
Vsem chodil jen build failed, a tomu kdo commitnul chodil i build success. Podle me je to jednodussi reseni ktery funguje moc dobre a to i kdyz nejsem v kancelari.
Tohle ma taky neco do sebe, zvlast kdyz se zacne cela mistnost smat tomu ze se rozsvitila lampa 🙂
2 Jindra: no jo, zlate casy 30 buildu denne, patecnich odpoledni plnych „build failed“ a vykriku MAGOOOOR 😉