This document contains configuration settings for CvsNotify
Some values are defaulted in the GlobalsDoc
Location
The full path of this file is specified in the CVSNotifyXML element of the GlobalsDoc configuration document.
XML Document
<CVSNotify-Doc>
<CVSWebInfo>
This element allows CVS Web or View CVS settings to be configured on a per-directory basis within your CVS server. This element is optional since the CVS Web related elements appear inside the other elements (LogInfo, Notify, TagInfo).
Multiplicity: *
<Branch>
Specify a CVS branch tag name that sibling elements apply to.
Multiplicity: 0,1
</Branch>
<Path>
This is a case-insensitive regular expression that is tested against the absolute path of the directory on the CVS server in which a commit occurred. If the regular expression fails to match, the entire <LogInfo/> element is ignored. Use forward slashes for directory separators even on Windows. Note: for CVSNT build 62 and possibly later, the relative CVS module name is used instead of the physical path on the CVS server. Ex: c:/cvs/build/$
Applies to only the "build" directory
Ex: ^/build/$
Applies to only the "build" module on CVSNT build 62+
Ex: c:/cvs/build/
Applies to every directory under and including the "build" directory
Ex: ^/build/
Applies to every directory under and including the "build" module on CVSNT build 62+
Ex: c:/cvs/build/.+
Applies to every directory under "build" not including "build"
Ex: c:/cvs/build
Applies to every directory under and including the "build" directory. Also applies to every directory starting with "build" and its sub- directories.
Ex: c:/cvs/build$
This won't match anything so don't try it
A blank string (which is the default when <Path> is omitted) matches everything.
Multiplicity: 0,1
</Path>
<CVSWebURL>
Provide the URL of CVS or ViewCVS. Must end with a trailing slash.
Multiplicity: 0,1
</CVSWebURL>
<CVSWebURLQuery>
Provide the query portion of the URL to CVS or ViewCVS. For example, root=foo
Multiplicity: 0,1
</CVSWebURLQuery>
</CVSWebInfo>
<LogInfo>
This element is for setting preferences for CVS commit notifications.
Multiplicity: *
<Debug>1</Debug> Turn on extra debugging logic
<Repository>
Specify the name of the repository that sibling elements apply to.
Multiplicity: *
</Respository>
<Branch>
Specify a CVS branch tag name that sibling elements apply to.
Multiplicity: 0,1
</Branch>
Specify a user name whose activities should not be monitored.
Multiplicity: *
<Path>
This is the same as <Path/> above
</Path>
<Subject>
Specify the message subject (email or news post)
Multiplicity: 0,1
</Subject>
<From>
Specify the email address From field. If missing @ and the domain name, the default domain will be added.
Multiplicity: 0,1
</From>
<To>
Specify a comma-separated list of addresses to send email notification to. This list is appended to the active recipient list which initially contains the email addresses specified via the CVSEmailGroup setting in GlobalsDoc.
If an email address is missing @ and the domain name, the default domain will be added per Domain in GlobalsDoc.
"default" resets the recipient list to the CVSEmailGroup setting in GlobalsDoc.
"none" creates a blank list.
Multiplicity: *
</To>
<CVSWebURL>
Provide the URL of CVS or ViewCVS. Must end with a trailing slash.
Multiplicity: 0,1
</CVSWebURL>
<CVSWebURLQuery>
Provide the query portion of the URL to CVS or ViewCVS. For example, root=foo
Multiplicity: 0,1
</CVSWebURLQuery>
<IRCServer>
The name of the IRC server to send notifcation to.
Multiplicity: 0,1
</IRCServer>
<IRCPort>
The port number of the IRC server to send notification to.
Multiplicity: 0,1
</IRCPort>
<IRCBotChannel>
The name of the channel, which should start with #, to send notification to.
Multiplicity: 0,1
<IRCBotChannel>
<IRCBotName>
The nick of the user that will connect to IRC. Notifications will not appear of this nick is already in use. CVSNotify only makes one connection to the IRC server at a time.
Multiplicity: 0,1
</IRCBotName>
<IRCBotPrelude>
Specify some text that will be sent to the IRC channel before the notification message.
Multiplicity: 0,1
</IRCBotPrelude>
<IRCFloodSeconds>
Multiplicity: 0,1
</IRCFloodSeconds>
<IRCFloodMessages>
Multiplicity: 0,1
</IRCFloodMessages>
<Newsgroup>
Comma-separated list of newsgroups to send notification to.
Multiplicity: 0,1
</Newsgroup>
<NNTPServer>
News server to send notification to.
Multiplicity: 0,1
</NNTPServer>
<NNTPServerPort>
The port of the news server to send notification to.
Multiplicity: 0,1
</NNTPServerPort>
</LogInfo>
<Notify>
This element has the same structure as <LogInfo/>. It is for setting preferences for CVS watch notifications. The elements related to IRC and News don't apply.
Multiplicity: *
</Notify>
<TagInfo>
This element has the same structure as <LogInfo/>. It is for setting preferences for CVS tagging notifications.
Multiplicity: *
</TagInfo>
</CVSNotify>
Example
<CVSNotify-Doc>
<LogInfo>
<!-- Notify buildmaster if anything is committed to
the build module and submodules -->
<Path>c:/cvs/repo1/build/</Path> <To>buildmaster@devguy.com</To>
<!-- Notify buildmaster if anything is committed to
the build module and submodules -- CVSNT build 62+ version -->
<Path>^/build/</Path> <To>buildmaster@devguy.com</To>
</LogInfo> <CVSWebInfo>
<!-- CVSWeb - repo1 (default root) -->
<Path>c:/cvs/repo1</Path> <CVSWebURL>http://tiger/cgi-bin/cvsweb </CVSWebURL>
</CVSWebInfo> <CVSWebInfo>
<!-- CVSWeb - repo2 (repo2 root) -->
<Path>c:/cvs/repo2</Path> <CVSWebURL>http://tiger/cgi-bin/cvsweb</CVSWebURL> <CVSWebURLQuery>root=repo2<CVSWebURLQuery>
</CVSWebInfo>
</CVSNotify-Doc>
