diff options
Diffstat (limited to 'CVSROOT')
-rw-r--r-- | CVSROOT/checkoutlist | 13 | ||||
-rwxr-xr-x | CVSROOT/ciabot.pl | 327 | ||||
-rw-r--r-- | CVSROOT/commitinfo | 15 | ||||
-rw-r--r-- | CVSROOT/config | 14 | ||||
-rw-r--r-- | CVSROOT/cvswrappers | 23 | ||||
-rw-r--r-- | CVSROOT/editinfo | 21 | ||||
-rw-r--r-- | CVSROOT/loginfo | 29 | ||||
-rw-r--r-- | CVSROOT/modules | 26 | ||||
-rw-r--r-- | CVSROOT/notify | 12 | ||||
-rw-r--r-- | CVSROOT/rcsinfo | 13 | ||||
-rw-r--r-- | CVSROOT/taginfo | 20 | ||||
-rw-r--r-- | CVSROOT/verifymsg | 21 |
12 files changed, 0 insertions, 534 deletions
diff --git a/CVSROOT/checkoutlist b/CVSROOT/checkoutlist deleted file mode 100644 index b04b3501f5..0000000000 --- a/CVSROOT/checkoutlist +++ /dev/null @@ -1,13 +0,0 @@ -# The "checkoutlist" file is used to support additional version controlled -# administrative files in $CVSROOT/CVSROOT, such as template files. -# -# The first entry on a line is a filename which will be checked out from -# the corresponding RCS file in the $CVSROOT/CVSROOT directory. -# The remainder of the line is an error message to use if the file cannot -# be checked out. -# -# File format: -# -# [<whitespace>]<filename><whitespace><error message><end-of-line> -# -# comment lines begin with '#' diff --git a/CVSROOT/ciabot.pl b/CVSROOT/ciabot.pl deleted file mode 100755 index a4869ed437..0000000000 --- a/CVSROOT/ciabot.pl +++ /dev/null @@ -1,327 +0,0 @@ -#!/usr/bin/perl -w -# -# ciabot -- Mail a CVS log message to a given address, for the purposes of CIA -# -# Loosely based on cvslog by Russ Allbery <rra@stanford.edu> -# Copyright 1998 Board of Trustees, Leland Stanford Jr. University -# -# Copyright 2001, 2003, 2004 Petr Baudis <pasky@ucw.cz> -# -# This program is free software; you can redistribute it and/or modify it under -# the terms of the GNU General Public License version 2, as published by the -# Free Software Foundation. -# -# The master location of this file is -# http://pasky.or.cz/~pasky/dev/cvs/ciabot.pl. -# -# This program is designed to run from the loginfo CVS administration file. It -# takes a log message, massaging it and mailing it to the address given below. -# -# Its record in the loginfo file should look like: -# -# ALL $CVSROOT/CVSROOT/ciabot.pl %s $USER project from_email dest_email ignore_regexp -# -# Note that the last four parameters are optional, you can alternatively change -# the defaults below in the configuration section. -# -# If it does not work, try to disable $xml_rpc in the configuration section -# below. -# -# ciabot.pl,v 1.110 2004/01/09 17:40:13 pasky -# $Id$ - -use strict; -use vars qw ($project $from_email $dest_email $rpc_uri $sendmail $sync_delay - $xml_rpc $ignore_regexp $alt_local_message_target); - - - - -### Configuration - -# Project name (as known to CIA). -$project = 'ELinks'; - -# The from address in generated mails. -$from_email = 'pasky@ucw.cz'; - -# Mail all reports to this address. -$dest_email = 'cia@navi.cx'; - -# If using XML-RPC, connect to this URI. -$rpc_uri = 'http://cia.navi.cx/RPC2'; - -# Path to your USCD sendmail compatible binary (your mailer daemon created this -# program somewhere). -$sendmail = '/usr/sbin/sendmail'; - -# Number of seconds to wait for possible concurrent instances. CVS calls up -# this script for each involved directory separately and this is the sync -# delay. 5s looks as a safe value, but feel free to increase if you are running -# this on a slower (or overloaded) machine or if you have really a lot of -# directories. -$sync_delay = 5; - -# This script can communicate with CIA either by mail or by an XML-RPC -# interface. The XML-RPC interface is faster and more efficient, however you -# need to have RPC::XML perl module installed, and some large CVS hosting sites -# (like Savannah or Sourceforge) might not allow outgoing HTTP connections -# while they allow outgoing mail. Also, this script will hang and eventually -# not deliver the event at all if CIA server happens to be down, which is -# unfortunately not an uncommon condition. -$xml_rpc = 0; - -# You can make this bot to totally ignore events concerning the objects -# specified below. Each object is composed of <module>/<path>/<filename>, -# therefore file Manifest in root directory of module gentoo will be called -# "gentoo/Manifest", while file src/bfu/inphist.c of module elinks will be -# called "elinks/src/bfu/inphist.c". Easy, isn't it? -# -# This variable should contain regexp, against which will each object be -# checked, and if the regexp is matched, the file is ignored. Therefore ie. to -# ignore all changes in the two files above and everything concerning module -# 'admin', use: -# -#$ignore_regexp = "^(gentoo/Manifest|elinks/src/bfu/inphist.c|admin/)"; -$ignore_regexp = "/Manifest\$"; - -# It can be useful to also grab the generated XML message by some other -# programs and ie. autogenerate some content based on it. Here you can specify -# a file to which it will be appended. -$alt_local_message_target = ""; - - - - -### The code itself - -use vars qw ($user $module $tag @files $logmsg $message); - -my @dir; # This array stores all the affected directories -my @dirfiles; # This array is mapped to the @dir array and contains files - # affected in each directory - - - -### Input data loading - - -# These arguments are from %s; first the relative path in the repository -# and then the list of files modified. - -@files = split (' ', ($ARGV[0] or '')); -$dir[0] = shift @files or die "$0: no directory specified\n"; -$dirfiles[0] = "@files" or die "$0: no files specified\n"; - - -# Guess module name. - -$module = $dir[0]; $module =~ s#/.*##; - - -# Figure out who is doing the update. - -$user = $ARGV[1]; - - -# Use the optional parameters, if supplied. - -$project = $ARGV[2] if $ARGV[2]; -$from_email = $ARGV[3] if $ARGV[3]; -$dest_email = $ARGV[4] if $ARGV[4]; -$ignore_regexp = $ARGV[5] if $ARGV[5]; - - -# Parse stdin (what's interesting is the tag and log message) - -while (<STDIN>) { - $tag = $1 if /^\s*Tag: ([a-zA-Z0-9_-]+)/; - last if /^Log Message/; -} - -while (<STDIN>) { - next unless ($_ and $_ ne "\n" and $_ ne "\r\n"); - s/&/&/g; - s/</</g; - s/>/>/g; - $logmsg .= $_; -} - - - -### Remove to-be-ignored files - -$dirfiles[0] = join (' ', - grep { - my $f = "$module/$dir[0]/$_"; - $f !~ m/$ignore_regexp/; - } split (/\s+/, $dirfiles[0]) -) if ($ignore_regexp); -exit unless $dirfiles[0]; - - - -### Sync between the multiple instances potentially being ran simultanously - -my $sum; # _VERY_ simple hash of the log message. It is really weak, but I'm - # lazy and it's really sorta exceptional to even get more commits - # running simultanously anyway. -map { $sum += ord $_ } split(//, $logmsg); - -my $syncfile; # Name of the file used for syncing -$syncfile = "/tmp/cvscia.$project.$module.$sum"; - - -if (-f $syncfile and -w $syncfile) { - # The synchronization file for this file already exists, so we are not the - # first ones. So let's just dump what we know and exit. - - open(FF, ">>$syncfile") or die "aieee... can't log, can't log! $syncfile blocked!"; - print FF "$dirfiles[0]!@!$dir[0]\n"; - close(FF); - exit; - -} else { - # We are the first one! Thus, we'll fork, exit the original instance, and - # wait a bit with the new one. Then we'll grab what the others collected and - # go on. - - # We don't need to care about permissions since all the instances of the one - # commit will obviously live as the same user. - - # system("touch") in a different way - open(FF, ">>$syncfile") or die "aieee... can't log, can't log! $syncfile blocked!"; - close(FF); - - exit if (fork); - sleep($sync_delay); - - open(FF, $syncfile); - my ($dirnum) = 1; # 0 is the one we got triggerred for - while (<FF>) { - chomp; - ($dirfiles[$dirnum], $dir[$dirnum]) = split(/!@!/); - $dirnum++; - } - close(FF); - - unlink($syncfile); -} - - - -### Compose the mail message - - -my ($VERSION) = '$Revision$' =~ / (\d+\.\d+) /; -my $ts = time; - -$message = <<EM -<message> - <generator> - <name>CIA Perl client for CVS</name> - <version>$VERSION</version> - <url>http://pasky.or.cz/~pasky/dev/cvs/ciabot.pl</url> - </generator> - <source> - <project>$project</project> - <module>$module</module> -EM -; -$message .= " <branch>$tag</branch>" if ($tag); -$message .= <<EM - </source> - <timestamp> - $ts - </timestamp> - <body> - <commit> - <author>$user</author> - <files> -EM -; - -for (my $dirnum = 0; $dirnum < @dir; $dirnum++) { - map { - $_ = $dir[$dirnum] . '/' . $_; - s#^.*?/##; # weed out the module name - s/&/&/g; - s/</</g; - s/>/>/g; - $message .= " <file>$_</file>\n"; - } split(/ /, $dirfiles[$dirnum]); -} - -$message .= <<EM - </files> - <log> -$logmsg - </log> - </commit> - </body> -</message> -EM -; - - - -### Write the message to an alt-target - -if ($alt_local_message_target and open (ALT, ">>$alt_local_message_target")) { - print ALT $message; - close ALT; -} - - - -### Send out the XML-RPC message - - -if ($xml_rpc) { - # We gotta be careful from now on. We silence all the warnings because - # RPC::XML code is crappy and works with undefs etc. - $^W = 0; - $RPC::XML::ERROR if (0); # silence perl's compile-time warning - - require RPC::XML; - require RPC::XML::Client; - - my $rpc_client = new RPC::XML::Client $rpc_uri; - my $rpc_request = RPC::XML::request->new('hub.deliver', $message); - my $rpc_response = $rpc_client->send_request($rpc_request); - - unless (ref $rpc_response) { - die "XML-RPC Error: $RPC::XML::ERROR\n"; - } - exit; -} - - - -### Send out the mail - - -# Open our mail program - -open (MAIL, "| $sendmail -t -oi -oem") or die "Cannot execute $sendmail : " . ($?>>8); - - -# The mail header - -print MAIL <<EOM; -From: $from_email -To: $dest_email -Content-type: text/xml -Subject: DeliverXML - -EOM - -print MAIL $message; - - -# Close the mail - -close MAIL; -die "$0: sendmail exit status " . ($? >> 8) . "\n" unless ($? == 0); - -# vi: set sw=2: diff --git a/CVSROOT/commitinfo b/CVSROOT/commitinfo deleted file mode 100644 index b19e7b7a63..0000000000 --- a/CVSROOT/commitinfo +++ /dev/null @@ -1,15 +0,0 @@ -# The "commitinfo" file is used to control pre-commit checks. -# The filter on the right is invoked with the repository and a list -# of files to check. A non-zero exit of the filter program will -# cause the commit to be aborted. -# -# The first entry on a line is a regular expression which is tested -# against the directory that the change is being committed to, relative -# to the $CVSROOT. For the first match that is found, then the remainder -# of the line is the name of the filter to run. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name "ALL" appears as a regular expression it is always used -# in addition to the first matching regex or "DEFAULT". diff --git a/CVSROOT/config b/CVSROOT/config deleted file mode 100644 index ff43ec005a..0000000000 --- a/CVSROOT/config +++ /dev/null @@ -1,14 +0,0 @@ -# Set this to "no" if pserver shouldn't check system users/passwords -#SystemAuth=no - -# Put CVS lock files in this directory rather than directly in the repository. -#LockDir=/var/lock/cvs - -# Set `TopLevelAdmin' to `yes' to create a CVS directory at the top -# level of the new working directory when using the `cvs checkout' -# command. -#TopLevelAdmin=no - -# Set `LogHistory' to `all' or `TOFEWGCMAR' to log all transactions to the -# history file, or a subset as needed (ie `TMAR' logs all write operations) -#LogHistory=TOFEWGCMAR diff --git a/CVSROOT/cvswrappers b/CVSROOT/cvswrappers deleted file mode 100644 index 0accaf1b15..0000000000 --- a/CVSROOT/cvswrappers +++ /dev/null @@ -1,23 +0,0 @@ -# This file affects handling of files based on their names. -# -# The -t/-f options allow one to treat directories of files -# as a single file, or to transform a file in other ways on -# its way in and out of CVS. -# -# The -m option specifies whether CVS attempts to merge files. -# -# The -k option specifies keyword expansion (e.g. -kb for binary). -# -# Format of wrapper file ($CVSROOT/CVSROOT/cvswrappers or .cvswrappers) -# -# wildcard [option value][option value]... -# -# where option is one of -# -f from cvs filter value: path to filter -# -t to cvs filter value: path to filter -# -m update methodology value: MERGE or COPY -# -k expansion mode value: b, o, kkv, &c -# -# and value is a single-quote delimited value. -# For example: -#*.gif -k 'b' diff --git a/CVSROOT/editinfo b/CVSROOT/editinfo deleted file mode 100644 index d78886c152..0000000000 --- a/CVSROOT/editinfo +++ /dev/null @@ -1,21 +0,0 @@ -# The "editinfo" file is used to allow verification of logging -# information. It works best when a template (as specified in the -# rcsinfo file) is provided for the logging procedure. Given a -# template with locations for, a bug-id number, a list of people who -# reviewed the code before it can be checked in, and an external -# process to catalog the differences that were code reviewed, the -# following test can be applied to the code: -# -# Making sure that the entered bug-id number is correct. -# Validating that the code that was reviewed is indeed the code being -# checked in (using the bug-id number or a seperate review -# number to identify this particular code set.). -# -# If any of the above test failed, then the commit would be aborted. -# -# Actions such as mailing a copy of the report to each reviewer are -# better handled by an entry in the loginfo file. -# -# One thing that should be noted is the the ALL keyword is not -# supported. There can be only one entry that matches a given -# repository. diff --git a/CVSROOT/loginfo b/CVSROOT/loginfo deleted file mode 100644 index c5847835b7..0000000000 --- a/CVSROOT/loginfo +++ /dev/null @@ -1,29 +0,0 @@ -# The "loginfo" file controls where "cvs commit" log information -# is sent. The first entry on a line is a regular expression which must match -# the directory that the change is being made to, relative to the -# $CVSROOT. If a match is found, then the remainder of the line is a filter -# program that should expect log information on its standard input. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name ALL appears as a regular expression it is always used -# in addition to the first matching regex or DEFAULT. -# -# You may specify a format string as part of the -# filter. The string is composed of a `%' followed -# by a single format character, or followed by a set of format -# characters surrounded by `{' and `}' as separators. The format -# characters are: -# -# s = file name -# V = old version number (pre-checkin) -# v = new version number (post-checkin) -# -# For example: -#DEFAULT (echo ""; id; echo %s; date; cat) >> $CVSROOT/CVSROOT/commitlog -# or -#DEFAULT (echo ""; id; echo %{sVv}; date; cat) >> $CVSROOT/CVSROOT/commitlog - -#^buildroot ( $CVSROOT/CVSROOT/ciabot.pl %s $USER openwrt cvs-commits@openwrt.ksilebo.net cia@navi.cx ) -#^root ( $CVSROOT/CVSROOT/ciabot.pl %s $USER openwrt cvs-commits@openwrt.ksilebo.net cia@navi.cx ) diff --git a/CVSROOT/modules b/CVSROOT/modules deleted file mode 100644 index cb9e9efc94..0000000000 --- a/CVSROOT/modules +++ /dev/null @@ -1,26 +0,0 @@ -# Three different line formats are valid: -# key -a aliases... -# key [options] directory -# key [options] directory files... -# -# Where "options" are composed of: -# -i prog Run "prog" on "cvs commit" from top-level of module. -# -o prog Run "prog" on "cvs checkout" of module. -# -e prog Run "prog" on "cvs export" of module. -# -t prog Run "prog" on "cvs rtag" of module. -# -u prog Run "prog" on "cvs update" of module. -# -d dir Place module in directory "dir" instead of module name. -# -l Top-level directory only -- do not recurse. -# -# NOTE: If you change any of the "Run" options above, you'll have to -# release and re-checkout any working directories of these modules. -# -# And "directory" is a path to a directory relative to $CVSROOT. -# -# The "-a" option specifies an alias. An alias is interpreted as if -# everything on the right of the "-a" had been typed on the command line. -# -# You can encode a module within a module by using the special '&' -# character to interpose another module into the current module. This -# can be useful for creating a module that consists of many directories -# spread out over the entire source repository. diff --git a/CVSROOT/notify b/CVSROOT/notify deleted file mode 100644 index 34f0bc2888..0000000000 --- a/CVSROOT/notify +++ /dev/null @@ -1,12 +0,0 @@ -# The "notify" file controls where notifications from watches set by -# "cvs watch add" or "cvs edit" are sent. The first entry on a line is -# a regular expression which is tested against the directory that the -# change is being made to, relative to the $CVSROOT. If it matches, -# then the remainder of the line is a filter program that should contain -# one occurrence of %s for the user to notify, and information on its -# standard input. -# -# "ALL" or "DEFAULT" can be used in place of the regular expression. -# -# For example: -#ALL mail %s -s "CVS notification" diff --git a/CVSROOT/rcsinfo b/CVSROOT/rcsinfo deleted file mode 100644 index 49e59f4d0d..0000000000 --- a/CVSROOT/rcsinfo +++ /dev/null @@ -1,13 +0,0 @@ -# The "rcsinfo" file is used to control templates with which the editor -# is invoked on commit and import. -# -# The first entry on a line is a regular expression which is tested -# against the directory that the change is being made to, relative to the -# $CVSROOT. For the first match that is found, then the remainder of the -# line is the name of the file that contains the template. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name "ALL" appears as a regular expression it is always used -# in addition to the first matching regex or "DEFAULT". diff --git a/CVSROOT/taginfo b/CVSROOT/taginfo deleted file mode 100644 index 274a46dd5b..0000000000 --- a/CVSROOT/taginfo +++ /dev/null @@ -1,20 +0,0 @@ -# The "taginfo" file is used to control pre-tag checks. -# The filter on the right is invoked with the following arguments: -# -# $1 -- tagname -# $2 -- operation "add" for tag, "mov" for tag -F, and "del" for tag -d -# $3 -- repository -# $4-> file revision [file revision ...] -# -# A non-zero exit of the filter program will cause the tag to be aborted. -# -# The first entry on a line is a regular expression which is tested -# against the directory that the change is being committed to, relative -# to the $CVSROOT. For the first match that is found, then the remainder -# of the line is the name of the filter to run. -# -# If the repository name does not match any of the regular expressions in this -# file, the "DEFAULT" line is used, if it is specified. -# -# If the name "ALL" appears as a regular expression it is always used -# in addition to the first matching regex or "DEFAULT". diff --git a/CVSROOT/verifymsg b/CVSROOT/verifymsg deleted file mode 100644 index 86f747ce22..0000000000 --- a/CVSROOT/verifymsg +++ /dev/null @@ -1,21 +0,0 @@ -# The "verifymsg" file is used to allow verification of logging -# information. It works best when a template (as specified in the -# rcsinfo file) is provided for the logging procedure. Given a -# template with locations for, a bug-id number, a list of people who -# reviewed the code before it can be checked in, and an external -# process to catalog the differences that were code reviewed, the -# following test can be applied to the code: -# -# Making sure that the entered bug-id number is correct. -# Validating that the code that was reviewed is indeed the code being -# checked in (using the bug-id number or a seperate review -# number to identify this particular code set.). -# -# If any of the above test failed, then the commit would be aborted. -# -# Actions such as mailing a copy of the report to each reviewer are -# better handled by an entry in the loginfo file. -# -# One thing that should be noted is the the ALL keyword is not -# supported. There can be only one entry that matches a given -# repository. |