Práce pojednává o procesu průběžné integrace (continuous integration) z pohledu vývoje zásuvného modulu pro prostředí Jenkins CI, který poskytuje integraci s prosředím Koji sloužícím pro sestavování produkčních aplikací. Praktická část práce je publikována pod open-source MIT licencí a je volně dostupná ke stažení. Z počátku je cíl práce zasazen do rámce agilních metodik, popisuje důležitost a výhody průběžné integrace, aby se následně vybudoval prostor pro popis architektury Jenkins a specifika vývoje zásuvných modulů pro tuto platformu. Dále jsou popsány principy a architektura systému Koji, aby se vytvořil prostor pro popsání vývoje Jenkins-Koji zásuvného modulu.
Annotation in English
This thesis describes the process of continuous integration in terms of plugin development for Jenkins CI that provides integration with clean-room build environment for production builds called Koji. The resulting software is published under the MIT open-source license and is available for download from the Jenkins CI community pages. The continuous integration process is put into the context of agile development, and the key points and advantages of continuous integration are described. Furthermore Jenkins CI architecture and the specifics of plugin development are described. Afterwards release engineering principles and Koji architecture is described to build space for description of Jenkins-Koji plugin development.
continuous integration, Jenkins, Koji, unit tests, agile methodologies, plugin, production builds, clean-room environment, release engineering, Maven
Length of the covering note
56 s (78420 znaků)
Language
AN
Annotation
Práce pojednává o procesu průběžné integrace (continuous integration) z pohledu vývoje zásuvného modulu pro prostředí Jenkins CI, který poskytuje integraci s prosředím Koji sloužícím pro sestavování produkčních aplikací. Praktická část práce je publikována pod open-source MIT licencí a je volně dostupná ke stažení. Z počátku je cíl práce zasazen do rámce agilních metodik, popisuje důležitost a výhody průběžné integrace, aby se následně vybudoval prostor pro popis architektury Jenkins a specifika vývoje zásuvných modulů pro tuto platformu. Dále jsou popsány principy a architektura systému Koji, aby se vytvořil prostor pro popsání vývoje Jenkins-Koji zásuvného modulu.
Annotation in English
This thesis describes the process of continuous integration in terms of plugin development for Jenkins CI that provides integration with clean-room build environment for production builds called Koji. The resulting software is published under the MIT open-source license and is available for download from the Jenkins CI community pages. The continuous integration process is put into the context of agile development, and the key points and advantages of continuous integration are described. Furthermore Jenkins CI architecture and the specifics of plugin development are described. Afterwards release engineering principles and Koji architecture is described to build space for description of Jenkins-Koji plugin development.
continuous integration, Jenkins, Koji, unit tests, agile methodologies, plugin, production builds, clean-room environment, release engineering, Maven
Research Plan
Prostudujte možnosti systému Koji.
Analyzujte možnost použití Koji v systému Jenkins CI (Continuous Integration).
Navrhněte zásuvný modul integrující systémy Koji a Jenkins CI na základě požadavků vývojářských komunit obou systémů.
Publikujte plugin pod opensource licencí a získejte zpětnou vazbu od vývojářské komunity Jenkins CI a JBoss / Red Hat.
Shrňte a diskutujte výsledky práce.
Research Plan
Prostudujte možnosti systému Koji.
Analyzujte možnost použití Koji v systému Jenkins CI (Continuous Integration).
Navrhněte zásuvný modul integrující systémy Koji a Jenkins CI na základě požadavků vývojářských komunit obou systémů.
Publikujte plugin pod opensource licencí a získejte zpětnou vazbu od vývojářské komunity Jenkins CI a JBoss / Red Hat.
Shrňte a diskutujte výsledky práce.
Recommended resources
SMART, John Ferguson. Jenkins: The definitive guide. Sebastopol, Calif: O'Reilly Media, 2011. ISBN 978-144-9305-352.
DUVALL, Paul M, Steve MATYAS a Andrew GLOVER. Continuous integration: Improving software quality and reducing risk. Upper Saddle River, NJ: Addison-Wesley, 2007, 283 s. ISBN 03-213-3638-0.
HUMBLE, Jez. Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation. Boston: Addison-Wesley, 2010. ISBN 978-0321601919.
BECK, Kent a Cynthia ANDRES. Extreme programming explained: embrace change. 2nd ed. Boston, MA: AddisonWesley, 2005, 189 s. ISBN 03-212-7865-8.
ROEBUCK, Kevin. Continuous Integration: High-impact Strategies - What You Need to Know: Definitions, Adoptions, Impact, Benefits, Maturity, Vendors. Ruislip: Tebbo, 2011. ISBN 978-1743044841.
Koji: RPM building and tracking system [online]. 2013 [cit. 2013-10-21]. Dostupné z: https://fedorahosted.org/koji/wiki
ROSHEN, Waseem. SOA-based enterprise integration: a step-by-step guide to services-based application integration. New York: McGraw-Hill, 2009, xix, 364 p. ISBN 00-716-0552-5.
Recommended resources
SMART, John Ferguson. Jenkins: The definitive guide. Sebastopol, Calif: O'Reilly Media, 2011. ISBN 978-144-9305-352.
DUVALL, Paul M, Steve MATYAS a Andrew GLOVER. Continuous integration: Improving software quality and reducing risk. Upper Saddle River, NJ: Addison-Wesley, 2007, 283 s. ISBN 03-213-3638-0.
HUMBLE, Jez. Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation. Boston: Addison-Wesley, 2010. ISBN 978-0321601919.
BECK, Kent a Cynthia ANDRES. Extreme programming explained: embrace change. 2nd ed. Boston, MA: AddisonWesley, 2005, 189 s. ISBN 03-212-7865-8.
ROEBUCK, Kevin. Continuous Integration: High-impact Strategies - What You Need to Know: Definitions, Adoptions, Impact, Benefits, Maturity, Vendors. Ruislip: Tebbo, 2011. ISBN 978-1743044841.
Koji: RPM building and tracking system [online]. 2013 [cit. 2013-10-21]. Dostupné z: https://fedorahosted.org/koji/wiki
ROSHEN, Waseem. SOA-based enterprise integration: a step-by-step guide to services-based application integration. New York: McGraw-Hill, 2009, xix, 364 p. ISBN 00-716-0552-5.