46 lines
1.5 KiB
Text
46 lines
1.5 KiB
Text
From: Matthew Wilcox <matthew@wil.cx>
|
|
To: 383219@bugs.debian.org
|
|
Cc: Roland Mas <lolando@debian.org>
|
|
Subject: index.aux generation
|
|
Date: Thu, 24 Aug 2006 08:55:10 -0600
|
|
|
|
Alioth needs to generate an index.aux file. It'd be helpful if we had
|
|
an example script for doing this. Here's the script used for
|
|
git.infradead.org (MIT licence, says its author):
|
|
|
|
--- cut ---
|
|
#!/bin/sh
|
|
|
|
cd /home
|
|
for a in * ; do [ -r $a/public_git ] && [ ! -d /home/git/users/$a ] && ln -s /home/$a/public_git /home/git/users/$a ; done
|
|
|
|
cd /home/git
|
|
find . -name 'HEAD' | grep ^[-./=+a-zA-Z0-9]*\$ | sed s:/HEAD\$:: | while read DIR ; do
|
|
TREEUID=`stat -c %U $DIR`
|
|
TREEUSERNAME=`grep ^$TREEUID: /etc/passwd | cut -f5 -d: | sed s/\ /+/`
|
|
if [ "$TREEUSERNAME" = "" ]; then
|
|
TREEUSERNAME=$TREEUID
|
|
fi
|
|
echo $DIR $TREEUSERNAME | sed s:/:%2F:g
|
|
done > /home/git/.index.aux.$$
|
|
|
|
mv /home/git/.index.aux.$$ /home/git/.index.aux
|
|
|
|
--- cut ---
|
|
|
|
I suspect Alioth wants something like (untested ...)
|
|
|
|
cd /srv/git.debian.org/git
|
|
ls */*/HEAD | grep ^[-./=+a-zA-Z0-9]*\$ | sed s:/HEAD\$:: | while read DIR ; do
|
|
TREEUID=`stat -c %U $DIR`
|
|
TREEUSERNAME=`XXX`
|
|
if [ "$TREEUSERNAME" = "" ]; then
|
|
TREEUSERNAME=$TREEUID
|
|
fi
|
|
echo $DIR $TREEUSERNAME | sed s:/:%2F:g
|
|
done > /srv/git.debian.org/.index.aux.$$
|
|
|
|
mv /srv/git.debian.org/.index.aux.$$ /srv/git.debian.org/.index.aux
|
|
|
|
where XXX would be how to turn a username into the name of a user.
|
|
I dunno how Alioth works; ldap or postgres db seem plausible answers.
|