[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Savannah-cvs] administration/docs/hacking_savannah hacking_sa...
From: |
Sylvain Beucler |
Subject: |
[Savannah-cvs] administration/docs/hacking_savannah hacking_sa... |
Date: |
Tue, 21 Sep 2004 17:27:58 -0400 |
CVSROOT: /cvsroot/administration
Module name: administration
Branch:
Changes by: Sylvain Beucler <address@hidden> 04/09/21 21:21:24
Modified files:
docs/hacking_savannah: hacking_savannah.texi
Log message:
Continued the test install description
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/administration/administration/docs/hacking_savannah/hacking_savannah.texi.diff?tr1=1.42&tr2=1.43&r1=text&r2=text
Patches:
Index: administration/docs/hacking_savannah/hacking_savannah.texi
diff -u administration/docs/hacking_savannah/hacking_savannah.texi:1.42
administration/docs/hacking_savannah/hacking_savannah.texi:1.43
--- administration/docs/hacking_savannah/hacking_savannah.texi:1.42 Mon Sep
20 22:53:26 2004
+++ administration/docs/hacking_savannah/hacking_savannah.texi Tue Sep 21
21:21:23 2004
@@ -1,5 +1,5 @@
\input texinfo @c -*-texinfo-*-
address@hidden $Id: hacking_savannah.texi,v 1.42 2004/09/20 22:53:26 Beuc Exp $
address@hidden $Id: hacking_savannah.texi,v 1.43 2004/09/21 21:21:23 Beuc Exp $
@comment %**start of header
@setfilename hacking_savannah.info
@include version.texi
@@ -280,9 +280,11 @@
* MySQL::
* Savane::
* Tuning your local install::
+* FTP upload::
* CVS::
* Populating your test install::
* Remaining::
+* Non stable components::
@end menu
@@ -319,6 +321,7 @@
@dots{}
deb http://security.debian.org/ stable/updates main
deb http://ftp.fr.debian.org/debian woody main
+deb-src http://ftp.fr.debian.org/debian woody main
@dots{}
@end example
@@ -604,7 +607,7 @@
Else, you should be able to simply update your Perl.
address@hidden Tuning your local install, CVS, Savane, Savannah configuration
address@hidden Tuning your local install, FTP upload, Savane, Savannah
configuration
@section Tuning your local install
To be able to test both gnu and nongnu, you can either:
@@ -664,50 +667,78 @@
[TODO: make that more explicit, and detail the conf for sv.gnu.org and
savana.gnu.org, among others]
address@hidden GateKeeper
+
address@hidden FTP upload, CVS, Tuning your local install, Savannah
configuration
address@hidden FTP upload
+
GateKeeper is a script ran by cron job to check the project upload
area and move files signed by admins to its download area. It is used
for uploads to ftp.gnu.org and alpha.gnu.org. We used a modified
version of GateKeeper at Savannah.
You need to setup a gpg-writer user (to keep the GPG options ???), a
-gatekpr place for the scripts and the project public key-rings, an
+gatekpr place for the scripts and the project public keyrings, an
upload area, and of course a properly configured FTP server.
Again, I only describe what Savannah is, not what it should be.
-[TODO: check default group, dir perms, dir own/grp, and the
-appropriate useradd options]
+[TODO: check whether usr gpg-writer is really needed]
@example
-$ useradd -m gpg-writer
+$ useradd -m gpg-writer -g nogroup -s /bin/false
~> su - gpg-writer
-~> gpg # creates .gnupg
+~> gpg # creates ~/.gnupg
~> exit
-$ useradd -m gatekpr
+$ groupadd gatekpr
+$ useradd -m gatekpr -g gatekpr
$ cd ~gatekpr
$ mkdir -m 755 bin
@end example
+[TODO: check whether we could also set the gatekpr shell to
+/bin/false. Does that prevent using gatekpr as a cron job user?]
+
There, get lsof v4.64 and install it in @file{bin/}.
+[TODO, check whether lsof stable is enough]
@example
$ mkdir -m 755 projects
$ chown gpg-writer:nogroup projects
@end example
-Copy upload-savannah.pl in @file{~gatekpr}.
+Copy @file{upload-savannah.pl} in @file{~gatekpr/}.
@example
-$ useradd -m upload
+$ useradd -m upload -g nogroup -s /bin/false
$ cd ~upload
$ mkdir -m 555 -p incoming/savannah
$ chown upload:gatekpr incoming/savannah
+$ mkdir -m 755 /savannah/download
+$ chown gatekpr:gatekpr /savannah/download
+$ mkdir -m 755 /var/tmp/ftp-in
+$ chown gatekpr:gatekpr /var/tmp/ftp-in
+$ mkdir -m 755 /var/tmp/ftp-out
+$ chown gatekpr:gatekpr /var/tmp/ftp-out
@end example
+On to the FTP server. We use vsftpd on top of xinetd.
+
+To keep it simple for now, just grab @file{/etc/xinetd.conf} and
address@hidden/etc/vsftpd-upload.conf}.
+
+[TODO: detail the configuration]
+
+We use vsFTPd version 1.2.0-1 from Debian. I have yet to figure out
+what this version in particular was chosen. The main difference from
+the Debian stable version seems to be the @samp{no_anon_password}
+option, that allows user anonymous not to type any password (instead
+of typing a blank one). You can either upgrade your @command{vsftpd}
+to version 1.2.0, or comment our the @samp{no_anon_password=YES} line
+in @file{vsftpd-upload.conf}.
+
address@hidden CVS, Populating your test install, Tuning your local install,
Savannah configuration
address@hidden CVS, Populating your test install, FTP upload, Savannah
configuration
@section CVS
Plus create /savannah/cvsroot.
@@ -745,7 +776,7 @@
The default project files should be created, since the groups are not
present in your @file{/etc/passwd} and @file{/etc/group}.
address@hidden Remaining, , Populating your test install, Savannah
configuration
address@hidden Remaining, Non stable components, Populating your test install,
Savannah configuration
@section Remaining
@itemize
@@ -764,6 +795,98 @@
@end itemize
address@hidden Non stable components, , Remaining, Savannah configuration
address@hidden Non stable components
+
+Some parts of Savannah do not belong to Debian stable:
address@hidden @command
address@hidden Savane
+(CVS version); does not exist in stable
+
address@hidden mod-security
+(I saw a 1.8.3 tarball in /usr/src); does not exist in
+stable
+
address@hidden ViewCVS
+(?); ?
+
address@hidden Mailman
+(actually at lists.gnu.org); some convenient additional features, I
+guess
+
address@hidden vsFTPd
+(1.2.0; I saw 1.2.0-1deb in /usr/src); only because of
+no_anon_password?
+
address@hidden shadow
+Changed group restrictions, recompiled from sources:
address@hidden
+--- chkname.orig 1998-04-16 21:57:43.000000000 +0200
++++ chkname.c 2004-09-21 12:51:19.894248078 +0200
+@@ -26,7 +26,7 @@
+ * contain colons, commas, newlines (used in passwd/group
+ * files...) or any non-printable characters.
+ */
+- if (!*name || !isalpha(*name))
++ if (!*name || !isalnum(*name))
+ return 0;
+
+ while (*name) {
+@@ -66,7 +66,7 @@
+ * Arbitrary limit for group names - max 16
+ * characters (same as on HP-UX 10).
+ */
+- if (strlen(name) > 16)
++ if (strlen(name) > 32)
+ return 0;
+
+ return good_name(name);
address@hidden verbatim
+So:
address@hidden
+$ apt-get build-dep passwd
+$ apt-get source passwd
+$ cd shadow-20000902
+# apply the changes
+$ tar czf shadow-20000902.tar.gz shadow-20000902 # or maybe apply the changes
in build-tree?
+$ dpkg-buildpackage -rfakeroot -uc -b
+$ cd ..
+$ dpkg -i login_20000902-12_i386.deb
+$ dpkg -i passwd_20000902-12_i386.deb
address@hidden example
+
address@hidden
address@hidden
address@hidden table
+
address@hidden Elfyn
+
+<rant>
+In a nutshell, Savannah recently got broken, and Elfyn spent his free
+and sleep time during 3 days working on it.
+
+As a result, a lot of undocumented changes were make, and Savannah is
+not fully recovered.
+</rant>
+
+We will, in this temporary section, log all the noticed changes, in
+order to ease the planned merge with Savane.
+
+First, there is an @file{infra} directory in the repository. Check it
+out at /usr/savannah.
+
+infra is mainly composed of:
+- misc -> main crontab
+- bin -> scripts, some of which are used by cron
+- savane/bin -> changed sv_users and sv_groups; they hardcodedly use
savane/lib below
+- savane/lib -> changed lib (the untouched lib is also available at the std
location)
+
+Changes to do:
+$ cd /etc/cron.d
+$ ln -s /usr/savannah/infra/misc/crontab savannah
+# Edit the cronjob's MAILTO, comment out uneeded stuff
+# edit the Conf.pm so as to make the system believe you are at Savannah
+
@node Using MySQL, Mailman Administration, Savannah configuration, Top
@chapter Using MySQL
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/09/11
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/09/20
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/09/20
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/09/20
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa...,
Sylvain Beucler <=
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/09/21
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/09/28
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/09/28
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/09/29
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/09/29
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/09/29
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/09/30
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/09/30
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/09/30
- [Savannah-cvs] administration/docs/hacking_savannah hacking_sa..., Sylvain Beucler, 2004/09/30