.[ ČeskéHry.cz ].
Automatizace buildů

 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> Obecné
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
abuki



Založen: 31. 07. 2012
Příspěvky: 370
Bydliště: Praha

PříspěvekZaslal: 11. únor 2017, 12:10:11    Předmět: Automatizace buildů Odpovědět s citátem

Ahoj,

pustil jsem se teď trochu do automatizace buildů. Žádná velký divy, ale říkal jsem si že se podělím o progres a třeba k tomu někdo bude mít nějaký tip nebo to někoho nakopne si to taky udělat.

Můj cíl a podmínky:
- deployment build (jak test tak release) ideálně na jedno kliknutí, nejlépe na všechny platformy naráz
- řeším to pro své osobní projekty, doma nemám žádný server, takže zatím ručně bez propojení na git (v práci jedeme CI přes gitlab, ale tam zas děláme jen windows/steam)

Zatím jsem na tom tak, že mám v Unity tlačítko, který udělá build na mac/windows/linux, předtím ještě provede nějakou kontrolu a čištění ve scénách a pak to celý nauploaduje na steam. Na steamu je pak teda ručně potřeba dát build do nějaké větve. Na to jsem nikde v těch jejich command line toolech nenašel příkaz. Zároveň mi to udělá i verzi bez steam sdk třeba pro humble widgety atp. Ale to už se také pak musí uploadovat ručně, na to jsem žádný nástroj nenašel. Tohle je pro mě docela dobrej stav co se teda týče desktopu.



No a teď ty mobily. Našel jsem pěknej nástroj http://fastlane.tools/
Strašně jednoduše se to nastavuje a během chvíle jsem byl schopnej to nastavit, že na jeden příkaz mi to udělá archiv a nauploaduje na testflight a nastaví to jako aktivní build pro interní testery (kdo to někdy dělal ručně, tak ví jakej to je oser).
Tam mám ještě ale pár mezer.
Zaprvý fastlane je jen na mac, takže si prostě musim pustit druhej počítač (mám stolní win pc + mac book air, což na ty mobilní ptákovinky celkem stačí, výhledově bych při nějakém upgradu zkusil jít do hackintoshe a mít oba systémy na jednom silném stroji). Ale to mi vlastně zas tak nevadí.
Druhá věc je, že mi nějak nejde ze C# na macu pustit terminál a tam zadat ten příkaz. Jakože funguje to, ale nevyskočí to terminálový okno s outputem (a jakože ten output toho fastlane je udělanej moc pekně) a já pak nevim co se děje a můžu jen čekat a doufat, že se nic nepodělalo. Nemá s tím někdo náhodou zkušenost?
Třetí věc je, že tím že to mám na druhém počítači, tak vlastně musím nejdřív pullnout projekt (čekání) otevřít unity, tím se začnou importovat změny (čekání) a pak už by teda stačil jen ten stisk jednoho tlačítka (když vyřešim nějak ten terminál). Ale na tohle by šel asi taky napsat nějakej skriptík, co si pullne a spustí build a na to naváže ten fastlane. Zatím to dělám ručně, ale i tak to ušetří spoustu času a nervů.

Ideál kam dál:
- fastlane umí dělat automatický screenshoty (ale to se asi nedá použít na aplikace vyexportovaný z unity). Mít screenshoty ve všech rozměrech a nedej bože jazycích (pokud tam je text, což třeba u Hravouky mám) je hroznej opruz. Samotnou tvorbu screenshotů asi vyřeším přímo v Unity. Nicméně ten fastlane opět umí automatickej upload screenshotů a metadat na appstore. Tak toho bych chtěl využít.
- musím prozkoumat ještě jak to funguje s androidem a google play
- bylo by krásný to mít navázaný na ten git a dělat to plně automaticky, ale když doma nemám žádnej server tak to je asi kravina. Navíc stejně potřebuju iOS buildovat na macu a zbytek je snazší dělat na windowsech. Nebo nějaký nápad?

Už ale i ten polostav jak to mám teď mi hodně pomáhá. Neni to žádná raketová věda, pár skriptů, ale je to fajn, kdyby někdo chtěl znát detaily, rád se podělím.

EDIT: nemá někdo zkušenost s nějakýmy automatizačními nástroji pro upload na windows store?
_________________
Twitter @abukac
www.dimensionbrothers.com
www.hravouka.cz
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Radis



Založen: 29. 03. 2014
Příspěvky: 174

PříspěvekZaslal: 11. únor 2017, 15:20:09    Předmět: Odpovědět s citátem

