]> git.decadent.org.uk Git - dak.git/blob - config/debian-security/cron.daily
23e7a67d8a8b92c9cae28390507c4afc2857cde1
[dak.git] / config / debian-security / cron.daily
1 #!/bin/sh
2 #
3 # Executed daily via cron, out of dak's crontab.
4
5 set -e
6 export SCRIPTVARS=/org/security.debian.org/dak/config/debian-security/vars
7 . $SCRIPTVARS
8
9 ################################################################################
10
11 # Fix overrides
12
13 rsync -ql ftp-master::indices/override\* $overridedir
14
15 cd $overridedir
16 find . -name override\*.gz -type f -maxdepth 1 -mindepth 1 | xargs gunzip -f
17 find . -type l -maxdepth 1 -mindepth 1 | xargs rm
18
19 for suite in $suites; do
20     case $suite in
21         oldstable) override_suite=sarge;;
22         stable) override_suite=etch;;
23         testing) override_suite=lenny;;
24         *) echo "Unknown suite type ($suite)"; exit 1;;
25     esac
26     for component in $components; do
27         for override_type in $override_types; do
28             case $override_type in
29                deb) type="" ;;
30                dsc) type=".src" ;;
31                udeb) type=".debian-installer" ;;
32             esac
33             # XXX RUN AFUCKINGAWAY
34             if [ "$override_type" = "udeb" ]; then
35                if [ ! "$component" = "main" ]; then
36                  continue
37                fi
38                if [ "$suite" = "unstable" ]; then
39                  dak control-overrides -q -S -t $override_type -s $suite -c updates/$component < override.$override_suite.$component$type
40                fi
41             else
42                dak control-overrides -q -S -t $override_type -s $suite -c updates/$component < override.$override_suite.$component$type
43             fi
44             case $suite in
45               oldstable)
46                 dak control-overrides -q -a -t $override_type -s $suite -c updates/$component < override.sid.$component$type
47                 ;;
48               stable)
49                 dak control-overrides -q -a -t $override_type -s $suite -c updates/$component < override.sid.$component$type
50                 ;;
51               testing)
52                 dak control-overrides -q -a -t $override_type -s $suite -c updates/$component < override.sid.$component$type
53                 ;;
54               *) echo "Unknown suite type ($suite)"; exit 1;;
55             esac
56         done
57     done
58 done
59
60 # Generate .all3 overides for the buildd support
61 for dist in sarge etch lenny; do
62     rm -f override.$dist.all3
63     components="main contrib non-free";
64     if [ -f override.$dist.main.debian-installer ]; then
65         components="$components main.debian-installer"
66     fi
67     for component in $components; do
68         cat override.$dist.$component >> override.$dist.all3
69         if [ -e "override.$dist.$component.src" ]; then
70             cat override.$dist.$component.src >> override.$dist.all3.src
71         fi
72     done
73 done
74
75 ################################################################################
76
77 # Freshen Packages-Arch-Specific
78
79 wget -qN http://buildd.debian.org/quinn-diff/Packages-arch-specific -O $base/buildd/Packages-arch-specific
80
81 ################################################################################
82
83 cd $masterdir
84 dak clean-queues
85 dak clean-suites
86 apt-ftparchive -q clean apt.conf
87 apt-ftparchive -q clean apt.conf.buildd
88
89 symlinks -d -r $ftpdir
90
91 pg_dump obscurity > /org/security.debian.org/dak-backup/dump_$(date +%Y.%m.%d-%H:%M:%S)
92
93 # Vacuum the database
94 set +e
95 echo "VACUUM; VACUUM ANALYZE;" | psql obscurity 2>&1 | egrep -v "^NOTICE:  Skipping \"pg_.*only table or database owner can VACUUM it$|^VACUUM$"
96 set -e
97
98 ################################################################################