Vytvářejte automatizaci - Build automation
Vývoj softwaru |
---|
Hlavní činnosti |
Paradigmata a modely |
Metodiky a rámce |
Podpůrné disciplíny |
Praxe |
Nástroje |
Standardy a subjekty znalostí |
Glosáře |
Obrysy |
Vytvářejte automatizaci je proces automatizace vytváření a tvorba softwaru a související procesy včetně: kompilace počítač zdrojový kód do binární kód, obal binární kód a běží automatizované testy.
Přehled
Historicky se automatizace sestavování uskutečňovala prostřednictvím makefiles. Dnes existují dvě obecné kategorie nástrojů:[1]
- Nástroj pro automatizaci sestavení
- To zahrnuje nástroje jako Udělat, Hrábě, CMake, MSBuild, Mravenec, Maven nebo Gradle (Java) atd. Jejich primárním účelem je generovat budovat artefakty prostřednictvím činností, jako je kompilace a propojení zdrojového kódu.
- Servery pro automatizaci sestavení
- Jedná se o obecné webové nástroje, které provádějí obslužné programy pro automatizaci sestavování podle plánu nebo podle spouštění; A kontinuální integrace server je typ serveru pro automatizaci sestavení.
V závislosti na úrovni automatizace je možná následující klasifikace:
- Makefile - úroveň
- Nástroje založené na výrobě
- Non-Make-založené nástroje
- Vytvářejte nástroje pro generování skriptů (nebo Makefile)
- Kontinuální integrace nástroje
- Správa konfigurace nástroje
- Meta-build nástroje nebo správci balíčků
- jiný
Seznam softwaru pro každou z nich lze najít v seznam softwaru pro automatizaci sestavení.
Nástroje pro automatizaci sestavení
Obslužné programy pro vytváření sestav umožňují automatizaci jednoduchých a opakovatelných úkolů. Při použití nástroje vypočítá, jak dosáhnout cíle provedením úkolů ve správném konkrétním pořadí a spuštěním každého úkolu. Dva způsoby, jak se nástroje pro sestavení liší, jsou orientované na úkoly a na produkty. Nástroje zaměřené na úkoly popisují závislost sítí z hlediska konkrétního nastaveného úkolu a nástroje zaměřené na produkty popisují věci z hlediska produktů, které generují.[2]
Servery pro automatizaci sestavení
Ačkoli servery pro sestavení existovaly dlouho před servery pro nepřetržitou integraci, jsou obecně synonymem serverů pro nepřetržitou integraci, nicméně sestavit server mohou být také začleněny do ARA nástroj nebo ALM nářadí.
Typy serverů
- Automatizace na vyžádání například uživatel se spuštěním a skript na příkazový řádek
- Plánovaná automatizace jako a kontinuální integrace server s nočním sestavením
- Spuštěná automatizace jako je server pro nepřetržitou integraci, který běží na každém potvrzení ovládání verze Systém.
Distribuovaná automatizace sestavení
Automatizace je dosažena pomocí kompilační farmy pro distribuovanou kompilaci nebo provedení kroku obslužného programu.[3] Proces distribuovaného sestavení musí mít inteligenci stroje k pochopení závislostí zdrojového kódu k provedení distribuovaného sestavení.
Vztah k nepřetržitému poskytování a nepřetržité integraci
Automatizace sestavení je považována za první krok v přechodu k implementaci kultury průběžné dodávky a DevOps. Automatizace sestav v kombinaci s kontinuální integrace, rozvinutí, automatizace uvolňování aplikací a mnoho dalších procesů pomáhá posunout organizaci vpřed v zavádění osvědčených postupů pro poskytování softwaru.[4][jak? ]
Výhody
Mezi výhody automatizace sestavení patří projekty vývoje softwaru
- Nezbytnou podmínkou pro nepřetržitou integraci a průběžné testování
- Zlepšit kvalitu produktu
- Urychlete zpracování kompilace a propojení
- Eliminujte nadbytečné úkoly
- Minimalizovat „špatné verze“
- Eliminujte závislosti na klíčových zaměstnancích
- Mějte historii sestavení a vydání, abyste mohli prošetřit problémy
- Ušetřete čas a peníze - z důvodů uvedených výše.[5]
Viz také
Reference
- ^ Ceruzzi, Paul E. (2003). Historie moderní výpočetní techniky. MIT Press. ISBN 978-0262532037.
- ^ Clark, Mike (2004). Pragmatic Project Automation: How to build, Deploy, and Monitor Java Apps. Pragmatičtí programátoři. ISBN 978-0974514031.
- ^ Enos, Joe (2013). „Automated Builds: The Key to Consistency“. InfoQ. C4Media Inc.. Citováno 16. září 2015.
- ^ Bashan, Shmuel; Bellagio, David E. (2011). Work Work Management with IBM Rational ClearQuest and Jazz: A customization Guide. IBM Press. ISBN 978-0137001798.
- ^ „Archivovaná kopie“ (PDF). Archivovány od originál (PDF) dne 23. 11. 2008. Citováno 2008-09-19.CS1 maint: archivovaná kopie jako titul (odkaz)