3

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, such as:

  1. Does hudson scan for class extending notifier? (I can see no references anywhere to the notifier class of the monitoring plugin yet it must be called somehow since it is added to the main page)

  2. Does the rootaction class cause the URL binding since there also seem to be no references to that enter code here

  3. And how does jelly files get bound to the correct page since the mapping do not match. Or does Jenkins scan for a folder names Bla when you have a class called Bla extending RootAction?

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

VMAtm
  • 27,943
  • 17
  • 79
  • 125
Hugo
  • 681
  • 1
  • 7
  • 6
  • 1
    Try reading [this](https://wiki.jenkins-ci.org/display/JENKINS/Plugin+tutorial). It was last edited on March 29, 2011, so it's pretty recent. – Gustavo Coelho May 04 '11 at 00:09

2 Answers2

1

Helpful videos:

lanwen
  • 2,251
  • 1
  • 17
  • 30
  • The link for Jenkins Hackathon you have provided requires authentication. I have found youtube link https://www.youtube.com/watch?v=PBUkCQ7LW4c – bmichalik Feb 09 '15 at 14:36
1

I've seen people use a tutorial I found here to make plug-ins for Hudson. Jenkins wasn't forked all that long ago, so it should be mostly the same - you'd just need to account for the changed repositories.

Feasoron
  • 3,471
  • 3
  • 23
  • 34