diff options
Diffstat (limited to 'libc/ci/run-docker.sh')
-rw-r--r-- | libc/ci/run-docker.sh | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/libc/ci/run-docker.sh b/libc/ci/run-docker.sh new file mode 100644 index 0000000..1ac419a --- /dev/null +++ b/libc/ci/run-docker.sh @@ -0,0 +1,34 @@ +# Small script to run tests for a target (or all targets) inside all the +# respective docker images. + +set -ex + +run() { + echo $1 + # use -f so we can use ci/ as build context + docker build -t libc -f ci/docker/$1/Dockerfile ci/ + mkdir -p target + docker run \ + --user `id -u`:`id -g` \ + --rm \ + --volume $HOME/.cargo:/cargo \ + --env CARGO_HOME=/cargo \ + --volume `rustc --print sysroot`:/rust:ro \ + --volume `pwd`:/checkout:ro \ + --volume `pwd`/target:/checkout/target \ + --env CARGO_TARGET_DIR=/checkout/target \ + --workdir /checkout \ + --privileged \ + --interactive \ + --tty \ + libc \ + ci/run.sh $1 +} + +if [ -z "$1" ]; then + for d in `ls ci/docker/`; do + run $d + done +else + run $1 +fi |