From 6003a61255fe508924878ef0ce8207996e7b5d3c Mon Sep 17 00:00:00 2001 From: Matt Kwong Date: Tue, 19 Dec 2017 17:09:54 -0800 Subject: Make Kokoro job pull Dockerimage from Dockerhub --- kokoro/linux/build_and_run_docker.sh | 19 +++++++++++-------- kokoro/linux/pull_request_in_docker.sh | 6 +++--- 2 files changed, 14 insertions(+), 11 deletions(-) (limited to 'kokoro/linux') diff --git a/kokoro/linux/build_and_run_docker.sh b/kokoro/linux/build_and_run_docker.sh index 50e1e8c6..4eaa0282 100755 --- a/kokoro/linux/build_and_run_docker.sh +++ b/kokoro/linux/build_and_run_docker.sh @@ -11,15 +11,16 @@ set -ex -cd $(dirname $0)/.. +cd $(dirname $0)/../.. git_root=$(pwd) cd - -# Use image name based on Dockerfile location checksum -DOCKER_IMAGE_NAME=$(basename $DOCKERFILE_DIR)_$(sha1sum $DOCKERFILE_DIR/Dockerfile | cut -f1 -d\ ) +# Use image name based on Dockerfile sha1 +DOCKERHUB_ORGANIZATION=grpctesting/protobuf +DOCKER_IMAGE_NAME=${DOCKERHUB_ORGANIZATION}_$(sha1sum $DOCKERFILE_DIR/Dockerfile | cut -f1 -d\ ) -# Make sure docker image has been built. Should be instantaneous if so. -docker build -t $DOCKER_IMAGE_NAME $DOCKERFILE_DIR +# Pull dockerimage from Dockerhub +docker pull $DOCKER_IMAGE_NAME # Ensure existence of ccache directory CCACHE_DIR=/tmp/protobuf-ccache @@ -28,19 +29,21 @@ mkdir -p $CCACHE_DIR # Choose random name for docker container CONTAINER_NAME="build_and_run_docker_$(uuidgen)" +echo $git_root + # Run command inside docker docker run \ "$@" \ -e CCACHE_DIR=$CCACHE_DIR \ - -e EXTERNAL_GIT_ROOT="/var/local/jenkins/protobuf" \ + -e EXTERNAL_GIT_ROOT="/var/local/kokoro/protobuf" \ -e TEST_SET="$TEST_SET" \ -e THIS_IS_REALLY_NEEDED='see https://github.com/docker/docker/issues/14203 for why docker is awful' \ - -v "$git_root:/var/local/jenkins/protobuf:ro" \ + -v "$git_root:/var/local/kokoro/protobuf:ro" \ -v $CCACHE_DIR:$CCACHE_DIR \ -w /var/local/git/protobuf \ --name=$CONTAINER_NAME \ $DOCKER_IMAGE_NAME \ - bash -l "/var/local/jenkins/protobuf/$DOCKER_RUN_SCRIPT" || FAILED="true" + bash -l "/var/local/kokoro/protobuf/$DOCKER_RUN_SCRIPT" || FAILED="true" # Copy output artifacts if [ "$OUTPUT_DIR" != "" ] diff --git a/kokoro/linux/pull_request_in_docker.sh b/kokoro/linux/pull_request_in_docker.sh index 10daf0a5..fa5f0caa 100755 --- a/kokoro/linux/pull_request_in_docker.sh +++ b/kokoro/linux/pull_request_in_docker.sh @@ -5,7 +5,7 @@ WORKSPACE_BASE=`pwd` MY_DIR="$(dirname "$0")" -TEST_SCRIPT=$MY_DIR/../tests.sh +TEST_SCRIPT=$MY_DIR/../../tests.sh BUILD_DIR=/tmp/protobuf set -e # exit immediately on error @@ -16,7 +16,7 @@ set -x # display all commands rm -rf $BUILD_DIR mkdir -p $BUILD_DIR cd $BUILD_DIR -git clone /var/local/jenkins/protobuf +git clone /var/local/kokoro/protobuf cd protobuf # Set up the directory where our test output is going to go. @@ -54,7 +54,7 @@ parallel --results $LOG_OUTPUT_DIR --joblog $OUTPUT_DIR/joblog $TEST_SCRIPT ::: cat $OUTPUT_DIR/joblog -# The directory that is copied from Docker back into the Jenkins workspace. +# The directory that is copied from Docker back into the Kokoro workspace. COPY_FROM_DOCKER=/var/local/git/protobuf/testoutput mkdir -p $COPY_FROM_DOCKER TESTOUTPUT_XML_FILE=$COPY_FROM_DOCKER/testresults.xml -- cgit v1.2.3