Zobrazit předchozí téma :: Zobrazit následující téma |
Autor |
Zpráva |
abuki
Založen: 31. 07. 2012 Příspěvky: 507 Bydliště: Praha
|
Zaslal: 11. únor 2017, 12:10:11 Předmět: Automatizace buildů |
|
|
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.amanita-design.net
www.circusatos.com |
|
Návrat nahoru |
|
|
Radis
Založen: 29. 03. 2014 Příspěvky: 235
|
Zaslal: 11. únor 2017, 15:20:09 Předmět: |
|
|
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 |
|
Návrat nahoru |
|
|
abuki
Založen: 31. 07. 2012 Příspěvky: 507 Bydliště: Praha
|
Zaslal: 11. únor 2017, 15:25:24 Předmět: |
|
|
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.amanita-design.net
www.circusatos.com |
|
Návrat nahoru |
|
|
abuki
Založen: 31. 07. 2012 Příspěvky: 507 Bydliště: Praha
|
Zaslal: 12. únor 2017, 18:09:03 Předmět: |
|
|
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.amanita-design.net
www.circusatos.com |
|
Návrat nahoru |
|
|
abuki
Založen: 31. 07. 2012 Příspěvky: 507 Bydliště: Praha
|
Zaslal: 13. únor 2017, 21:22:29 Předmět: |
|
|
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.amanita-design.net
www.circusatos.com |
|
Návrat nahoru |
|
|
abuki
Založen: 31. 07. 2012 Příspěvky: 507 Bydliště: Praha
|
Zaslal: 13. únor 2017, 21:27:32 Předmět: |
|
|
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 _________________ Twitter @abukac
www.amanita-design.net
www.circusatos.com |
|
Návrat nahoru |
|
|
|