A dival sed na Unity Cloud Building? Ja si s tim ted par tydnu hraju a jsem z toho dost nadseny, i kdyz ma svoje mouchy (treba me zarazilo, ze neumoznuje udelat headless build pro Linux). Proste pushnu neco do Mercurial repozitare a za chvili mi dojde email, ze mam hotove buildy pro ruzne platformy. Genialni Smile
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
abuki



Založen: 31. 07. 2012
Příspěvky: 370
Bydliště: Praha

PříspěvekZaslal: 11. únor 2017, 15:25:24    Předmět: Odpovědět s citátem

Jojo, to používám už dlouho, na interní development je to super. Přesně jak říkáš. Mám na gitu build branch, do tý pushnu a do půl hodiny můžu instalovat apku do iPadu. To je paráda. Nicméně já teď řešim spíš tu automatickou distribuci na ty příslušné služby. Ale je fakt, že by možná šel ten fastlane nějak propojit s tím cloud buildem, to mě ani nějak nenapadlo. Cloud build má taky nějaký rest API, že si ty buildy můžeš stáhnout. Nad tím se ještě zamyslím.
_________________
Twitter @abukac
www.dimensionbrothers.com
www.hravouka.cz
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
abuki



Založen: 31. 07. 2012
Příspěvky: 370
Bydliště: Praha

PříspěvekZaslal: 12. únor 2017, 18:09:03    Předmět: Odpovědět s citátem

Tak Steam branch se dá přepnout automaticky, je to v tom vdf souboru, nějak jsem to čekal jako parametr toho příkazu.



Nicméně nemůžu pořád nikde najít jak nauploadovat hromadně screenshoty (v mém případě navíc ve více jazycích).
_________________
Twitter @abukac
www.dimensionbrothers.com
www.hravouka.cz
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
abuki



Založen: 31. 07. 2012
Příspěvky: 370
Bydliště: Praha

PříspěvekZaslal: 13. únor 2017, 21:22:29    Předmět: Odpovědět s citátem

Tak jsem si už vyhrál i s tím testflightem na macu.
Nakonec jsem to udělal tak, že mám bash file s příkazem a ten pouštím ze C# tak, že pustím terminál a jako parametr dám ten bash soubor. V něm už pak jsou fastlane příkazy. Otevře se okno terminálu a krásně hlásí průběh celé operace jak vidno na obrázku.



Zároveň jsem dodělal i automaticky screenshotovací tool. Na tom asi není mnoho zajímavého, nicméně ukládá mi to všechny screenshoty pojmenované podle jazyků a velikostí do správné adresářové struktury, která vyhovuje fastlane, takže následně pak stačí jeden příkaz a jsou automaticky nahraný do google play nebo na itunes connect (budete muset věřit tomu, že ty tlačítka tam fungujou).
Do toho screenshot toolu možná ještě dodělám, aby to bylo schopný ty screenshoty udělat plně automaticky - tzn. projet scény a na nastavenejch místech udělat screenshot. Pro Under Leaves to nepotřebuju, ale pro Hravouku se to bude hodit (use case: přibyde mi novej jazyk a potřebuju ideálně stejnej screenshot co už mám, jen s novým jazykem).

Další krok by teda už byl nějaký napojení na git a plná automatizace, ale to asi odložím, protože to pro mě vlastně neni zas tak důležitý a u těch osobních projektů je to stejně ten jeden můj počítač (resp. dva) na kterém se builduje.
_________________
Twitter @abukac
www.dimensionbrothers.com
www.hravouka.cz
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
abuki



Založen: 31. 07. 2012
Příspěvky: 370
Bydliště: Praha

PříspěvekZaslal: 13. únor 2017, 21:27:32    Předmět: Odpovědět s citátem

No teda je to paráda. Začali jsme testovat Under Leaves a prostě nemám problém udělat update i kvůli pár prkotinám. Dřív bych to odkládal "počkám si až toho bude víc, to mi nestojí za update" a teď je to jedno, můžu fix testerům poslat v řádu hodin.

Tak jsem se pochválil a teď zpět do reality Very Happy
_________________
Twitter @abukac
www.dimensionbrothers.com
www.hravouka.cz
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Zobrazit příspěvky z předchozích:   
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> Obecné Časy uváděny v GMT + 1 hodina
Strana 1 z 1

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra
Nemůžete odpovídat na témata v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete hlasovat v tomto fóru


Powered by phpBB © 2001, 2005 phpBB Group


Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna