2
0
mirror of https://github.com/checkpoint-restore/criu synced 2025-09-05 00:35:23 +00:00

travis: switch pcp64le and s390x to real hardware

Now that Travis also supports ppc64le and s390x we can remove all qemu
based docker emulation from our test setup. This now runs ppc64le and
s390x tests on real hardware (LXD containers).

Signed-off-by: Adrian Reber <areber@redhat.com>
This commit is contained in:
Adrian Reber
2019-11-13 08:38:16 +01:00
committed by Andrei Vagin
parent eab8cf0775
commit fe668075ad
11 changed files with 13 additions and 98 deletions

View File

@@ -11,14 +11,22 @@ env:
- TR_ARCH=local CLANG=1 COMPAT_TEST=y
- TR_ARCH=x86_64
- TR_ARCH=x86_64 CLANG=1
- TR_ARCH=ppc64le
- TR_ARCH=s390x
- TR_ARCH=ppc64le CLANG=1
- TR_ARCH=docker-test
- TR_ARCH=openj9-test
matrix:
include:
- os: linux
arch: ppc64le
env: TR_ARCH=local
dist: bionic
- os: linux
arch: ppc64le
env: TR_ARCH=local CLANG=1
dist: bionic
- os: linux
arch: s390x
env: TR_ARCH=local
dist: bionic
- os: linux
arch: arm64
env: TR_ARCH=local
@@ -68,7 +76,6 @@ matrix:
allow_failures:
- env: TR_ARCH=docker-test
- env: TR_ARCH=fedora-rawhide
- env: TR_ARCH=s390x
- env: TR_ARCH=local GCOV=1
script:
- sudo make CCACHE=1 -C scripts/travis $TR_ARCH

View File

@@ -1,3 +0,0 @@
FROM arm64v8/ubuntu:xenial
COPY scripts/build/qemu-user-static/usr/bin/qemu-aarch64-static /usr/bin/qemu-aarch64-static

View File

@@ -1 +0,0 @@
Dockerfile.tmpl

View File

@@ -1,5 +0,0 @@
FROM ppc64le/ubuntu:xenial
ENV QEMU_CPU POWER8
COPY scripts/build/qemu-user-static/usr/bin/qemu-ppc64le-static /usr/bin/qemu-ppc64le-static
RUN sed -i '/security/ d' /etc/apt/sources.list

View File

@@ -1 +0,0 @@
Dockerfile.tmpl

View File

@@ -1,6 +0,0 @@
FROM s390x/debian:latest
ENV QEMU_CPU z900
COPY scripts/build/qemu-user-static/usr/bin/qemu-s390x-static /usr/bin/qemu-s390x-static
# The security repository does not seem to exist anymore
RUN sed -i '/security/ d' /etc/apt/sources.list

View File

@@ -1 +0,0 @@
Dockerfile.tmpl

View File

@@ -1,5 +1,4 @@
QEMU_ARCHES := ppc64le s390x # require qemu
ARCHES := $(QEMU_ARCHES) aarch64 x86_64 fedora-asan fedora-rawhide centos armv7hf
ARCHES := x86_64 fedora-asan fedora-rawhide centos armv7hf
TARGETS := $(ARCHES) alpine
TARGETS_CLANG := $(addsuffix $(TARGETS),-clang)
CONTAINER_RUNTIME := docker
@@ -16,15 +15,6 @@ $(foreach arch,$(ARCHES),$(eval $(call ARCH_DEP,$(arch))))
Dockerfile.%: Dockerfile.%.hdr Dockerfile.%.tmpl
cat $^ > $@
qemu-user-static:
./extract-deb-pkg qemu-user-static
binfmt_misc:
./binfmt_misc
.PHONY: binfmt_misc
$(QEMU_ARCHES): qemu-user-static binfmt_misc
$(TARGETS):
mkdir -p $(HOME)/.ccache
mv $(HOME)/.ccache ../../
@@ -42,12 +32,3 @@ $(foreach t,$(TARGETS),$(eval $(call CLANG_DEP,$(t))))
%-clang: DB_ENV=--build-arg ENV1=CCACHE_CPP2
s390x-clang: DB_CC=--build-arg CC=clang-3.8
.PHONY: $(TARGETS_CLANG)
clean:
rm -rf qemu-user-static
for ARCH in $(ARCHES); do \
FILE=/proc/sys/fs/binfmt_misc/$$ARCH; \
test -f $$FILE && echo -1 > $$FILE; \
rm -f Dockerfile.$$ARCH; \
done
.PHONY: clean

View File

@@ -1,13 +0,0 @@
set -e -x
test -f /proc/sys/fs/binfmt_misc/armv7hf ||
echo ':armv7hf:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-arm-static:' > /proc/sys/fs/binfmt_misc/register;
test -f /proc/sys/fs/binfmt_misc/aarch64 ||
echo ':aarch64:M::\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\xb7:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-aarch64-static:' > /proc/sys/fs/binfmt_misc/register
test -f /proc/sys/fs/binfmt_misc/ppc64le ||
echo ':ppc64le:M::\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x15\x00:\xff\xff\xff\xff\xff\xff\xff\xfc\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\x00:/usr/bin/qemu-ppc64le-static:' > /proc/sys/fs/binfmt_misc/register
test -f /proc/sys/fs/binfmt_misc/s390x ||
echo ':s390x:M::\x7fELF\x02\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x16:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-s390x-static:' > /proc/sys/fs/binfmt_misc/register

View File

@@ -1,36 +0,0 @@
#!/bin/bash
set -e
set -u
set -o pipefail
MIRROR="https://mirrors.kernel.org/ubuntu"
PKGS="$MIRROR/dists/bionic/universe/binary-amd64/Packages.gz"
if [ $# -ne 1 ]; then
echo "Usage: $0 package-name" 1>&2
exit 1
fi
if [ -d "$1" ]; then
echo "Directory $1 already exists -- exiting"
exit 0
fi
if ! pkg=$(curl -sSL "$PKGS" | zgrep "Filename.*$1" | awk '{ print $2 }'); then
echo "ERROR: no packages matching $1" 1>&2
exit 1
fi
if [ "$(wc -w <<< "$pkg")" -gt 1 ]; then
echo "$pkg" 1>&2
echo "ERROR: more than one match for $1" 1>&2
exit 1
fi
mkdir "$1"
cd "$1"
wget "$MIRROR/$pkg"
pkg=$(basename "$pkg")
ar vx "$pkg"
tar xJvf data.tar.xz

View File

@@ -51,13 +51,6 @@ travis_prep () {
CC="ccache $CC"
fi
# The /etc/apt/sources.list in the current trusty image for ppc64le is
# broken and needs to be fixed
if [ "$TR_ARCH" = "ppc64le" ] ; then
sed -i '/security/ d' /etc/apt/sources.list
fi
# Do not install x86_64 specific packages on other architectures
if [ "$UNAME_M" = "x86_64" ]; then
TRAVIS_PKGS="$TRAVIS_PKGS $X86_64_PKGS"