]> git.decadent.org.uk Git - dak.git/blob - cron.daily
Run rene daily
[dak.git] / cron.daily
1 #! /bin/sh
2 #
3 # Executed daily via cron, out of troup's crontab.
4
5 set -e
6 export SCRIPTVARS=/org/ftp.debian.org/katie/vars
7 . $SCRIPTVARS
8
9 ################################################################################
10
11 echo Archive maintenance started at $(date +%X)
12
13 NOTICE="$ftpdir/Archive_Maintenance_In_Progress"
14
15 cleanup() {
16   rm -f "$NOTICE"
17 }
18 trap cleanup 0
19
20 rm -f "$NOTICE"
21 cat > "$NOTICE" <<EOF
22 Packages are currently being installed and indices rebuilt.
23 Maintenance is automatic, starting at 13:52 US Central time, and
24 ending at about 15:30.  This file is then removed.
25
26 You should not mirror the archive during this period.
27 EOF
28
29 ################################################################################
30
31 echo "Creating pre-daily-cron-job backup of projectb database..."
32 pg_dump projectb > /org/ftp.debian.org/backup/dump_$(date +%Y.%m.%d-%H:%M:%S)
33
34 ################################################################################
35
36 update-bugdoctxt
37 update-mirrorlists
38 update-mailingliststxt
39
40 ################################################################################
41
42 cd $accepted
43 rm -f REPORT
44 kelly -pa *.changes | tee REPORT | \
45      mail -s "Install for $(date +%D)" ftpmaster@ftp-master.debian.org
46 chgrp debadmin REPORT
47 chmod 664 REPORT
48
49 cd $masterdir
50 symlinks -d -r $ftpdir
51
52 cd $masterdir
53 jenna
54
55 # Generate override files
56 cd $overridedir
57 denise
58 # FIXME
59 rm -f override.potato.all3 override.sid.all3
60 for i in main contrib non-free; do cat override.potato.$i >> override.potato.all3; done
61 for i in main contrib non-free main.debian-installer; do cat override.sid.$i >> override.sid.all3; done
62
63 # Generate Packages and Sources files
64 cd $masterdir
65 apt-ftparchive generate apt.conf
66 # Generate Release files
67 ziyi
68
69 # Clean out old packages
70 rhona
71 shania
72
73 mkmaintainers
74 copyoverrides
75 mklslar
76 mkchecksums
77
78 rm -f $NOTICE
79 echo Archive maintenance finished at $(date +%X)
80
81 ################################################################################
82
83 echo "Creating post-daily-cron-job backup of projectb database..."
84 pg_dump projectb > /org/ftp.debian.org/backup/dump_$(date +%Y.%m.%d-%H:%M:%S)
85
86 ################################################################################
87
88 # Vacuum the database
89 echo "VACUUM; VACUUM ANALYZE;" | psql projectb 2>&1 | grep -v "^NOTICE:  Skipping.*only table owner can VACUUM it$"
90
91 ################################################################################
92
93 # Send a report on NEW/BYHAND packages
94 helena | mail -e -s "NEW and BYHAND on $(date +%D)" ftpmaster@ftp-master.debian.org
95 # and one on crufty packages
96 rene | mail -e -s "rene run for $(date +%D)" ftpmaster@ftp-master.debian.org
97
98 ################################################################################
99
100 ulimit -m 90000 -d 90000 -s 10000 -v 90000
101
102 run-parts --report /org/ftp.debian.org/scripts/distmnt
103
104 echo Daily cron scripts successful.