Background: Working for a global business consultant, I was tasked with helping a mortgage industry client refine deployments for a free online loan management system that allowed end-users to manage and track loans, payments, and balances easily and with less effort. Developed using PHP, MySQL, and ExtJS, this service requires minimum website knowledge to install on PC.
Goals: Our primary goal was to help our clients make customer onboarding and loan disclosure easier and faster. This would require a move towards continuous integration and continuous delivery.
"Our project uses Jenkins pipelines for each of their builds and relies on the flexibility and countless plugin features to continually improve their processes."
Solution & Results: One way to reach our goal is to run CI jobs in Jenkins separately. This involves configuring a CI pipeline in Jenkins and a webhook in AWS DevOps that invokes the CI process when source code is pushed to a repository or branch. We could then create an AWS DevOps Build Pipeline for Jenkins and a Personal Access Token for connecting Jenkins and AWS DevOps. We would then set up a Jenkins Build Project, test the Jenkins Build, set up an AWS DevOps pipeline release, and trigger the release with a Post Build Action in Jenkins.
With Jenkins' help, we are doing continuous integration and deployment which helps to accelerate the delivery of higher-quality enterprise software to our client’s customers and the open-source community. Through XL Deploy, we’re able to accelerate DevOps from QC, UAT, and staging with the help of Jenkins.
We relied on a handful of key Jenkins capabilities, including:
XL Deploy Plugin
Gitlab plugin
Pipeline plugin
Sonarqube Scanner for Jenkins
Here are our top 5 results:
Deployment times are 3X faster
The release cycle is more streamlined and standardized
Our operation team cost is reduced
Failback or failover chances are slim with blue/green deployment
Automated CMS code and configuration backups to source control