]> git.pld-linux.org Git - projects/pld-builder.new.git/blob - etc/pld-builder.sysconfig
- $(bin_builder_tmpwatch_cron_jobs) was in wrong place
[projects/pld-builder.new.git] / etc / pld-builder.sysconfig
1 #!/bin/sh without shebang autoindentation doesn't work (vim-7.0-0.c02.1.3)
2 # -*- mode: sh -*-
3
4 # comment next line to configure your setup
5 : <<'#END'
6
7 CHROOTS=/mnt/hda9/adm/builders/pld/{ac/{athlon,i586},actw/{athlon,i586},th/{athlon,i486}}
8 FTPDIRS=/mnt/hda9/adm/builders/pld/ftp/ftp/{{ac,actw}/{ready,test}/{SRPMS,athlon,i586},th/{ready,test}/{SRPMS,athlon,i486}}
9
10 NICE="nice -n 19"
11
12 bin_builder_tmpwatch_cron_jobs ()
13 {
14         local hour=0
15         for CHROOT in $CHROOTS; do
16                 [ $hour -gt 23 ] && hour=0
17                 echo "0 $hour * * * sudo chroot $CHROOT $NICE tmpwatch -m 240 /spool/poldek"
18                 hour=$(( $hour + 1 ))
19         done
20 }
21
22 ftp_update_indexes_cron_jobs ()
23 {
24         local minute=0
25         for FTPDIR in $FTPDIRS; do
26                 [ $minute -gt 59 ] && minute=0
27                 echo "$minute * * * * /bin/sh -c \"umask 022 ; $NICE /usr/bin/poldek --mkidx -s $FTPDIR\""
28                 minute=$(( $minute + 1 ))
29         done
30 }
31
32 pld_builder_start ()
33 {
34         # mount /proc in chroots
35         local RET
36         echo
37         for CHROOT in $CHROOTS; do
38                 show "chroot: %s mount /proc" "$CHROOT"
39                 RET=$(chroot $CHROOT mount /proc > /dev/null 2>&1 ; echo $?)
40         [ $RET -eq 0 ] && ok || fail
41         done
42
43         # set up crontab for srpms_builder
44         show "setting up crontab for srpms_builder"
45         crontab -u srpms_builder - <<- EOF && ok || fail
46         SHELL=/bin/sh
47         MAIL=srpms_builder
48
49         * * * * * $NICE /usr/share/pld-builder/bin/src-builder.sh
50         * * * * * $NICE /usr/share/pld-builder/bin/file-sender.sh
51 EOF
52
53         # set up crontab for bin_builder
54         show "setting up crontab for bin_builder"
55         crontab -u bin_builder - <<-EOF && ok || fail
56         SHELL=/bin/sh
57         MAIL=bin_builder
58
59         * * * * * $NICE /usr/share/pld-builder/bin/request-fetcher.sh
60         * * * * * $NICE /usr/share/pld-builder/bin/load-balancer.sh
61         * * * * * $NICE /usr/share/pld-builder/bin/file-sender.sh
62
63         $(bin_builder_tmpwatch_cron_jobs)
64 EOF
65
66         # set up crontab for ftpac
67         show "setting up crontab for ftp"
68         crontab -u ftpac - <<-EOF && ok || fail
69         SHELL=/bin/sh
70         MAIL=ftpac
71
72         $(ftp_update_indexes_cron_jobs)
73 EOF
74 }
75
76 pld_builder_stop ()
77 {
78         local RET
79         echo
80         for CHROOT in $CHROOTS; do
81                 show "chroot: %s umount /proc" "$CHROOT"
82                 RET=$(chroot $CHROOT umount /proc > /dev/null 2>&1; echo $?)
83                 [ $RET -eq 0 ] && ok || fail
84         done
85
86         for u in srpms_builder bin_builder ftpac; do
87                 show "removing crontab for %s" "$u"
88                 crontab -u $u -r > /dev/null 2>&1 && ok || fail
89         done
90 }
91
92 pld_builder_status ()
93 {
94         local RET
95         echo
96         for CHROOT in $CHROOTS; do
97                 show "chroot: %s is /proc mounted?" "$CHROOT"
98                 RET=$( (chroot $CHROOT mount -v 2> /dev/null) | grep -q 'none.*/proc' ; echo $? )
99                 [ $RET -eq 0 ] && ok || fail
100         done
101 }
102
103 #END
104 # vi:syntax=sh:ts=4:sw=4
This page took 0.031142 seconds and 3 git commands to generate.