Skip to content

Commit

Permalink
Rollup merge of rust-lang#73952 - ehuss:docker-dev, r=Mark-Simulacrum
Browse files Browse the repository at this point in the history
Add option for local docker testing.

This adds the option `--dev` to `src/ci/docker/run.sh` so that it will enter an interactive environment for local testing. I have often needed this for testing things, but I always needed to edit this script. I wanted the ability to interact in the environment, run different commands, inspect errors, etc.
  • Loading branch information
Manishearth committed Jul 2, 2020
2 parents 7a48a8e + 4dc5685 commit 268274f
Showing 1 changed file with 31 additions and 2 deletions.
33 changes: 31 additions & 2 deletions src/ci/docker/run.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,27 @@ set -e
export MSYS_NO_PATHCONV=1

script=`cd $(dirname $0) && pwd`/`basename $0`
image=$1

image=""
dev=0

while [[ $# -gt 0 ]]
do
case "$1" in
--dev)
dev=1
;;
*)
if [ -n "$image" ]
then
echo "expected single argument for the image name"
exit 1
fi
image="$1"
;;
esac
shift
done

docker_dir="`dirname $script`"
ci_dir="`dirname $docker_dir`"
Expand Down Expand Up @@ -163,6 +183,15 @@ else
args="$args --env LOCAL_USER_ID=`id -u`"
fi

if [ "$dev" = "1" ]
then
# Interactive + TTY
args="$args -it"
command="/bin/bash"
else
command="/checkout/src/ci/run.sh"
fi

docker \
run \
--workdir /checkout/obj \
Expand All @@ -183,7 +212,7 @@ docker \
--init \
--rm \
rust-ci \
/checkout/src/ci/run.sh
$command

if [ -f /.dockerenv ]; then
rm -rf $objdir
Expand Down

0 comments on commit 268274f

Please sign in to comment.