Blog

The latest expert opinions, articles, and guides for the Java professional.

CI/CD Pipeline Automation with QRebel and Jenkins

With the launch of the QRebel Jenkins Plugin, it’s time to look at how the combination of QRebel and the new plugin can help fully automate performance management within the CI/CD pipeline.

Shift Left: Performance Management in Your CI/CD Pipeline

It is well known that shipping performance issues to production can cause severe damage to the customer experience, which, in the worst-case scenario, leads to business loss. QRebel shifts performance management left, helping teams find, diagnose, and fix application performance issues early in the CI/CD pipeline.

QRebel is proactive in nature by catching issues early, but so far, users have had to check the dashboard for issues, triage, and prioritize manually every single time. Now, with the new Jenkins plugin integration for QRebel, catching performance issues early in the pipeline can be fully automated and customized to function as a quality gate before promoting builds further down the pipeline.

The new integration allows teams to see immediate and actionable results delivered by QRebel right where they already check their Jenkins builds daily. Not only will this raise the confidence level when Jenkins jobs pass, but it will empower easy triaging and issue task creation in a straightforward workflow right from Jenkins.

Continuous Delivery with Jenkins and QRebel

Jenkins is mostly known as the means to orchestrate the development process with automation, thus enabling Continuous Integration with Jenkins. On top of that, the current DevOps movement towards Continuous Delivery with Jenkins makes hooking into the plugin system of Jenkins a natural next step for QRebel. With that in mind, let’s look at the basics of the new plugin.

The QRebel Jenkins Plugin enables teams to set up three different performance regression quality gates and one global SLA gate, all of which can mark builds as unstable in Jenkins. The four gates are:
1. Slow request regressions
2. Excessive IO regressions
3. Exceptions regressions
4. App-specific SLA limit exceeded

The first three on the list all work by means of comparing the profiled code performance of the current test run against a baseline build that you as the user can specify. Number four on the list, on the other hand, relies only on the performance of the current test run and is used to ensure that an app-specific SLA policy for all tested requests is met.

In case the plugin detects at least one performance issue, it marks the build unstable and prints an overview of performance analysis, like this:

Build failed because QRebel found regressions in petclinic
TARGET
 build: 1.4.0rc2
 version: 1.4.0
BASELINE
 build: 1.4.0rc1
 version: 1.4.0
Slow Requests: 2
Excessive IO: 1
Exceptions: 0
For full report check your QRebel Dashboard

 

Next Steps to Further Automate Your CI/CD Pipeline

The QRebel Jenkins Plugin is built for DevOps teams. It will help proactive teams, with the assurance of not promoting bad builds further down the CI/CD pipeline or, in the worst-case scenario, shipping bad-performing code into production.

Intrigued? Be sure to sign up for a free demo of QRebel and find out more about the new plugin.

No Responses

No comments yet.

RSS feed for comments on this post.

Leave a comment