Test sur le serveur de développement.
[auf-git-etc.git] / cron.auf-git-etc
1 #!/bin/sh
2 recipients="root+git" # adresse pour l'envoi du mail
3
4 PATH="/bin:/usr/bin"
5 export PATH
6
7 if [ "$1" != "cron" ]; then
8   echo "Ce script n'est pas fait pour être lancé manuellement mais via cron."
9   exit -1
10 fi
11
12 [ -x /usr/bin/git -a -d /.git ] || exit 0
13
14 tempfile=`tempfile`
15 if [ $? != 0 ]; then
16   echo "Erreur fatale de création de fichier temporaire."
17   exit -1
18 fi
19 trap "rm -f \"$tempfile\"" 0 1 2 3 15
20
21 (cd / ; /usr/bin/git status) |
22 sed -e '1{/^# On branch /d};2{/^nothing to commit/d};s/^#//' >"$tempfile"
23
24 if [ -s "$tempfile" ]; then
25 (
26   echo "From: git `hostname --fqdn` - Cron Daemon <root+git@`cat /etc/mailname 2>/dev/null || hostname --fqdn`>"
27   echo "To: ${recipients}"
28   echo "Date: `date --rfc-2822`"
29   echo "Subject: git-status: `hostname --fqdn` - $0"
30   echo "Content-Type: text/plain; charset=utf-8"
31   echo ""
32   echo "Liste de modifications sur la machine `hostname --fqdn`"
33   echo "qui n'ont pas encore été validées :"
34   echo "( voir http://wiki.auf.org/wikiteki/Git/SuiviDeConfiguration )"
35   echo ""
36   cat "$tempfile"
37 ) | head -c 16k | /usr/sbin/sendmail ${recipients}
38 fi
39
40 exit 0