Opened 8 years ago

Closed 17 months ago

#4740 closed enhancement (fixed)

Accessing the doxygen files in a subversion repository

Reported by: anonymous Owned by: Christian Boos
Priority: normal Component: DoxygenPlugin
Severity: normal Keywords: doxygen subversion
Cc: Ryan J Ollos Trac Release: 0.11


As documentation should be part of a project, we commit our doxygen HTML documentation to the subversion repository too. What we do now is to checkout this files on the server in an extra directory to let the doxygen plugin have access to them. The subversion directory could be mounted as WebDAV filesystem, but this means much administration efford too. This means a couple of management and administration, so it would be desirable and highly convenient to access the files directly in the subversion repository. So instead of /var/lib/path/to/doxygen/doc something like svn:trunk/doc/html could then be configured.

Unfortunately I don't know python (I looked at the sources and understood nothing), so I ask you to realize this enhancement.

Thank you in advance!

Attachments (0)

Change History (6)

comment:1 Changed 8 years ago by anonymous

Cc: ryano@… added; anonymous removed

comment:2 Changed 8 years ago by anonymous

Type: defectenhancement

comment:3 Changed 8 years ago by anonymous

I don't think this is necessary. Manually maintaining the documentation like this is not ideal and takes a lot of time. Try this method instead:

  1. On the machine hosting Subversion/Trac, checkout the repository that you are interested in documenting into a local working directory.
  2. Create a post-commit script that updates the above working directory and generates the Doxygen documentation (in the background, if possible).

Because the documentation will be generated when the commit is successful, you can be sure that you are always serving the latest/greatest documentation.

comment:4 Changed 8 years ago by anonymous

Cc: Ryan J Ollos added; ryano@… removed

comment:5 Changed 8 years ago by Lucas Rangit MAGASWERAN

Instead of a post-commit hook I use Bitten and the following build recipe to generate the latest doxygen documentation and then rsync's them to the SVN host at a location the DoxygenPlugin for Trac is configured to look.

<build xmlns:svn=""
  <step id="checkout" description="Checkout source from repository">
    <svn:checkout url="https://svn/project/"
        path="${path}" revision="${revision}" />
  <step id="build" description="Compile">
    <sh:exec executable="doxygen" args=".doxyfile" /> 
  <step id="rsync" description="Update Trac Doxygen">
    <sh:exec executable="rsync" args="-rvz --delete /var/local/doxygen/project/ svn@svn:/var/local/doxygen/project" /> 

comment:6 Changed 17 months ago by Committo-Ergo-Sum

Resolution: fixed
Status: newclosed

In 15337:

DoxygenPlugin, now version 0.4, proposes a new item in the Panel Admin, giving acces to a Web form.
This form is automatically built from the Doxyfile given by the doxygen command running on the Trac serveur if any.
The form is filled with the default values in the standard Doxyfile; the user may change them, afterwards he submits the form, the values are saved in a new Doxygen file and the Doxygen command is executed with this file as argument.
On return, the same Web form is shown, with the changes made before, but a message is first shown saying if the Doxygen command ran correctly or not.
A click on the triangle in front of the message will show the wole trace of the command, or the error message if any.

The new Doxygen file is kept on the server, so this Web page, once filled with the proper values, can be seen as a way to execute the Doxygen command on the Trac server.

This way of combining Trac and Doxygen on a unique server is different from the demand in the ticket system, but we may consider it closes #4740.

Modify Ticket

Change Properties
Set your email in Preferences
as closed The owner will remain Christian Boos.
The resolution will be deleted.

Add Comment

E-mail address and name can be saved in the Preferences.

Note: See TracTickets for help on using tickets.