3 # Git maintenance script, run by cron.
5 # Update symlinks to user git repo locations.
6 find /afs
/hcoop.net
/user
-mindepth 3 -maxdepth 3 -noleaf -exec \
7 sh
-c "test -e {}/.hcoop-git && { \
8 rm -f /var/cache/git/\$(basename {}); \
9 ln -sf {}/.hcoop-git /var/cache/git/\$(basename {}); }" \
;
11 # Remove symlinks for users that have wrong permissions
13 for user
in $
(ls -1 /var
/cache
/git
); do
14 if ! test -e $
(readlink
/var
/cache
/git
/$user); then
15 rm -f /var
/cache
/git
/$user
18 gitpath
=$
(readlink
/var
/cache
/git
/$user)
19 find -L $gitpath -noleaf -type d \
20 ! -regex '.*/\(refs\|objects\)\(/.*\|$\)' -exec \
21 sh
-c "! { fs la {} | \
22 egrep '^ +system:anyuser .*r' > /dev/null; } && \
23 rm -f /var/cache/git/$user 2>/dev/null" \
;
26 # Update cache of front page.
27 cache
=/var
/local
/lib
/gitweb
/indexcache.html
28 wget
-q -O $cache.tmp
'http://git.hcoop.net/?nocache=y'
29 if test -s $cache.tmp
; then