A Modern CI/CD Pipeline for Cloud Native Applications
Kuupäev
2021
Autorid
Ajakirja pealkiri
Ajakirja ISSN
Köite pealkiri
Kirjastaja
Tartu Ülikool
Abstrakt
Modern software development processes use different automation techniques to increase
the velocity and improve the quality of the result. Automation can help to reduce
human involvement in technical processes related to product releasing and delivery
as well as decrease human errors rate. At present, two techniques have been widely
adopted: using Cloud Native architecture for designing the applications and usage of
Continuous Integration and Continuous Delivery (CI/CD) practices for automation of
building and delivering the products. These practices are not exclusive and are often
used in synergy. Integration of modern automation technologies and features of Cloud
Computing paradigm, like virtualization and fault tolerance, can improve the quality of
development and operations of software applications.
This thesis focuses on the analysis and design of the CI/CD pipeline required for a
Cloud Native application and implementation for a real-world project. For the pipeline,
requirements were formulated, quality metrics were collected, and results regarding
execution time efficiency and possible improvements were summarized. The created
software improves the development process and helps with planning questions related to
the speed of application changes integration and delivery to the end-users. The pipeline’s
architecture is scalable and is planned to be adopted for several new and existing projects.
Kirjeldus
Märksõnad
Cloud Native, DevOps, Continuous Integration, Continuous Delivery, Kubernetes, Helm, GitLab CI, Ansible