Added readonlyusers.pl per bug 369013
git-svn-id: svn://10.0.0.236/trunk@226094 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
parent
a46388ac06
commit
070a77ff9e
@ -18,3 +18,4 @@ dolog.pl
|
|||||||
FilesToNotExport
|
FilesToNotExport
|
||||||
cvsmailfilter.pl
|
cvsmailfilter.pl
|
||||||
sendnotification.pl
|
sendnotification.pl
|
||||||
|
readonlyusers.pl
|
||||||
|
|||||||
@ -14,3 +14,4 @@
|
|||||||
# If the name "ALL" appears as a regular expression it is always used
|
# If the name "ALL" appears as a regular expression it is always used
|
||||||
# in addition to the first matching regex or "DEFAULT".
|
# in addition to the first matching regex or "DEFAULT".
|
||||||
ALL $CVSROOT/CVSROOT/commitcheck.pl
|
ALL $CVSROOT/CVSROOT/commitcheck.pl
|
||||||
|
ALL $CVSROOT/CVSROOT/readonlyusers.pl
|
||||||
|
|||||||
44
CVSROOT/readonlyusers.pl
Executable file
44
CVSROOT/readonlyusers.pl
Executable file
@ -0,0 +1,44 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
#
|
||||||
|
# This is a simple script that forces specified users to
|
||||||
|
# have read-only access to the CVS repository when using SSH.
|
||||||
|
# This must be done in a pre-commit check script, as SSH users
|
||||||
|
# must have an account on the server with access to the repository.
|
||||||
|
# Returning "0" means the account is allowed to check-in. Any other
|
||||||
|
# return type will stop the commit from occurring.
|
||||||
|
#
|
||||||
|
# Authors: Reed Loden <reed@mozilla.com>
|
||||||
|
# Aravind Gottipati <aravind@mozilla.com>
|
||||||
|
#
|
||||||
|
# To make it work, you need to add the script name to
|
||||||
|
# CVSROOT/checkoutlist so that the script is checked out correctly
|
||||||
|
# on the CVS server.
|
||||||
|
# Also, you need to add a line to your
|
||||||
|
# CVSROOT/commitinfo file that says something like:
|
||||||
|
#
|
||||||
|
# ALL $CVSROOT/CVSROOT/readonlyusers.pl
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
use warnings;
|
||||||
|
|
||||||
|
# Hash of read-only users
|
||||||
|
my %read_only_users = (
|
||||||
|
'calbld' => 1,
|
||||||
|
'caminobld' => 1,
|
||||||
|
'ffxbld' => 1,
|
||||||
|
'seabld' => 1,
|
||||||
|
'tbirdbld' => 1,
|
||||||
|
'nobody' => 1,
|
||||||
|
'xrbld' => 1
|
||||||
|
);
|
||||||
|
|
||||||
|
my $username = $ENV{"CVS_USER"} || getlogin || (getpwuid($<))[0] || "nobody";
|
||||||
|
|
||||||
|
if (exists $read_only_users{$username}) {
|
||||||
|
print STDERR "The $username account is not permitted to check-in to this CVS repository.\n";
|
||||||
|
print STDERR "If you think it should be allowed to do so, please contact\n";
|
||||||
|
print STDERR "the system administrators at sysadmins\@mozilla.org.\n";
|
||||||
|
exit 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
exit 0;
|
||||||
Loading…
x
Reference in New Issue
Block a user