Configuration should be specified in the $site_path/etc/<libModule>.config
file of the libModule consuming this library.
ref-database.enabled
: Enable the use of a global refdb Defaults: true
ref-database.enforcementRules.<policy>
: Level of consistency enforcement across sites on a project:refs basis. Supports two values for enforcing the policy on multiple projects or refs. If the project or ref is omitted, apply the policy to all projects or all refs.
The <policy> can have one of the following values: 1. REQUIRED - Throw an exception if a git ref-update is processed against a local ref not yet in sync with the global refdb. The user transaction is cancelled. 2. IGNORED - Ignore any validation against the global refdb. *Example:* ``` [ref-database "enforcementRules"] IGNORED = AProject:/refs/heads/feature ``` Ignore the alignment with the global refdb for AProject on refs/heads/feature. Defaults: No rules = All projects are REQUIRED to be consistent on all refs.
projects.pattern
: Specifies which projects should be validated against the global refdb. It can be provided more than once, and supports three formats: regular expressions, wildcard matching, and single project matching. All three formats match case-sensitive.
Values starting with a caret `^` are treated as regular expressions. For the regular expressions details please follow official [java documentation](https://docs.oracle.com/javase/tutorial/essential/regex/). Please note that regular expressions could also be used with inverse match. Values that are not regular expressions and end in `*` are treated as wildcard matches. Wildcards match projects whose name agrees from the beginning until the trailing `*`. So `foo/b*` would match the projects `foo/b`, `foo/bar`, and `foo/baz`, but neither `foobar`, nor `bar/foo/baz`. Values that are neither regular expressions nor wildcards are treated as single project matches. So `foo/bar` matches only the project `foo/bar`, but no other project. By default, all projects are matched.