Introduction
Traditionally, the release of software updates is often characterised by disruptions to services and inconvenience for end users. In their work for Spike Diamond, Miracle Mill was able to demonstrate how DevOps and release management ensures that software changes are introduced in a coordinated manner and downtime is kept to a minimum.
About Spike Diamond
Spike Diamond is a UK based publisher known for online publications such as Holler Country, an online magazine covering news and insight from the world of country music.
The Challenge
While working on Holler Country, Spike Diamond reached out to Miracle Mill with the goal to make their release management more efficient and automate the deployment through all stages of development. Holler Country was deployed in a serverless setup in AWS. The objective was to achieve superior productivity for the development team, without compromising quality. Optimising the development process by removing all manual and repetitive steps related to deployment in it was a natural step in that direction.
The Solution
Miracle Mill made an analysis and discussed the current development processes with the customer. They were open to change the process to fit completely with Miracle Mill’s predefined templates for an AWS DevOps pipeline.
The template creates a new CodePipeline using CloudFormation for each feature branch. After the mandatory automated testing, QA and PO approval, the code is automatically merged to the master branch in CodeCommit, tested again and deployed to production. The automated testing includes unit tests and integration tests with specific focus on security and penetration. Upon a successful merge all the provisioned resources related to the feature branch are automatically removed.
The templates were implemented with smaller adjustments to the development process and now Spike Diamond follows a SCRUM process for project management and planning complemented with an automated CI/CD pipeline for release management.
Architecture diagram
Results and Benefits
The implemented pipelines remove the manual steps in release management, directly contributing to the efficiency of the process. As a result, features are deployed more frequently with high quality. The solution further enables the development team to work on multiple feature branches in parallel, test the features independently and remove dependencies between the development team members, achieving the desired productivity.
It was measured that automating the previously manual steps freed up to 25% of the time from the developers’ workload, that can instead be spent on developing new features.
About Miracle Mill
At Miracle Mill, we are passionate entrepreneurs and engineers, that work to utilise modern cutting-edge cloud technology. We are a cloud-first company focused on building scalable applications utilising AWS cloud services.
We provide cloud consulting services with an Agile iterative approach to software development using DevOps methodologies.