Skip to content

Per project configuration

Vladimir Kotal edited this page Oct 24, 2022 · 25 revisions

Table of contents

Per project properties

Each project can have its own set of properties. These control various aspects of how the project (plus its repositories) is handled.

Setup

The setting of per-project tunables is done in read-only configuration file. The file can look like this:

<?xml version="1.0" encoding="UTF-8"?>
<java version="1.8.0_121" class="java.beans.XMLDecoder">
 <object class="org.opengrok.indexer.configuration.Configuration" id="Configuration0">

  ...

  <void property="projects">
   <void method="put">
    <string>PROJECT_NAME</string>
    <object class="org.opengrok.indexer.configuration.Project">
     <void property="navigateWindowEnabled">
      <boolean>true</boolean>
     </void>
    </object>
   </void>
  </void>

 </object>
</java>

Warning: keep in mind that this way the read-only configuration can only be used for initial global indexing. After that comment per-project settings out in read-only configuration and use RESTful API to set per project properties. For more info see https://github.com/oracle/opengrok/issues/2147

Properties

Property Type Meaning
annotationCacheEnabled boolean enable annotation cache, generated during reindex
navigateWindowEnabled boolean display navigate window automatically when browsing xrefs
tabSize int size of tabulator in spaces. project reindex is necessary after changing the value !
handleRenamedFiles boolean disables or enables handling of renamed files
historyEnabled boolean enables or disables history for particular project
indexed boolean marks the project (not) indexed. When the value is False, the project is not displayed in the web application.
mergeCommitsEnabled boolean enables or disables storing merge commits in history
bugPage string URL of service where one can query information about bugs
bugPattern string regular expression to extract bug identification. The regexp is expected to have a single group.
reviewPage string similar to bugPage but for code review links
reviewPattern string similar to bugPattern but for code review links
username string username to use for repository authentication. Common for all repositories of given project. Currently works for Subversion repositories only.
password string password to use for repository authentication. Common for all repositories of given project. Currently works for Subversion repositories only.