The Client
Squirrel Systems is a market leader in providing point-of-sale (POS) solutions for customers in North America. Their customer base consists mainly of restaurants, hotels, bars, and similar hospitality services operations. Thousands of businesses across the continent use their systems, and Squirrel has received numerous awards for innovating and revolutionizing the retail and hospitality sectors.
The Business Need
Squirrel needed an automated build process that would simplify their current manual process. Their build process relied heavily on one individual triggering each build manually and when he was ready to deploy the new build, he had to stop the application, deploy the new build, and then restart the application again. While this only took 5-10 minutes, downtime for their growing number of customers globally could negatively impact their business.
Having a DevOps practice would help Squirrel’s ability to scale, be agile, and release new features and updates quickly. Squirrel did not have a DevOps process in place and Optimus would have to build the complete pipeline from scratch.
The Solution
Optimus completed the configuration of all build and release pipelines on DevOps, automating Squirrel’s entire build and deployment processes using Azure Pipeline service. Optimus configured build pipelines for all Squirrel applications (API, Hub, Back-of-House and Front-of-House) based on their framework and technology stack that they are developed on. Squirrel now has continuous integration for all pipelines, which means, as soon as the developer pushes the latest code to the GitHub repository, the build job gets automatically triggered and generates the build package for deployment. This in turn triggers the release pipeline and publishes the latest build package to the specific environment.
With the use of App Service Deployment Slots, we are able to ensure zero downtime deployment. For each Production App Service, we have created a “staging” deployment slot. We first deploy the latest build to the staging slot, test it, and then swap with the Production slot which ensures zero downtime deployment.
In addition, Optimus seamlessly integrated QA into Squirrel’s build process. Optimus’s Test Automation Team develops test scripts for each Squirrel Application using their IP Cosell Azure Test Automation Harness. These test scripts have been incorporated in Squirrel CI/CD pipelines. Whenever a new build gets published to the test environment, all these test scripts are executed and test result email notification is sent to the team.
The Result
Squirrel now has CI/CD pipelines built according to best practices and this has automated their once inefficient and labour intensive build process.
By partnering with Optimus, Squirrel has been able to improve their build process by:
- reducing release cycles down to 2 weeks to respond more quickly to customer demands,
- providing customizable features to meet the varying size and needs of their clients,
- ensuring zero downtime deployment,
- increasing efficiency with automation,
- integrating QA,
- implementing proper backups and retention policies,
- developing Agile methodologies.
Contact us to develop your DevOps process.