Anasal, R. (2015):
Implementing a continuous deployment pipeline for a web application
Developing software in a team with several developers using agile software engineering patterns two common challenges are the regular integration of code changes made by one developer with changes made by another developer and the subsequent verification of the success of this by testing the new code with automated tests as well as with manual and user acceptance tests. In cooperation with the Java team of FlixBus who faced these challenges the objective of this bachelor's thesis was the implementation of a continuous deployment pipeline for a regular web application of FlixBus. Selecting the emergent Docker container management engine as a suitable technology a concept for the continuous deployment pipeline was created and implemented according to the requirements imposed by the team, their agile development workflow and the technology stack of the application. The resulting implementation was put into operation, integrating it into the existing tools and workflows of the team. It is since then providing the team with a fully automated provisioning and deployment of new test instances of the application in a dedicated integration environment and an automated process for deploying successfully tested versions as a new release into production use, all at the push of a button.