diff options
author | Jeffrey C. Ollie <jeff@ocjtech.us> | 2008-12-04 16:25:04 -0600 |
---|---|---|
committer | Jeffrey C. Ollie <jeff@ocjtech.us> | 2008-12-04 16:25:04 -0600 |
commit | b994df88eb63beb6b7ce6972a26bd6b48a18c86a (patch) | |
tree | b207a45d6fe171878d9de57813054df51d6008a5 /loginfo-consumer | |
parent | 0f8301b3f6fef02cbb5d0ef58323dfad28f4aacd (diff) | |
download | cvsmessaging-b994df88eb63beb6b7ce6972a26bd6b48a18c86a.tar.gz cvsmessaging-b994df88eb63beb6b7ce6972a26bd6b48a18c86a.tar.xz cvsmessaging-b994df88eb63beb6b7ce6972a26bd6b48a18c86a.zip |
Build list of email addrs to receive email.
Diffstat (limited to 'loginfo-consumer')
-rwxr-xr-x | loginfo-consumer | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/loginfo-consumer b/loginfo-consumer index 4359c00..036be88 100755 --- a/loginfo-consumer +++ b/loginfo-consumer @@ -18,6 +18,7 @@ # <http://www.gnu.org/licenses/>. import os +import re from qpid.util import connect from qpid.connection import Connection @@ -44,6 +45,13 @@ def get_diff(cvsroot, directory, filename, old_version, new_version): status = fp.close() return diff +package_re = re.compile(r'^(?:rpms|devel)/([^/]+)(?:/([^/]+))?') + +def append_package_owner_email(directory, to): + package_match = package_re.match(directory) + if package_match and package_match.group(1): + to.append('%s-owner@fedoraproject.org' % package_match.group(1)) + host = '127.0.0.1' port = 5672 @@ -92,6 +100,16 @@ while True: print etree.tostring(root_element, pretty_print = True) + to = [] + for email_element in root_element.xpath('/loginfo/notification/email'): + email = email_element.text + if email == '%%OWNER%%': + append_package_owner_email(directory, to) + else: + to.append(email) + + print to + except Empty: print 'No more messages!' break |