Guilhem Soulas
Guilhem Soulas

Reputation: 1995

Doxygen plugin in Jenkins: OUTPUT_DIRECTORY error

The root of the my application, where the Doxyfile is located, is: /home/aaa/public_html

I want to generate the documentation in: /home/bbb/public_html/ccc

It works well but not with Jenkins: I get the error hudson.AbortException: The output directory doesn't exist.

The workspace of my Jenkins job is: /var/lib/jenkins/jobs/Doxy1/workspace

I tried hard but it won't work. What could I do?

Upvotes: 7

Views: 6738

Answers (4)

Matt Johnson
Matt Johnson

Reputation: 1

I found that I get this error if the publish doxygen build step doxyfile path field contains extra whitespace. Make sure that your doxyfile path doesn't have any trailing spaces or other whitespace characters. My doxygen plugin version is 0.18.

Upvotes: -1

Marshall777
Marshall777

Reputation: 1204

Since version 0.16, the Doxygen plugin provides a build step to generate the documentation.

See https://wiki.jenkins-ci.org/display/JENKINS/Doxygen+Plugin

Upvotes: 0

rturrado
rturrado

Reputation: 8064

I've found out that the error hudson.AbortException: The output directory doesn't exist refers to the OUTPUT_DIRECTORY variable in the Doxygen configuration file.

You have to take three things into account with the Doxygen plugin (at least as of 0.15).

In the Doxygen plugin configuration in a Jenkins task:

  • Doxyfile path: this path has to be RELATIVE to the Jenkins task workspace. And point to the .doxy file that contains the Doxygen configuration.
  • Folder from which doxygen is run: a folder within the Jenkins task workspace.

In the Doxygen configuration file:

  • OUTPUT_DIRECTORY variable: this variable sets the directory where we want to generate the Doxygen output. It can be relative or absolute. In case it was relative, it would be relative to the folder from which Doxygen is run. If we want to leave the Doxygen output in the same folder from which we run Doxygen, we should leave this OUTPUT_DIRECTORY variable empty.

Upvotes: 0

Guilhem Soulas
Guilhem Soulas

Reputation: 1995

I found the solution.

Instead of using the plugin, I just created freestyle job in Jenkins with the Doxygen generation command in it.

Upvotes: 5

Related Questions