From 8a9bbc86a9703e4516bbce4771ec77034bc52400 Mon Sep 17 00:00:00 2001 From: "Leigh B. Stoller" Date: Fri, 2 Sep 2005 22:01:04 +0000 Subject: [PATCH] Move the project CVS repo to /proj/cvsrepos/$pid, instead of /proj/$pid/CVS This is to support anon CVS access via the ops web server and CVS pserver. --- tbsetup/mkproj.in | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/tbsetup/mkproj.in b/tbsetup/mkproj.in index 0801eb86f..82c370f2a 100755 --- a/tbsetup/mkproj.in +++ b/tbsetup/mkproj.in @@ -41,8 +41,9 @@ my $ADDMMLIST = "$TB/sbin/addmmlist"; my $PROJROOT = "/proj"; my $GRPROOT = "/groups"; my $TFTPROOT = "/tftpboot"; +my $CVSREPOS = "$PROJROOT/cvsrepos"; my @DIRLIST = ("exp", "images", "logs", "deltas", "tarfiles", "rpms", - "groups", "tiplogs", "CVS"); + "groups", "tiplogs"); my $projhead; # @@ -219,12 +220,25 @@ if (! -e "$TFTPROOT/proj/$pid") { # # Do the CVS stuff if its turned on. # -my $CVSDIR = "$PROJROOT/$pid/CVS"; +if ($CVSSUPPORT) { + my $CVSDIR = "$CVSREPOS/$pid"; -if ($CVSSUPPORT && -e $CVSDIR) { - system("$CVSBIN -d $CVSDIR init"); - if ($?) { - fatal("Could not cvs init $CVSDIR!"); + if (! -e "$CVSDIR") { + if (! mkdir("$CVSDIR", 0770)) { + fatal("Could not make directory $CVSDIR: $!"); + } + } + if (! chmod(0770, "$CVSDIR")) { + fatal("Could not chmod directory $CVSDIR: $!"); + } + if (! chown($uid, $gid, "$CVSDIR")) { + fatal("Could not chown $CVSDIR to $uid/$gid: $!"); + } + if (! -e "$CVSDIR/CVSROOT") { + system("$CVSBIN -d $CVSDIR init"); + if ($?) { + fatal("Could not cvs init $CVSDIR!"); + } } # Chown the tree. system("$CHOWN -R ${uid}:${gid} $CVSDIR"); -- GitLab