On my current project we're using Jenkins to monitor our builds. Now they want me to write a Jenkins plugin to add some more monitoring parameters.

I've taken a look at how the status monitor plugin works, and I can't figure some things out. I've tried to look for documentation for writing a plugin, but that seems to be sorely lacking. (the site only mentions how to generate the base project, and refers to a tutorial that's not that informative)

What I'm trying to do is just add some options to each build, add a link, and a monitoring page. Adding to the main page is apparently done by adding the action, but I'm still trying to figure out the rest. And how it all ties in.

Does anyone have any pointers, or a place where I can find some decent documentation?


Check out the "Extend Jenkins" page: https://wiki.jenkins-ci.org/display/JENKINS/Extend+Jenkins

Specifically, take a look at the tutorial here: https://wiki.jenkins-ci.org/display/JENKINS/Plugin+tutorial

The configuration/options views are placed in src/main/resources, as described in the Plugin Workspace Layout section.

If you run into specific questions, you can ping @JenkinsCI on Twitter.

I hope this helps!


I had the same difficulties while I was developping Jenkins plugin for the first time. Let me give you some advice :

  1. Read the Wiki. Although lack of information, You can "try" to understand the core concepts in Jenkins : https://wiki.jenkins-ci.org/display/JENKINS/Extend+Jenkins
  2. Second advise, go to UISamples plugin. This plugin contains a lot of demonstration code and shows examples of the concepts that you read on the wiki. I had difficulties understand Describable/Descriptor relationship until I went to the UI plugin to see how it works. It's much easier than reading the Wiki.You can find it this address : https://github.com/jenkinsci/ui-samples-plugin.

  3. Search if there is no plugin that does the same thing or has similar functionalities that you want to develop. If you find one, install it and see how it behaves. Loofk at the GitHub project page of this plugin. The plugin list can be found in this address : https://github.com/jenkinsci

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy