Using Jenkins Deploy Dashboard Plugin for Visual Deployment Management
This article introduces the Jenkins Deploy Dashboard plugin, explains how to visualize deployment status across environments, add new releases to the dashboard, create custom deployment views, and integrate deployment buttons into pipelines using both scripted and declarative Jenkins pipelines.
Using Jenkins Visual Deployment
Plugin URL: https://plugins.jenkins.io/deploy-dashboard/ – Plugin name: Deploy Dashboard by Namecheap.
Ever wondered which version is currently deployed in a development environment, whether a patch was deployed to production yesterday, or which version was running when a customer reported an error two days ago? If such questions arise frequently and you use Jenkins for CI/CD, this plugin is ideal.
In agile development we constantly update software, deploying each version to multiple environments, which can become chaotic. Consolidating overall deployment status in one place simplifies management.
At Namecheap we use Jenkins for CI/CD and created the Deploy Dashboard plugin to always monitor each deployment status. This article demonstrates the plugin’s features and how to use it.
Visualizing with Deploy Dashboard
We built a custom view that serves as a dashboard to show which code release versions are deployed to which test and production environments (or devices).
Clicking a specific environment reveals its release history.
Getting Started: Adding a New Version to the Dashboard
Assuming you already have a Jenkins job that builds and deploys your application, you only need to call the addDeployToDashboard method with environment name and application version parameters.
properties([parameters([
string(name: 'version', description: 'App version to deploy'),
choice(
name: 'env',
choices: ['dev', 'prod'],
description: 'Environment where the app should be deployed'
)
])])
node {
//...
stage("Deploy") {
// Deploy app version ${params.version} to ${params.env} env
//add release information to the dashboard
addDeployToDashboard(
env: params.env,
buildNumber: params.version
)
}
}Creating the Dashboard View
On the Jenkins home page or inside a folder, click the "+" tab to launch the new view wizard (if you don’t see the "+", you may lack permission to create views).
On the "Create New View" page, name the view, select the "Deploy View" type, and click "OK".
Regular expressions can be used to specify which jobs to include in the view (e.g., .* selects all jobs in the folder).
Adding Deployment Buttons to Your Versions
When you want to separate CI pipelines from CD actions, the Deploy Dashboard plugin lets you add extra buttons to the build sidebar. Use the buildAddUrl method with a title and URL.
node {
stage("Build") {
String builtVersion = "v2.7.5"
// Build app with ${builtVersion} version
//Add buttons to the left sidebar
buildAddUrl(title: 'Deploy to DEV', url: "/job/app-deploy/parambuild/?env=dev&version=${builtVersion}")
buildAddUrl(title: 'Deploy to PROD', url: "/job/app-deploy/parambuild/?env=prod&version=${builtVersion}")
}
}This feature is useful for quality‑check teams: with a few clicks they can deploy any existing version to the desired environment. Contributions to the GitHub project are welcome.
Declarative Pipeline Example
pipeline {
agent any
parameters {
choice choices: ['dev','prod'], description: '', name: 'env'
string defaultValue: '', description: '', name: 'version', trim: false
}
stages {
stage('Hello') {
steps {
script {
addDeployToDashboard(
env: params.env,
buildNumber: params.version
)
}
}
}
}
}If this article helped you, feel free to share, like, and follow for more DevOps insights.
DevOps Cloud Academy
Exploring industry DevOps practices and technical expertise.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
