Skip to content

Commit cc3047e

Browse files
committed
Continued testing of commit hooks. Related to ietf-tools#3297. Commit ready to merge.
- Legacy-Id: 19057
1 parent 14df71e commit cc3047e

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

hooks/trac-post-commit-hook

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ from datetime import datetime
7979
from optparse import OptionParser, OptionGroup
8080
import syslog
8181

82-
syslog.openlog("post-commit-trac", syslog.LOG_PID, syslog.LOG_LOCAL0)
82+
syslog.openlog("post-commit-trac", syslog.LOG_PID, syslog.LOG_USER)
8383
log = syslog.syslog
8484

8585
parser = OptionParser()
@@ -94,6 +94,7 @@ parser.add_option('-p', '--project', dest='project',
9494
parser.add_option('-r', '--revision', dest='rev',
9595
help='Repository revision number.')
9696
parser.add_option('-a', '--action', dest='action', default=None, help='The action to take on a ticket (default: none)')
97+
parser.add_option('-R', '--repository-name', dest='repo_name', default=None, help='Which repository to look in, if the trac instance has multiple repositories')
9798

9899
group = OptionGroup(parser, "DEPRECATED OPTIONS")
99100
group.add_option('-u', '--user', dest='user',
@@ -123,8 +124,8 @@ from trac.versioncontrol.api import NoSuchChangeset
123124

124125
ticket_prefix = '(?:#|(?:ticket|issue|bug)s?[: ]?#?)'
125126
ticket_reference = ticket_prefix + '[0-9]+'
126-
action_pattern = "(?:(?i)(?:fix(?: for)?|fixes|close|closes|addresses|references|refs|re|relates to|related to|see|described in))"
127-
ticket_command = (r'(?P<action>%s).?(?P<ticket>%s(?:(?:[, &]*|[ ]?and[ ]?)%s)*)' % (action_pattern, ticket_reference, ticket_reference))
127+
action_pattern = "(?:(?i)(?:fix(?: for| to)?|fixes|fixed|close|closes|completes|addresses|references|refs|re|relates to|related to|see|described in))"
128+
ticket_command = (r'(?P<action>%s).?(?P<ticket>%s(?:(?:[, &]*|[, ]+and[ ]?)%s)*)' % (action_pattern, ticket_reference, ticket_reference))
128129

129130
if options.envelope:
130131
ticket_command = r'\%s%s\%s' % (options.envelope[0], ticket_command,
@@ -148,9 +149,12 @@ class CommitHook:
148149

149150
_supported_cmds = {'fix': '_cmdClose',
150151
'fix for': '_cmdClose',
152+
'fix to': '_cmdClose',
151153
'fixes': '_cmdClose',
154+
'fixed': '_cmdClose',
152155
'close': '_cmdClose',
153156
'closes': '_cmdClose',
157+
'completes': '_cmdClose',
154158

155159
'addresses': '_cmdRefs',
156160
'described in': '_cmdRefs',
@@ -165,7 +169,7 @@ class CommitHook:
165169
def __init__(self, project=options.project, author=options.user,
166170
rev=options.rev, url=options.url):
167171
self.env = open_environment(project)
168-
repos = self.env.get_repository()
172+
repos = self.env.get_repository(options.repo_name)
169173
repos.sync()
170174

171175
# Instead of bothering with the encoding, we'll use unicode data

0 commit comments

Comments
 (0)