aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rwxr-xr-xtools/jenkins/build_docker_and_run_tests.sh7
-rwxr-xr-xtools/jenkins/docker_run_tests.sh4
-rw-r--r--tools/jenkins/grpc_jenkins_slave/Dockerfile5
-rwxr-xr-xtools/run_tests/build_python.sh13
4 files changed, 14 insertions, 15 deletions
diff --git a/tools/jenkins/build_docker_and_run_tests.sh b/tools/jenkins/build_docker_and_run_tests.sh
index 2c562e992a..8b7809f2e2 100755
--- a/tools/jenkins/build_docker_and_run_tests.sh
+++ b/tools/jenkins/build_docker_and_run_tests.sh
@@ -37,8 +37,13 @@ cd `dirname $0`/../..
git_root=`pwd`
cd -
+# Ensure existence of ccache directory
mkdir -p /tmp/ccache
+# Ensure existence of the home directory for XDG caches (e.g. what pip uses for
+# its cache location now that --download-cache is deprecated).
+mkdir -p /tmp/xdg-cache-home
+
# Create a local branch so the child Docker script won't complain
git branch -f jenkins-docker
@@ -57,9 +62,11 @@ docker run \
-e "config=$config" \
-e "arch=$arch" \
-e CCACHE_DIR=/tmp/ccache \
+ -e XDG_CACHE_HOME=/tmp/xdg-cache-home \
-i $TTY_FLAG \
-v "$git_root:/var/local/jenkins/grpc" \
-v /tmp/ccache:/tmp/ccache \
+ -v /tmp/xdg-cache-home:/tmp/xdg-cache-home \
-v /var/run/docker.sock:/var/run/docker.sock \
-v $(which docker):/bin/docker \
-w /var/local/git/grpc \
diff --git a/tools/jenkins/docker_run_tests.sh b/tools/jenkins/docker_run_tests.sh
index 2e39bc6f51..8bafeea620 100755
--- a/tools/jenkins/docker_run_tests.sh
+++ b/tools/jenkins/docker_run_tests.sh
@@ -36,6 +36,10 @@ set -e
export CONFIG=$config
export ASAN_SYMBOLIZER_PATH=/usr/bin/llvm-symbolizer-3.5
+# Ensure that programs depending on current-user-ownership of cache directories
+# are satisfied (it's being mounted from outside the image).
+chown `whoami` $XDG_CACHE_HOME
+
mkdir -p /var/local/git
git clone --recursive /var/local/jenkins/grpc /var/local/git/grpc
diff --git a/tools/jenkins/grpc_jenkins_slave/Dockerfile b/tools/jenkins/grpc_jenkins_slave/Dockerfile
index 4f5387eeb5..5f2b425c8c 100644
--- a/tools/jenkins/grpc_jenkins_slave/Dockerfile
+++ b/tools/jenkins/grpc_jenkins_slave/Dockerfile
@@ -126,10 +126,11 @@ RUN /bin/bash -l -c "gem install bundler --no-ri --no-rdoc"
RUN apt-get update && apt-get install -y \
python-all-dev \
python3-all-dev \
- python-pip \
- python-virtualenv
+ python-pip
# Install Python packages from PyPI
+RUN pip install pip --upgrade
+RUN pip install virtualenv
RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.0.0a2
# For sanity test
diff --git a/tools/run_tests/build_python.sh b/tools/run_tests/build_python.sh
index eb38614675..24cf6ba7c8 100755
--- a/tools/run_tests/build_python.sh
+++ b/tools/run_tests/build_python.sh
@@ -39,9 +39,6 @@ GRPCIO=$ROOT/src/python/grpcio
GRPCIO_TEST=$ROOT/src/python/grpcio_test
GRPCIO_HEALTH_CHECKING=$ROOT/src/python/grpcio_health_checking
-#
-# Dependency steps.
-#
install_grpcio_deps() {
cd $GRPCIO
pip install -r requirements.txt
@@ -50,14 +47,7 @@ install_grpcio_test_deps() {
cd $GRPCIO_TEST
pip install -r requirements.txt
}
-#
-# End dependency steps.
-#
-#
-# Install steps. Requires that the `pip` command is appropriate (i.e. that the
-# virtual environment has been activated).
-#
install_grpcio() {
CFLAGS="-I$ROOT/include -std=c89" LDFLAGS=-L$ROOT/libs/$CONFIG GRPC_PYTHON_BUILD_WITH_CYTHON=1 pip install $GRPCIO
}
@@ -67,9 +57,6 @@ install_grpcio_test() {
install_grpcio_health_checking() {
pip install $GRPCIO_HEALTH_CHECKING
}
-#
-# End install steps.
-#
# Cleans the environment of previous installations
clean_grpcio_all() {