Release new version 0.108
[grml-debootstrap.git] / tests / docker-build-vm.sh
1 #!/bin/bash
2 # SPDX-License-Identifier: GPL-2.0-or-later
3 #
4 # Use an already installed grml-debootstrap to build a VM image, then
5 # run it in qemu. Installs goss inside the VM.
6
7 set -eu -o pipefail
8
9 if [ "$#" -ne 3 ]; then
10   echo "$0: Invalid arguments" >&2
11   echo "Expect: $0 HOST_UID TARGET RELEASE" >&2
12   exit 1
13 fi
14 HOST_UID="$1"
15 TARGET="$2"
16 RELEASE="$3"
17
18 if [ -n "${DEBOOTSTRAP:-}" ] && [ "${DEBOOTSTRAP:-}" != "debootstrap" ]; then
19   apt-get install -qq -y "${DEBOOTSTRAP}"
20 fi
21
22 set -x
23
24 case "${RELEASE:-}" in
25   stretch)
26     MIRROR='http://archive.debian.org/debian'
27     EXTRAOPT=--debopt=--no-check-gpg
28   ;;
29   *)
30     MIRROR='http://deb.debian.org/debian'
31     EXTRAOPT=''
32   ;;
33 esac
34
35
36 echo " ****************************************************************** "
37 echo " * Running grml-debootstrap"
38
39 grml-debootstrap \
40   --debug \
41   --force \
42   --vmfile \
43   --vmsize 3G \
44   --target "$TARGET" \
45   --bootappend "console=ttyS0,115200 console=tty0 vga=791" \
46   --password grml \
47   --release  "$RELEASE" \
48   --hostname "$RELEASE" \
49   --mirror "$MIRROR" \
50   $EXTRAOPT
51
52 chown "$HOST_UID" "$TARGET"