summaryrefslogtreecommitdiffstats
path: root/vendor/libm-0.1.4/ci/run-docker.sh
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/libm-0.1.4/ci/run-docker.sh')
-rwxr-xr-xvendor/libm-0.1.4/ci/run-docker.sh37
1 files changed, 37 insertions, 0 deletions
diff --git a/vendor/libm-0.1.4/ci/run-docker.sh b/vendor/libm-0.1.4/ci/run-docker.sh
new file mode 100755
index 000000000..e7b80c719
--- /dev/null
+++ b/vendor/libm-0.1.4/ci/run-docker.sh
@@ -0,0 +1,37 @@
+# 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 \
+ -v $(dirname $(dirname `which cargo`)):/cargo \
+ -v `pwd`/target:/target \
+ -v `pwd`:/checkout:ro \
+ -v `rustc --print sysroot`:/rust:ro \
+ --init \
+ -w /checkout \
+ $target \
+ sh -c "HOME=/tmp PATH=\$PATH:/rust/bin exec ci/run.sh $target"
+}
+
+if [ -z "$1" ]; then
+ for d in `ls ci/docker/`; do
+ run $d
+ done
+else
+ run $1
+fi