]> git.decadent.org.uk Git - dak.git/blob - scripts/debian/import_dataset.sh
LOCAL: Remove replay check
[dak.git] / scripts / debian / import_dataset.sh
1 #!/bin/bash
2
3 # Copyright (C) 2008,2010 Joerg Jaspert <joerg@debian.org>
4
5 # Permission is hereby granted, free of charge, to any person obtaining
6 # a copy of this software and associated documentation files (the
7 # "Software"), to deal in the Software without restriction, including
8 # without limitation the rights to use, copy, modify, merge, publish,
9 # distribute, sublicense, and/or sell copies of the Software, and to
10 # permit persons to whom the Software is furnished to do so, subject to
11 # the following conditions:
12 #
13 # The above copyright notice and this permission notice shall be
14 # included in all copies or substantial portions of the Software.
15 #
16 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17 # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18 # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19 # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20 # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21 # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23
24
25 set -e
26 set -u
27
28 # Load up some standard variables
29 export SCRIPTVARS=/srv/ftp-master.debian.org/dak/config/debian/vars
30 . $SCRIPTVARS
31
32 IMPORTSUITE=${1:-"testing"}
33 BRITNEY=""
34 MD5SUM="${SSH_ORIGINAL_COMMAND}"
35
36 case "${IMPORTSUITE}" in
37     testing)
38         DO_CHANGELOG="true"
39         ;;
40     testing-debug|squeeze-updates|wheezy-updates|jessie-updates)
41         DO_CHANGELOG="false"
42         ;;
43     *)
44         echo "You are so wrong here that I can't even believe it. Sod off."
45         exit 42
46         ;;
47 esac
48
49 # Change to a known safe location
50 cd $masterdir
51
52 echo "Importing new data for ${IMPORTSUITE} into database"
53
54 if [ "x${DO_CHANGELOG}x" = "xtruex" ]; then
55     rm -f ${ftpdir}/dists/${IMPORTSUITE}/ChangeLog
56     BRITNEY=" --britney"
57 fi
58
59 tmpfile=$(mktemp)
60 trap "rm -f ${tmpfile}" EXIT
61 cat > ${tmpfile}
62 if ! echo "${MD5SUM}  ${tmpfile}" | md5sum -c --quiet; then
63     exit 42
64 fi
65 dak control-suite --set ${IMPORTSUITE} ${BRITNEY} < ${tmpfile}
66
67 if [ "x${DO_CHANGELOG}x" = "xtruex" ]; then
68     NOW=$(date "+%Y%m%d%H%M")
69     cd ${ftpdir}/dists/${IMPORTSUITE}/
70     mv ChangeLog ChangeLog.${NOW}
71     ln -s ChangeLog.${NOW} ChangeLog
72     find . -maxdepth 1 -mindepth 1 -type f -mmin +2880 -name 'ChangeLog.*' -delete
73 fi
74
75 #echo "Regenerating Packages/Sources files, be patient"
76 #dak generate-packages-sources2 -s ${IMPORTSUITE} >/dev/null
77
78 echo "Done"
79
80 exit 0