From d1e2c48b9b3965a5acb37c4f404c6d5691a26d3c Mon Sep 17 00:00:00 2001 From: Jochen Sprickerhof Date: Mon, 8 May 2023 13:32:07 +0200 Subject: Fix ports mirror (tested on riscv64) --- .gitlab-ci.yml | 3 ++- tests/create-and-run.sh | 7 +++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e8b7754..5aa17d1 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -41,11 +41,12 @@ arch_test: - mips64el - mipsel - ppc64el + - riscv64 - s390x script: - test -e /proc/sys/fs/binfmt_misc/status || mount -t binfmt_misc binfmt_misc /proc/sys/fs/binfmt_misc - apt-get update - apt-get dist-upgrade --yes - - apt-get --no-install-recommends --yes install e2fsprogs genext2fs mmdebstrap openssh-client qemu-system arch-test qemu-user-static file systemd dpkg-dev + - apt-get --no-install-recommends --yes install e2fsprogs genext2fs mmdebstrap openssh-client qemu-system arch-test qemu-user-static file systemd dpkg-dev debian-ports-archive-keyring - /lib/systemd/systemd-binfmt - PATH=$(pwd)/bin:$PATH ./tests/create-and-run.sh "$ARCHITECTURE" sid diff --git a/tests/create-and-run.sh b/tests/create-and-run.sh index 392a691..10b2eff 100755 --- a/tests/create-and-run.sh +++ b/tests/create-and-run.sh @@ -20,17 +20,20 @@ cleanup() { trap cleanup EXIT INT TERM QUIT ssh-keygen -f "$SSH_KEYPATH" -N '' +MIRROR= case "$ARCHITECTURE" in # Booting an armel kernel on qemu is next to impossible. armel) ARCHITECTURE=armel,armhf ;; + alpha|arc|hppa|hurd-i386|ia64|kfreebsd-amd64|kfreebsd-i386|m68k|powerpc|ppc64|riscv64|sh4|sparc64|x32) + MIRROR="deb [signed-by=/usr/share/keyrings/debian-ports-archive-keyring.gpg] http://deb.debian.org/debian-ports $RELEASE main" + ;; esac -MIRROR= case "$RELEASE" in jessie|stretch) MIRROR=http://archive.debian.org/debian ;; esac -debvm-create -k "$SSH_KEYPATH.pub" -o "$IMAGE" -r "$RELEASE" -- --architectures="$ARCHITECTURE" $MIRROR +debvm-create -k "$SSH_KEYPATH.pub" -o "$IMAGE" -r "$RELEASE" -- --architectures="$ARCHITECTURE" "$MIRROR" SSH_PORT=2222 timeout 300s debvm-run -s "$SSH_PORT" -i "$IMAGE" & -- cgit v1.2.3 From e2e003c4415f65c2755c24e8697a11f0f34f2f94 Mon Sep 17 00:00:00 2001 From: Helmut Grohne Date: Thu, 14 Sep 2023 11:12:42 +0200 Subject: tests/create-and-run.sh: choose ports mirror automatically --- .gitlab-ci.yml | 4 ++-- tests/create-and-run.sh | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5aa17d1..e555ae3 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -27,7 +27,7 @@ release_test: script: - apt-get update - apt-get dist-upgrade --yes - - apt-get --no-install-recommends --yes install e2fsprogs genext2fs mmdebstrap openssh-client qemu-kvm dpkg-dev + - apt-get --no-install-recommends --yes install curl e2fsprogs genext2fs mmdebstrap openssh-client qemu-kvm dpkg-dev - PATH=$(pwd)/bin:$PATH ./tests/create-and-run.sh $(dpkg --print-architecture) "$RELEASE" arch_test: @@ -47,6 +47,6 @@ arch_test: - test -e /proc/sys/fs/binfmt_misc/status || mount -t binfmt_misc binfmt_misc /proc/sys/fs/binfmt_misc - apt-get update - apt-get dist-upgrade --yes - - apt-get --no-install-recommends --yes install e2fsprogs genext2fs mmdebstrap openssh-client qemu-system arch-test qemu-user-static file systemd dpkg-dev debian-ports-archive-keyring + - apt-get --no-install-recommends --yes install curl e2fsprogs genext2fs mmdebstrap openssh-client qemu-system arch-test qemu-user-static file systemd dpkg-dev debian-ports-archive-keyring - /lib/systemd/systemd-binfmt - PATH=$(pwd)/bin:$PATH ./tests/create-and-run.sh "$ARCHITECTURE" sid diff --git a/tests/create-and-run.sh b/tests/create-and-run.sh index 10b2eff..a46de06 100755 --- a/tests/create-and-run.sh +++ b/tests/create-and-run.sh @@ -21,13 +21,13 @@ trap cleanup EXIT INT TERM QUIT ssh-keygen -f "$SSH_KEYPATH" -N '' MIRROR= -case "$ARCHITECTURE" in +if ! curl -s "http://deb.debian.org/debian/dists/$RELEASE/InRelease" | sed -n 's/^Architectures: //p' | grep -qw "$ARCHITECTURE"; then + MIRROR="deb [signed-by=/usr/share/keyrings/debian-ports-archive-keyring.gpg] http://deb.debian.org/debian-ports $RELEASE main" +fi +if test "$ARCHITECTURE" = armel; then # Booting an armel kernel on qemu is next to impossible. - armel) ARCHITECTURE=armel,armhf ;; - alpha|arc|hppa|hurd-i386|ia64|kfreebsd-amd64|kfreebsd-i386|m68k|powerpc|ppc64|riscv64|sh4|sparc64|x32) - MIRROR="deb [signed-by=/usr/share/keyrings/debian-ports-archive-keyring.gpg] http://deb.debian.org/debian-ports $RELEASE main" - ;; -esac + ARCHITECTURE=armel,armhf +fi case "$RELEASE" in jessie|stretch) MIRROR=http://archive.debian.org/debian -- cgit v1.2.3 From f62eaac14ce1a383d1c372acfb1cc284affd7fe8 Mon Sep 17 00:00:00 2001 From: Helmut Grohne Date: Thu, 14 Sep 2023 11:20:44 +0200 Subject: tests/create-and-run.sh: Correctly handle an empty $MIRROR Fixes: d1e2c48b9b39 ("Fix ports mirror (tested on riscv64)") --- tests/create-and-run.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/create-and-run.sh b/tests/create-and-run.sh index a46de06..26fe4f7 100755 --- a/tests/create-and-run.sh +++ b/tests/create-and-run.sh @@ -33,7 +33,9 @@ case "$RELEASE" in MIRROR=http://archive.debian.org/debian ;; esac -debvm-create -k "$SSH_KEYPATH.pub" -o "$IMAGE" -r "$RELEASE" -- --architectures="$ARCHITECTURE" "$MIRROR" +set -- --architectures="$ARCHITECTURE" +test -n "$MIRROR" && set -- "$@" "$MIRROR" +debvm-create -k "$SSH_KEYPATH.pub" -o "$IMAGE" -r "$RELEASE" -- "$@" SSH_PORT=2222 timeout 300s debvm-run -s "$SSH_PORT" -i "$IMAGE" & -- cgit v1.2.3