Configure Tickets close-on-push commit message regex (issue-404)
| | |
| | | - Ensure the Lucene ticket index is updated on repository deletion. |
| | | changes: |
| | | - Specify the --dailyLogFile option for the Ubuntu and CentOS service scripts (issue-348) |
| | | - The ticket close-on-push commit message regular expression is now configurable by a setting (issue-404) |
| | | - Option to allow LDAP users to directly authenticate without performing LDAP searches (pr-162) |
| | | - Replace JCommander with args4j to be consistent with other tools (ticket-28) |
| | | additions: |
| | |
| | | - Jeremie Brebec |
| | | settings: |
| | | - { name: 'realm.ldap.bindpattern', defaultValue: ' ' } |
| | | - { name: 'tickets.closeOnPushCommitMessageRegex', defaultValue: '(?:fixes|closes)[\\s-]+#?(\\d+)' } |
| | | } |
| | | |
| | | # |
| | |
| | | # SINCE 1.4.0
|
| | | tickets.requireApproval = false
|
| | |
|
| | | # The case-insensitive regular expression used to identify and close tickets on
|
| | | # push to the integration branch for commits that are NOT already referenced as
|
| | | # a patchset tip.
|
| | | #
|
| | | # SINCE 1.5.0
|
| | | tickets.closeOnPushCommitMessageRegex = (?:fixes|closes)[\\s-]+#?(\\d+)
|
| | |
|
| | | # Specify the location of the Lucene Ticket index
|
| | | #
|
| | | # SINCE 1.4.0
|
| | |
| | |
|
| | | if (parseMessage) {
|
| | | // parse commit message looking for fixes/closes #n
|
| | | Pattern p = Pattern.compile("(?:fixes|closes)[\\s-]+#?(\\d+)", Pattern.CASE_INSENSITIVE);
|
| | | Matcher m = p.matcher(commit.getFullMessage());
|
| | | while (m.find()) {
|
| | | String val = m.group(1);
|
| | | return Long.parseLong(val);
|
| | | String dx = "(?:fixes|closes)[\\s-]+#?(\\d+)";
|
| | | String x = settings.getString(Keys.tickets.closeOnPushCommitMessageRegex, dx);
|
| | | if (StringUtils.isEmpty(x)) {
|
| | | x = dx;
|
| | | }
|
| | | try {
|
| | | Pattern p = Pattern.compile(x, Pattern.CASE_INSENSITIVE);
|
| | | Matcher m = p.matcher(commit.getFullMessage());
|
| | | while (m.find()) {
|
| | | String val = m.group(1);
|
| | | return Long.parseLong(val);
|
| | | }
|
| | | } catch (Exception e) {
|
| | | LOGGER.error(String.format("Failed to parse \"%s\" in commit %s", x, commit.getName()), e);
|
| | | }
|
| | | }
|
| | | return 0L;
|