The process of releasing new versions of software, worked on by multiple developers, is often a time consuming and risky proposition. Continuous deployment is often used to guarantee reliable and quick delivery of web applications to end users. In our thesis we implemented continuous deployment for an existing application, used for notifying users of traffic events, which is built using the Ruby on Rails framework. The task of provisioning infrastructure originally required manual input of about 50 commands and took an average of 30 minutes to execute. By using tools which automate provisioning of application infrastructure we managed to reduce the developer's workload to only one command, which only takes about 10 minutes to execute. Using automation also reduced the time needed to deploy our application by a third. Achieving this allowed us to decrease developer's workload even further and reduce deployment overhead. Consequently, it enabled faster and more frequent deployment of new application functionality to the end user.
|