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