]> git.decadent.org.uk Git - dak.git/blob - scripts/debian/import_dataset.sh
Change import_dataset.sh to take its input from stdin
[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)
41     squeeze-updates)
42     wheezy-updates)
43     jessie-updates)
44         DO_CHANGELOG="false"
45         ;;
46     *)
47         echo "You are so wrong here that I can't even believe it. Sod off."
48         exit 42
49         ;;
50 esac
51
52 # Change to a known safe location
53 cd $masterdir
54
55 echo "Importing new data for ${IMPORTSUITE} into database"
56
57 if [ "x${DO_CHANGELOG}x" = "xtruex" ]; then
58     rm -f ${ftpdir}/dists/${IMPORTSUITE}/ChangeLog
59     BRITNEY=" --britney"
60 fi
61
62 tmpfile=$(mktemp)
63 trap "rm -f ${tmpfile}" EXIT
64 cat > ${tmpfile}
65 if ! echo "${MD5SUM}  ${tmpfile}" | md5sum -c --quiet; then
66     exit 42
67 fi
68 dak control-suite --set ${IMPORTSUITE} ${BRITNEY} < ${tmpfile}
69
70 if [ "x${DO_CHANGELOG}x" = "xtruex" ]; then
71     NOW=$(date "+%Y%m%d%H%M")
72     cd ${ftpdir}/dists/${IMPORTSUITE}/
73     mv ChangeLog ChangeLog.${NOW}
74     ln -s ChangeLog.${NOW} ChangeLog
75     find . -maxdepth 1 -mindepth 1 -type f -mmin +2880 -name 'ChangeLog.*' -delete
76 fi
77
78 #echo "Regenerating Packages/Sources files, be patient"
79 #dak generate-packages-sources2 -s ${IMPORTSUITE} >/dev/null
80
81 echo "Done"
82
83 exit 0