about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2016-12-19 11:59:44 -0800
committerAlex Crichton <alex@alexcrichton.com>2016-12-19 11:59:44 -0800
commitcae98cae4f1045cd30239f2a62a77ab81fa2dec7 (patch)
tree541600cc463aff46d5a7b50735a2c811da819834 /src
parent3f9823d5f53230e83b707b4876b5bb271a4c22ef (diff)
downloadrust-cae98cae4f1045cd30239f2a62a77ab81fa2dec7.tar.gz
rust-cae98cae4f1045cd30239f2a62a77ab81fa2dec7.zip
travis: Support local sccache if not on bots
This commit configures local sccache directory to get used if you're running
builds locally to enjoy the benefits of caching when running inside the
containers.
Diffstat (limited to 'src')
-rwxr-xr-xsrc/ci/docker/run.sh14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/ci/docker/run.sh b/src/ci/docker/run.sh
index ce8b49a92dc..8c2c8d2a9db 100755
--- a/src/ci/docker/run.sh
+++ b/src/ci/docker/run.sh
@@ -28,15 +28,23 @@ docker \
 mkdir -p $HOME/.cargo
 mkdir -p $root_dir/obj
 
+args=
+if [ "$SCCACHE_BUCKET" != "" ]; then
+    args="$args --env SCCACHE_BUCKET=$SCCACHE_BUCKET"
+    args="$args --env AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID"
+    args="$args --env AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY"
+else
+    mkdir -p $HOME/.cache/sccache
+    args="$args --env SCCACHE_DIR=/sccache --volume $HOME/.cache/sccache:/sccache"
+fi
+
 exec docker \
   run \
   --volume "$root_dir:/checkout:ro" \
   --volume "$root_dir/obj:/checkout/obj" \
   --workdir /checkout/obj \
   --env SRC=/checkout \
-  --env SCCACHE_BUCKET=$SCCACHE_BUCKET \
-  --env AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
-  --env AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
+  $args \
   --env CARGO_HOME=/cargo \
   --env LOCAL_USER_ID=`id -u` \
   --volume "$HOME/.cargo:/cargo" \