Jenkins is a self-contained, open-source server that automates software-related tasks including building, testing, and deploying software. This section explains how you can configure Docker images of Qodana in Jenkins Multibranch Pipelines, and covers the following cases:
Inspecting a specific branch
Forwarding inspection results to Qodana Cloud
Prepare your project
Make sure that these plugins are installed on your Jenkins instance:
Docker and Docker Pipeline are required for running Docker images
git is required for git operations in Jenkins projects
Make sure that Docker is installed and accessible by Jenkins.
If applicable, make sure that Docker is accessible by the
jenkins user as described in the Manage Docker as a non-root user section of the Docker documentation.
Create a Multibranch Pipeline project as described on the Jenkins documentation portal.
In the root directory of your project repository, create the
Jenkinsfile. This file will contain Jenkins configuration scripts described in this section.
This is the basic configuration of the Jenkins Pipeline.
This configuration uses the
docker agent to invoke Qodana Docker images. Using the
WORKSPACE variable, the
args block mounts the local checkout directory to the project directory of a Docker image, and
image specifies the Docker image invoked.
stage block calls Qodana. Here, you can also specify the options you would like to configure Qodana with.
Inspect specific branches
when block, you can tell Qodana which branches of your project to inspect. For example, this configuration lets you inspect only the
You can inspect pull requests as described in the Supporting Pull Requests section of the Jenkins documentation.
Forward reports to Qodana Cloud
environment block lets you specify the
QODANA_TOKEN variable to invoke the Qodana Cloud project token contained in the
To learn how to create
qodana-token, see the Adding new global credentials section of the Jenkins documentation.
Here is the Jenkins configuration that covers all approaches described in this section.