1234567891011121314151617181920212223242526272829303132333435363738 |
- # Small script to run tests for a target (or all targets) inside all the
- # respective docker images.
- set -ex
- run() {
- local target=$1
- echo $target
- # This directory needs to exist before calling docker, otherwise docker will create it but it
- # will be owned by root
- mkdir -p target
- docker build -t $target ci/docker/$target
- docker run \
- --rm \
- --user $(id -u):$(id -g) \
- -e CARGO_HOME=/cargo \
- -e CARGO_TARGET_DIR=/target \
- -e RUST_COMPILER_RT_ROOT \
- -v $(dirname $(dirname `which cargo`)):/cargo \
- -v `pwd`/target:/target \
- -v `pwd`:/checkout:ro \
- -v `rustc --print sysroot`:/rust:ro \
- -w /checkout \
- --init \
- $target \
- sh -c "HOME=/tmp PATH=\$PATH:/rust/bin ci/run.sh $target"
- }
- if [ -z "$1" ]; then
- for d in `ls ci/docker/`; do
- run $d
- done
- else
- run $1
- fi
|