From 2b778d6971b48c5f322a6f0bce494978362ee23e Mon Sep 17 00:00:00 2001 From: Jan Tattermusch <jtattermusch@google.com> Date: Tue, 6 Oct 2015 09:03:36 -0700 Subject: [PATCH] copy service account key logic --- tools/jenkins/build_interop_image.sh | 14 +++++++++++--- tools/jenkins/grpc_interop_csharp/build_interop.sh | 3 +++ tools/jenkins/grpc_interop_cxx/build_interop.sh | 3 +++ tools/jenkins/grpc_interop_go/build_interop.sh | 3 +++ tools/jenkins/grpc_interop_java/build_interop.sh | 3 +++ tools/jenkins/grpc_interop_node/build_interop.sh | 3 +++ tools/jenkins/grpc_interop_php/build_interop.sh | 3 +++ tools/jenkins/grpc_interop_ruby/build_interop.sh | 3 +++ 8 files changed, 32 insertions(+), 3 deletions(-) diff --git a/tools/jenkins/build_interop_image.sh b/tools/jenkins/build_interop_image.sh index b5958588f2..3664eed84d 100755 --- a/tools/jenkins/build_interop_image.sh +++ b/tools/jenkins/build_interop_image.sh @@ -35,12 +35,12 @@ set -x cd `dirname $0`/../.. GRPC_ROOT=`pwd` -MOUNT_ARGS="-v $GRPC_ROOT:/var/local/jenkins/grpc" +MOUNT_ARGS="-v $GRPC_ROOT:/var/local/jenkins/grpc:ro" GRPC_JAVA_ROOT=`cd ../grpc-java && pwd` if [ "$GRPC_JAVA_ROOT" != "" ] then - MOUNT_ARGS+=" -v $GRPC_JAVA_ROOT:/var/local/jenkins/grpc-java" + MOUNT_ARGS+=" -v $GRPC_JAVA_ROOT:/var/local/jenkins/grpc-java:ro" else echo "WARNING: grpc-java not found, it won't be mounted to the docker container." fi @@ -48,7 +48,7 @@ fi GRPC_GO_ROOT=`cd ../grpc-go && pwd` if [ "$GRPC_GO_ROOT" != "" ] then - MOUNT_ARGS+=" -v $GRPC_GO_ROOT:/var/local/jenkins/grpc-go" + MOUNT_ARGS+=" -v $GRPC_GO_ROOT:/var/local/jenkins/grpc-go:ro" else echo "WARNING: grpc-go not found, it won't be mounted to the docker container." fi @@ -60,6 +60,14 @@ mkdir -p /tmp/ccache # BASE_NAME - base name used to locate the base Dockerfile and build script # TTY_FLAG - optional -t flag to make docker allocate tty. +# Mount service account dir if available. +# If service_directory does not contain the service account JSON file, +# some of the tests will fail. +if [ -e $HOME/service_account ] +then + MOUNT_ARGS+=" -v $HOME/service_account:/var/local/jenkins/service_account:ro" +fi + # Use image name based on Dockerfile checksum BASE_IMAGE=${BASE_NAME}_base:`sha1sum tools/jenkins/$BASE_NAME/Dockerfile | cut -f1 -d\ ` diff --git a/tools/jenkins/grpc_interop_csharp/build_interop.sh b/tools/jenkins/grpc_interop_csharp/build_interop.sh index e91cbed81e..8fde687900 100755 --- a/tools/jenkins/grpc_interop_csharp/build_interop.sh +++ b/tools/jenkins/grpc_interop_csharp/build_interop.sh @@ -34,6 +34,9 @@ set -e mkdir -p /var/local/git git clone --recursive /var/local/jenkins/grpc /var/local/git/grpc +# copy service account keys if available +cp -r /var/local/jenkins/service_account $HOME || true + cd /var/local/git/grpc make install-certs diff --git a/tools/jenkins/grpc_interop_cxx/build_interop.sh b/tools/jenkins/grpc_interop_cxx/build_interop.sh index 4163e11ecc..1c0828d23a 100755 --- a/tools/jenkins/grpc_interop_cxx/build_interop.sh +++ b/tools/jenkins/grpc_interop_cxx/build_interop.sh @@ -34,6 +34,9 @@ set -e mkdir -p /var/local/git git clone --recursive /var/local/jenkins/grpc /var/local/git/grpc +# copy service account keys if available +cp -r /var/local/jenkins/service_account $HOME || true + cd /var/local/git/grpc make install-certs diff --git a/tools/jenkins/grpc_interop_go/build_interop.sh b/tools/jenkins/grpc_interop_go/build_interop.sh index 78dd4ea9cf..05fc6dfdfb 100755 --- a/tools/jenkins/grpc_interop_go/build_interop.sh +++ b/tools/jenkins/grpc_interop_go/build_interop.sh @@ -36,6 +36,9 @@ set -e # to test instead of using "go get" to download from Github directly. git clone --recursive /var/local/jenkins/grpc-go src/gooogle.golang.org/grpc +# copy service account keys if available +cp -r /var/local/jenkins/service_account $HOME || true + # Get dependencies from GitHub # NOTE: once grpc-go dependencies change, this needs to be updated manually # but we don't expect this to happen any time soon. diff --git a/tools/jenkins/grpc_interop_java/build_interop.sh b/tools/jenkins/grpc_interop_java/build_interop.sh index 4ee2f44e3d..9997c63308 100755 --- a/tools/jenkins/grpc_interop_java/build_interop.sh +++ b/tools/jenkins/grpc_interop_java/build_interop.sh @@ -34,6 +34,9 @@ set -e mkdir -p /var/local/git git clone --recursive --depth 1 /var/local/jenkins/grpc-java /var/local/git/grpc-java +# copy service account keys if available +cp -r /var/local/jenkins/service_account $HOME || true + cd /var/local/git/grpc-java ./gradlew :grpc-interop-testing:installDist -PskipCodegen=true diff --git a/tools/jenkins/grpc_interop_node/build_interop.sh b/tools/jenkins/grpc_interop_node/build_interop.sh index 55e2a4081b..84e25e3308 100755 --- a/tools/jenkins/grpc_interop_node/build_interop.sh +++ b/tools/jenkins/grpc_interop_node/build_interop.sh @@ -34,6 +34,9 @@ set -e mkdir -p /var/local/git git clone --recursive /var/local/jenkins/grpc /var/local/git/grpc +# copy service account keys if available +cp -r /var/local/jenkins/service_account $HOME || true + cd /var/local/git/grpc nvm use 0.12 nvm alias default 0.12 # prevent the need to run 'nvm use' in every shell diff --git a/tools/jenkins/grpc_interop_php/build_interop.sh b/tools/jenkins/grpc_interop_php/build_interop.sh index 745dea845d..cd9d67804a 100755 --- a/tools/jenkins/grpc_interop_php/build_interop.sh +++ b/tools/jenkins/grpc_interop_php/build_interop.sh @@ -34,6 +34,9 @@ set -e mkdir -p /var/local/git git clone --recursive /var/local/jenkins/grpc /var/local/git/grpc +# copy service account keys if available +cp -r /var/local/jenkins/service_account $HOME || true + cd /var/local/git/grpc rvm --default use ruby-2.1 diff --git a/tools/jenkins/grpc_interop_ruby/build_interop.sh b/tools/jenkins/grpc_interop_ruby/build_interop.sh index 7d407e7d0a..c5023f5c1d 100755 --- a/tools/jenkins/grpc_interop_ruby/build_interop.sh +++ b/tools/jenkins/grpc_interop_ruby/build_interop.sh @@ -34,6 +34,9 @@ set -e mkdir -p /var/local/git git clone --recursive /var/local/jenkins/grpc /var/local/git/grpc +# copy service account keys if available +cp -r /var/local/jenkins/service_account $HOME || true + cd /var/local/git/grpc rvm --default use ruby-2.1 -- GitLab