Background: A healthcare company reached out to this IT group because they needed to have a faster way to build, test, and deploy applications, while automating as much of the testing and quality checks as possible. Their former build process was very slow and manual, and did only that: build. Any additional testing or quality checks were additional manual steps. This IT team set out to change all that.
Goals: Introducing a new platform for running applications. We were also trying to modernize the tooling related to our build (switching from Ant to Maven and Subversion to Git).
"The open source nature of Jenkins let us get up and running fast, and gave access to a huge community of resources."
Solution & Results: We were transitioning off an old build system. We used Jenkins to set up a new continuous integration process for our new applications which significantly streamlined the build process. By reviewing the old process as we were moving to Jenkins, we were able to identify areas where we could develop a more automated process. Our old system required builds to manually be triggered. Jenkins, of course, came ready to build and integrate changes on check-in, providing faster feedback and better indications of the application’s build health.
We were then able to take advantage of Jenkins' extensive plugin ecosystem to add several additional steps to the automated build process. We improved our automated testing and reporting to give more confidence in our releases. We added security and quality scanning to keep our code more robust, secure, and maintainable. The entire process saved hours of manual effort, and produced better applications!
Key capabilities included: JUnit reporting, SonarQube scanning, Checkmarx scanning, Docker image building, and Groovy scripting.
And our results?
faster resolution on build failures
improved quality
improved application security