From 27af5b127bbab2e3f357d43a08a8eb430a40274a Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Thu, 31 Aug 2017 16:45:33 +0200 Subject: deflake ruby artifact build --- tools/distrib/docker_for_windows.rb | 20 +++++++++++++++----- tools/dockerfile/push_testing_images.sh | 2 +- 2 files changed, 16 insertions(+), 6 deletions(-) (limited to 'tools') diff --git a/tools/distrib/docker_for_windows.rb b/tools/distrib/docker_for_windows.rb index b5cd57f1f0..010e2067b8 100755 --- a/tools/distrib/docker_for_windows.rb +++ b/tools/distrib/docker_for_windows.rb @@ -23,11 +23,21 @@ def docker_for_windows_image() dockerfile = File.join(grpc_root, 'third_party', 'rake-compiler-dock', 'Dockerfile') dockerpath = File.dirname(dockerfile) version = Digest::SHA1.file(dockerfile).hexdigest - image_name = 'grpc/rake-compiler-dock:' + version - cmd = "docker build -t #{image_name} --file #{dockerfile} #{dockerpath}" - puts cmd - system cmd - raise "Failed to build the docker image." unless $? == 0 + image_name = 'rake-compiler-dock_' + version + # if "DOCKERHUB_ORGANIZATION" env is set, we try to pull the pre-built + # rake-compiler-dock image from dockerhub rather then building from scratch. + if ENV.has_key?('DOCKERHUB_ORGANIZATION') + image_name = ENV['DOCKERHUB_ORGANIZATION'] + '/' + image_name + cmd = "docker pull #{image_name}" + puts cmd + system cmd + raise "Failed to pull the docker image." unless $? == 0 + else + cmd = "docker build -t #{image_name} --file #{dockerfile} #{dockerpath}" + puts cmd + system cmd + raise "Failed to build the docker image." unless $? == 0 + end image_name end diff --git a/tools/dockerfile/push_testing_images.sh b/tools/dockerfile/push_testing_images.sh index c88ba434f5..e9151303f7 100755 --- a/tools/dockerfile/push_testing_images.sh +++ b/tools/dockerfile/push_testing_images.sh @@ -29,7 +29,7 @@ cd - DOCKERHUB_ORGANIZATION=grpctesting -for DOCKERFILE_DIR in tools/dockerfile/test/* tools/dockerfile/grpc_artifact_* tools/dockerfile/interoptest/* +for DOCKERFILE_DIR in tools/dockerfile/test/* tools/dockerfile/grpc_artifact_* tools/dockerfile/interoptest/* third_party/rake-compiler-dock do # Generate image name based on Dockerfile checksum. That works well as long # as can count on dockerfiles being written in a way that changing the logical -- cgit v1.2.3