Child pages
  • Dependency Graph View Plugin
Skip to end of metadata
Go to start of metadata

Plugin Information

View Dependency Graph Viewer on the plugin site for more information.

Older versions of this plugin may not be safe to use. Please review the following warnings before using an older version:

This plugin is up for adoption. The maintainer is looking for a co-maintainer. Click here to learn more!

Shows a dependency graph of the projects using graphviz. Requires a graphviz installation on the server.

Features

  • Show the dependency graph via graphviz
    • restricted to projects in a view
    • restricted to one project
  • Respects access permissions
  • Show the graphviz source file

Screen

Changelog

Version 0.13 (Oct 23, 2017)

Version 0.12 (Oct 16, 2017)

  • Update version of jsPlumb

Version 0.11 (Mar 22, 2013)

  • Fix invalid ajax calls for sidepanel.jelly.
  • Show right dependency when the project name for copy artifact is relative

Version 0.10 (Dec 1, 2012)

  • Switch editing of Dependency Graph off by default
  • Editing of Dependency Graph is configurable globally
  • Disable wrapping of job names

Version 0.9 (Nov 22, 2012)

  • Make jQuery-UI a mandatory dependency (JENKINS-15891)
  • Improve Layout algorithm

Version 0.8 (Nov 19, 2012)

  • Use jQuery and jQuery-UI Plugin
  • Fix problem with Javascript-Ids from job-names JENKINS-15850

Version 0.7 (Nov 16, 2012)

  • Add ability to switch off graphviz rendering on configuration page

Version 0.6 (Nov 14, 2012)

  • Bugfix for jsPlumb display

Version 0.5 (Nov 13, 2012)

  • ExtensionPoints for Edges and Subprojects of the Graph
  • Experimental visualisation via jsPlumb
  • Fixed links when jenkins is behind reverse proxy (JENKINS-13446, JENKINS-12112)
  • Fixed invalid image when graphviz outputs warnings (JENKINS-11875)

Version 0.4 (Sep 27, 2012)

  • Legend now in separate image

Version 0.3 (Sep 25, 2012)

Version 0.2 (Aug 5, 2011)

  • Use getFullDisplayName instead of getName for project names

Version 0.1 (Dec 14, 2010)

  • Initial version

14 Comments

  1. This seems to be a really nice plugin, thank you ... but unfortunately it wont work for me.

    I can view the dependency graph at <myhudsonserver>/dependencyGraph/graph but the plugin just shows a symbol instead of the graph. The graph in graphviz format can be viewed and I checked the output using dot on my local machine. The picture is very wide - might this cause some problems for viewing it in hudson?

    1. Can your graphviz installation generate png output with the -Tpng command line option? If not, this could be the problem. If your dot executable is not in path, then you can also set the executable in the configuration page of hudson.

      If you keep having this problem, please get the stacktrace from the hudson log and open a jira issue.

      1. I am sorry, you are right ... the png support was not installed on our hudson server. Now I can see the graph.

        There are two more questions/suggestions for this plugin: the graph picture is very large, it might be useful to be able to set the font size or a scaling factor for the plot - and second, the dependencies that are given by the 'Log Trigger Plug-In' are not shown; these might be indicated as a dotted line.

        All in all, I am very happy that you wrote this plugin - especially since it also shows the dependencies of 'join plugin' and 'Parameterized Trigger plugin' - thank you

        1. The problem with the Log Trigger Plug-In is already fixed in source of their plugin - but they need to make a new release to make it available. The problem is that, in the current version (0.1), they do not add a dependency to the dependency tree but perform the build manually.

        2. Hey, your post is a bit old but maybe you could help me out.

          I haven't figured out how to install graphviz with png support, I have a version on my hudson server right now but it says the png is not recognized. How did you install it?

  2. It would be nice if this Wiki page could contain some short reference how the dependencies between the projects are resolved. (I assume it's some Jenkins API?)

  3. This plugin is very helpful. I noticed one area where it could be improved though.

    1) I just recently started making use of "Use builders from another project" build step. It would be nice if that dependency was indicated on the graph

    2) It would also be nice to be able to indicate job triggers - either script based or schedule based in that diagram. 

  4. graphviz installed.  But  "Dependency Graph" generated test output instaed of graph:

    digraph {
    node [shape=box, style=rounded];
    subgraph clusterMain {

    ...

  5. It seems that if sub project step  in job configuration is conditional, this plugin fails to detect relations with sons, and graph is empty...  

  6. IMO, this is a must-have plugin. The graph is really tree-shapped, thus readable, even with about 40 jobs.

    I'd like to know if you plan to do the following updates :

         - give the color (ie the status) of the last build of each job

         - permit to make sets of jobs (and then the user would only zoom on a red set)

    Thank you for the existing plugin and also the future versions !

  7. Hello Thanks for the plugin. I would have one request for an improvement. That would be that the plugin indicates downstream/upstream blocking using colour indication on the arrows.

  8. Nice plugin!

    I would like to see this for rpmdep : display the full dependency of an installed rpm package from http://rpmorphan.sourceforge.net/

  9. I have about 320 jobs in Jenkins right now, in a very wide and relatively flat tree.  I have added the immediate build dependencies to each job, and am unsuccessfully trying to use this viewer to visualize the build tree.  The bulk of the dependency tree is extremely wide, but only about 6 layers deep.  This results in a graph that is not very usable due to the heavy overlapping of the connecting dependency arrows.  About 50 of these jobs are not build-time dependencies, and therefore just uselessly stack down the right-hand side.  To be nice to most printing layout engines, it would be nice if they were rendered in normal rows instead of being stacked on the right.  However, my key problem is that there is nothing configurable to separate out the dependency arrows.  They are in many places just a black mess.  I need to separate them much more cleanly than the plugin does at present.

    If I change the tool location to be /usr/bin/cat, I can extract a .gv file, but I'm not a dot expert andf do not know where to tweak this if it is even possible.  How do I rewire the arrows to show the dependencies much more cleanly?  Also, is it possible to add a method to disregard/drop the 50+ jobs that are independent of the main body of the dependency graph?