A DevOps approach to infrastructure on demand - Pinheiro, César José Costa (2022)
As DevOps grows in importance in companies, there is an increasing interest in automating the process of building and deploying infrastructure, having as an objective reduce the complexity for non DevOps engineers and making it so that infrastructure is less error prone, which is not the case when doing it manually. This work aims to explore how to build a solution that allows to manage infrastructure on demand while supporting specific services that are relevant for git profiles analysis, such as Sonarqube and Jenkins. Firstly, this work starts by introducing its context, the problem that the solution is trying to solve and the methodology used to develop the solution. On the State-of-the-Art various topics are presented in order to give all the information needed to understand the implementation of the solution, including concepts such as DevOps and Automation, while going over specific technologies such as GraphQL, Docker, Terraform and Ansible. A value analysis was also done to explore what are the main concerns for stakeholders when managing their infrastructure and to define the value of the solution being developed. Lastly, the solution was implemented making use of various technologies and with scalability in mind that would allow it to grow in the amount of services supported with minimum changes. The work is interesting for someone that is interested in DevOps, Infrastructure-as-Code and automation in general.