NAME

SVN::Notify::Filter::EmailFlatFileDB - Converts account names to email address based on a flat-file database

VERSION

Version 1.01

SYNOPSIS

This is intended to work with SVN::Notify, as part of a subversion post-commit hook.

svnnotify --repos-path "$1" --revision "$2" ..etc..  \
          --filter EmailFlatFileDB                   \
                --account_file /x/x/x/users.db         \
                --account_field 3

with a text file like other UNIX/Apache password files:

   user1:xxx:xxx:user1@example.com
   user2:xxx:xxx:user2@example.com

DESCRIPTION

This module is a filter for SVN::Notify, which will translate user account names (e.g. "user1") into email address. It does this based on a colon-separated file, like a UNIX passwd file (or more usefully) the AuthUserFile used by Apache. The file path is specified via the --account_file option to the svnnotify script, and the index (zero-based) of the email field is specified via the --account_field option.

You can use the module in conjunction with SVN::Notify::Filter::AuthZEmail to completely remove the necessity of passing in --from and --to options to the script. (AuthZEmail will determine the account names for the email recipients, and this module will translate the account names into email addresses.)

(This module will remove --to entries that are empty.)

FUNCTIONS

from

SVN::Notify filter callback function for the "from" email address. By default, SVN::Notify uses the account name of the commit author. This will translate that into the email address, based upon the value in the database file. Note that the svnnotify --from option can also be used to override the default SVN::Notify behavior, and this filter will not modify an email address if it is passed in.

recipients

SVN::Notify filter callback function to determine the email addresses for the email recipients, based upon account names passed to SVN::Notify.

Account names will be looked up via the flat-file database, but any email addresses passed in will not be modified. This allows one to enter either account names or email address via the svnnotify --to options. Email addresses are distinguished from account names if there is an '@' in the string. Empty string account names will be discarded. (The SVN::Notify object requires a --to argument, and an empty string account name is a workaround for that, for filters that completely provide the recipient list.)

AUTHOR

Jeffrey Borlik, <jborlik at earthlink.net>

BUGS

Please report any bugs or feature requests to bug-svn-notify-filter-emailflatfiledb at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=SVN-Notify-Filter-EmailFlatFileDB. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc SVN::Notify::Filter::EmailFlatFileDB

You can also look for information at:

ACKNOWLEDGEMENTS

Thanks to David E. Wheeler for SVN::Notify, a very useful tool for Subversion.

COPYRIGHT & LICENSE

Copyright 2008 Jeffrey Borlik, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.