2
0
mirror of https://github.com/checkpoint-restore/criu synced 2025-08-31 14:25:49 +00:00

ci: run aarch64 compile tests on Drone

Besides Travis CI Drone CI seems to be only service providing ARM based
builds. This switches the aarch64 and arm32 builds to drone.io.

Because Drone CI is running in a Docker container we cannot use 'setarch
linux32' as it requires the blocked syscall 'personality(2)'.

But Drone CI provides an 'arch: arm' which gives the same architecture
as 'setarch linux32' on Travis aarch64: armv8l

Signed-off-by: Adrian Reber <areber@redhat.com>
This commit is contained in:
Adrian Reber
2020-11-12 12:22:41 +00:00
committed by Andrei Vagin
parent 95df2524cc
commit baad84efb2
3 changed files with 71 additions and 14 deletions

65
.drone.yml Normal file
View File

@@ -0,0 +1,65 @@
---
kind: pipeline
type: docker
name: aarch64 build GCC (native)
platform:
os: linux
arch: arm64
steps:
- name: build
image: ubuntu:focal
commands:
- scripts/ci/apt-install make
- make -C scripts/ci local
---
kind: pipeline
type: docker
name: aarch64 build CLANG (native)
platform:
os: linux
arch: arm64
steps:
- name: build
image: ubuntu:focal
commands:
- scripts/ci/apt-install make
- make -C scripts/ci local CLANG=1
---
kind: pipeline
type: docker
name: armhf build GCC (native)
platform:
os: linux
arch: arm
steps:
- name: build
# At the time of setting up focal did not work
image: ubuntu:bionic
commands:
- scripts/ci/apt-install make
- make -C scripts/ci local
---
kind: pipeline
type: docker
name: armhf build CLANG (native)
platform:
os: linux
arch: arm
steps:
- name: build
# At the time of setting up focal did not work
image: ubuntu:bionic
commands:
- scripts/ci/apt-install make
- make -C scripts/ci local CLANG=1

View File

@@ -33,16 +33,6 @@ jobs:
group: edge
virt: vm
dist: bionic
- os: linux
arch: arm64
# This runs on aarch64 with 'setarch linux32'
env: TR_ARCH=armv7hf
dist: bionic
- os: linux
arch: arm64
# This runs on aarch64 with 'setarch linux32'
env: TR_ARCH=armv7hf CLANG=1
dist: bionic
- os: linux
arch: arm64
env: TR_ARCH=fedora-rawhide

View File

@@ -4,7 +4,8 @@ set -x -e
CI_PKGS="protobuf-c-compiler libprotobuf-c-dev libaio-dev libgnutls28-dev
libgnutls30 libprotobuf-dev protobuf-compiler libcap-dev
libnl-3-dev gdb bash libnet-dev util-linux asciidoctor
libnl-route-3-dev time ccache flake8 libbsd-dev"
libnl-route-3-dev time ccache flake8 libbsd-dev
libperl-dev pkg-config"
if [ -e /etc/lsb-release ]; then
@@ -51,12 +52,13 @@ ci_prep () {
# This can fail on aarch64 travis
service apport stop || :
CC=gcc
# clang support
if [ "$CLANG" = "1" ]; then
CI_PKGS="$CI_PKGS clang"
# clang support
CC=clang
else
CC=gcc
fi
CI_PKGS="$CI_PKGS $CC"
[ -n "$GCOV" ] && {
apt-add-repository -y "ppa:ubuntu-toolchain-r/test"