summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xbin/schroot-create.sh32
1 files changed, 9 insertions, 23 deletions
diff --git a/bin/schroot-create.sh b/bin/schroot-create.sh
index 93648e3e..26f0c3d8 100755
--- a/bin/schroot-create.sh
+++ b/bin/schroot-create.sh
@@ -97,33 +97,19 @@ Mb0BawlXZui0MNUSnZtxHMxrjejdvZdqtskHl9srB1QThH0jasmUqbQPxCnxMbf1
EOF
}
-robust_chroot_apt_update() {
+robust_chroot_apt() {
set +e
- sudo chroot $CHROOT_TARGET apt-get update | tee $TMPLOG
+ sudo chroot $CHROOT_TARGET apt-get $@ | tee $TMPLOG
RESULT=$(egrep 'Failed to fetch.*(Unable to connect to|Connection failed|Size mismatch|Cannot initiate the connection to|Bad Gateway)' $TMPLOG)
set -e
if [ -z "$RESULT" ] ; then
- echo "$(date -u) - apt-get update failed, sleeping 5min before retrying..."
+ echo "$(date -u) - 'apt-get $@' failed, sleeping 5min before retrying..."
sleep 5m
- sudo chroot $CHROOT_TARGET apt-get update
+ sudo chroot $CHROOT_TARGET apt-get $@
fi
rm -f $TMPLOG
}
-robust_chroot_apt_install() {
- set +e
- sudo chroot $CHROOT_TARGET apt-get install $@ | tee $TMPLOG
- RESULT=$(egrep 'Failed to fetch.*(Unable to connect to|Connection failed|Size mismatch|Cannot initiate the connection to|Bad Gateway)' $TMPLOG)
- set -e
- if [ -z "$RESULT" ] ; then
- echo "$(date -u) - apt-get install failed, sleeping 5min before retrying..."
- sleep 5m
- sudo chroot $CHROOT_TARGET apt-get install $@
- fi
- rm -f $TMPLOG
-}
-
-
bootstrap() {
mkdir -p "$CHROOT_TARGET/etc/dpkg/dpkg.cfg.d"
echo force-unsafe-io > "$CHROOT_TARGET/etc/dpkg/dpkg.cfg.d/02dpkg-unsafe-io"
@@ -159,22 +145,22 @@ bootstrap() {
fi
- robust_chroot_apt_update
+ robust_chroot_apt update
if [ -n "$1" ] ; then
for d in proc dev dev/pts ; do
sudo mount --bind /$d $CHROOT_TARGET/$d
done
set -x
- robust_chroot_apt_update
+ robust_chroot_apt update
# first, (if), install diffoscope with all recommends...
if [ "$1" = "diffoscope" ] ; then
- robust_chroot_apt_install -y --install-recommends diffoscope
+ robust_chroot_apt install -y --install-recommends diffoscope
fi
- robust_chroot_apt_install -y --no-install-recommends "$@"
+ robust_chroot_apt install -y --no-install-recommends "$@"
# always try to use diffoscope from unstable
if [ "$SUITE" = "testing" ] && [ "$1" = "diffoscope" ] ; then
echo "deb $MIRROR unstable main" | sudo tee -a $CHROOT_TARGET/etc/apt/sources.list > /dev/null
- robust_chroot_apt_update
+ robust_chroot_apt update
# install diffoscope from unstable without re-adding all recommends...
sudo chroot $CHROOT_TARGET apt-get install -y -t unstable --no-install-recommends diffoscope || echo "Warning: diffoscope from unstable is uninstallable at the moment."
fi