Merge pull request #13296 from adelez/remove_images

Remove images as soon as its testing is done instead in the end.
reviewable/pr13109/r3^2
adelez 8 years ago committed by GitHub
commit 67520b0ffd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 23
      tools/interop_matrix/client_matrix.py
  2. 13
      tools/interop_matrix/run_interop_matrix_tests.py

@ -27,7 +27,7 @@ LANG_RUNTIME_MATRIX = {
'cxx': ['cxx'], # This is actually debian8. 'cxx': ['cxx'], # This is actually debian8.
'go': ['go1.7', 'go1.8'], 'go': ['go1.7', 'go1.8'],
'java': ['java_oracle8'], 'java': ['java_oracle8'],
'python': ['python'], #'python': ['python'], # All python versions fail the tests due to timeout.
'node': ['node'], 'node': ['node'],
'ruby': ['ruby'], 'ruby': ['ruby'],
'php': ['php', 'php7'], 'php': ['php', 'php7'],
@ -64,14 +64,14 @@ LANG_RELEASE_MATRIX = {
'v1.6.1', 'v1.6.1',
'v1.7.0', 'v1.7.0',
], ],
'python': [ #'python': [
#'v1.0.x', #Fail to run the test. #13230. #'v1.0.x', #Fail to run the test. #13230.
'v1.1.4', # 'v1.1.4',
'v1.2.5', # 'v1.2.5',
'v1.3.9', # 'v1.3.9',
'v1.4.2', # 'v1.4.2',
'v1.6.6', # 'v1.6.6',
], #],
'node': [ 'node': [
'v1.0.1', 'v1.0.1',
'v1.1.4', 'v1.1.4',
@ -97,11 +97,10 @@ LANG_RELEASE_MATRIX = {
'v1.6.6', 'v1.6.6',
], ],
'csharp': [ 'csharp': [
# Fail to build images due to #13278.
#'v1.0.1', #'v1.0.1',
#'v1.1.4', #'v1.1.4', Fail to build.
#'v1.2.5', #'v1.2.5', Fail to run test with csharp image.
#'v1.3.9', 'v1.3.9',
'v1.4.2', 'v1.4.2',
'v1.6.6', 'v1.6.6',
], ],

@ -83,6 +83,8 @@ argp.add_argument('--bq_result_table',
args = argp.parse_args() args = argp.parse_args()
print(str(args))
def find_all_images_for_lang(lang): def find_all_images_for_lang(lang):
"""Find docker images for a language across releases and runtimes. """Find docker images for a language across releases and runtimes.
@ -170,7 +172,6 @@ def run_tests_for_lang(lang, runtime, images):
jobset.message('START', 'Testing %s' % image, do_newline=True) jobset.message('START', 'Testing %s' % image, do_newline=True)
# Download the docker image before running each test case. # Download the docker image before running each test case.
subprocess.check_call(['gcloud', 'docker', '--', 'pull', image]) subprocess.check_call(['gcloud', 'docker', '--', 'pull', image])
_docker_images_cleanup.append(image)
suite_name = '%s__%s_%s' % (lang, runtime, release) suite_name = '%s__%s_%s' % (lang, runtime, release)
job_spec_list = find_test_cases(lang, runtime, release, suite_name) job_spec_list = find_test_cases(lang, runtime, release, suite_name)
@ -198,16 +199,16 @@ def run_tests_for_lang(lang, runtime, images):
suite_name, suite_name,
str(uuid.uuid4())) str(uuid.uuid4()))
if not args.keep:
cleanup(image)
return total_num_failures return total_num_failures
_docker_images_cleanup = [] def cleanup(image):
def cleanup(): jobset.message('START', 'Cleanup docker image %s' % image, do_newline=True)
if not args.keep:
for image in _docker_images_cleanup:
dockerjob.remove_image(image, skip_nonexistent=True) dockerjob.remove_image(image, skip_nonexistent=True)
atexit.register(cleanup)
languages = args.language if args.language != ['all'] else _LANGUAGES languages = args.language if args.language != ['all'] else _LANGUAGES
total_num_failures = 0 total_num_failures = 0

Loading…
Cancel
Save