Skip to content
Rafael M. Pestano edited this page Nov 1, 2018 · 6 revisions

This page intends to help developers who want to contribute changes to LastChanges plugin

The first think to do is to run and debug the plugin locally to understand its mechanics.

Secondly read Jenkins plugin developer docs.

The architecture is almost the same for every Jenkins plugin.

LastChangesPublisher is the entry point of the plugin. It holds plugin configuration (see it's member variables) and job execution (perform method).

The frontend is backed by jelly files on resources directory, for further info about jelly usage in Jenkins see this and this doc.

The page which shows the project diff is located here. This page uses the buildChanges published by the build to get the diff. It passes this diff to diffToHtml here.

CommitRenderer is responsible by commits page which shows the diff of a single commit. The link to the commit page, passing a commit id as url param, is here

The diff implementation itself is done here. Currently it expects a single repo, you may have to change it to support multiple one. I actually don't know if it is possible to create a single diff among different repositories.

Clone this wiki locally