From 8f85ab545d473052e40a9212c53979f7ee4060e7 Mon Sep 17 00:00:00 2001 From: Jorge Aparicio Date: Mon, 8 Aug 2016 20:37:04 -0500 Subject: [PATCH] run in xenial (docker) --- .travis.yml | 1 + ci/env.sh | 1 + ci/install.sh | 22 +++++++++++++++++----- ci/script.sh | 16 +++++++++++++--- 4 files changed, 32 insertions(+), 8 deletions(-) diff --git a/.travis.yml b/.travis.yml index ba1c536..aecd546 100644 --- a/.travis.yml +++ b/.travis.yml @@ -63,6 +63,7 @@ matrix: - env: TARGET=powerpc64le-unknown-linux-gnu os: linux dist: trusty + services: docker sudo: required addons: apt: diff --git a/ci/env.sh b/ci/env.sh index 29707a4..ed4e1b0 100644 --- a/ci/env.sh +++ b/ci/env.sh @@ -29,6 +29,7 @@ case $TARGET in export QEMU_LD_PREFIX=/usr/powerpc-linux-gnu ;; powerpc64le-unknown-linux-gnu) + export DOCKER=y export PREFIX=powerpc64le-linux-gnu- export QEMU=qemu-ppc64le export QEMU_LD_PREFIX=/usr/powerpc64le-linux-gnu diff --git a/ci/install.sh b/ci/install.sh index 3d11092..79af908 100644 --- a/ci/install.sh +++ b/ci/install.sh @@ -2,6 +2,15 @@ set -ex . $(dirname $0)/env.sh +install_qemu() { + case $TARGET in + powerpc64-unknown-linux-gnu) + sudo apt-get install -y --no-install-recommends \ + qemu-user + ;; + esac +} + install_binutils() { case $TRAVIS_OS_NAME in osx) @@ -49,11 +58,14 @@ EOF } main() { - install_binutils - install_c_toolchain - install_rust - add_rustup_target - configure_cargo + if [[ -z $DOCKER ]]; then + install_qemu + install_binutils + install_c_toolchain + install_rust + add_rustup_target + configure_cargo + fi } main diff --git a/ci/script.sh b/ci/script.sh index 0249a53..b3f7c17 100644 --- a/ci/script.sh +++ b/ci/script.sh @@ -32,9 +32,19 @@ inspect() { } main() { - build - run_tests - inspect + if [[ $DOCKER ]]; then + docker run \ + -e TARGET=$TARGET \ + -e TRAVIS_OS_NAME=$TRAVIS_OS_NAME \ + -v $(pwd)/ci:/mnt \ + ubuntu:16.04 \ + sh -c "bash /mnt/install.sh; bash /mnt/script.sh" + else + build + run_tests + inspect + fi + } main