| OLD | NEW |
| 1 # Copyright 2016 The Chromium Authors. All rights reserved. | 1 # Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 from recipe_engine import recipe_api | 5 from recipe_engine import recipe_api |
| 6 | 6 |
| 7 import re |
| 8 |
| 7 GS_CHROMEDRIVER_DATA_BUCKET = 'chromedriver-data' | 9 GS_CHROMEDRIVER_DATA_BUCKET = 'chromedriver-data' |
| 8 GS_PREBUILTS_URL = GS_CHROMEDRIVER_DATA_BUCKET + '/prebuilts' | 10 GS_PREBUILTS_URL = GS_CHROMEDRIVER_DATA_BUCKET + '/prebuilts' |
| 9 GS_SERVER_LOGS_URL = GS_CHROMEDRIVER_DATA_BUCKET + '/server_logs' | 11 GS_SERVER_LOGS_URL = GS_CHROMEDRIVER_DATA_BUCKET + '/server_logs' |
| 10 | 12 |
| 13 PREBUILT_FILE_RE = re.compile(r'r\d+\.zip') |
| 14 |
| 11 TEST_LOG_FORMAT = '%s_log.json' | 15 TEST_LOG_FORMAT = '%s_log.json' |
| 12 TEST_LOG_MAX_LENGTH = 500 | 16 TEST_LOG_MAX_LENGTH = 500 |
| 13 | 17 |
| 14 class ChromedriverApi(recipe_api.RecipeApi): | 18 class ChromedriverApi(recipe_api.RecipeApi): |
| 15 | 19 |
| 16 def __init__(self, *args, **kwargs): | 20 def __init__(self, *args, **kwargs): |
| 17 super(ChromedriverApi, self).__init__(*args, **kwargs) | 21 super(ChromedriverApi, self).__init__(*args, **kwargs) |
| 18 self._chromedriver_log_dir = None | 22 self._chromedriver_log_dir = None |
| 19 | 23 |
| 20 def download_prebuilts(self): | 24 def download_prebuilts(self): |
| 21 """Downloads the most recent prebuilts from Google storage.""" | 25 """Downloads the most recent prebuilts from Google storage.""" |
| 22 with self.m.step.nest('Download Prebuilts'): | 26 with self.m.step.nest('Download Prebuilts'): |
| 23 with self.m.tempfile.temp_dir('prebuilt') as prebuilt_dir: | 27 with self.m.tempfile.temp_dir('prebuilt') as prebuilt_dir: |
| 24 zipfile = prebuilt_dir.join('build.zip') | |
| 25 unzip_dir = prebuilt_dir.join('unzipped') | 28 unzip_dir = prebuilt_dir.join('unzipped') |
| 26 self.m.gsutil.download_latest_file( | 29 self.m.gsutil.download_latest_file( |
| 27 base_url='gs://%s' % GS_PREBUILTS_URL, | 30 base_url='gs://%s' % GS_PREBUILTS_URL, |
| 28 partial_name='gs://%s/r' % GS_PREBUILTS_URL, | 31 partial_name='gs://%s/r' % GS_PREBUILTS_URL, |
| 29 destination=zipfile, | 32 destination=prebuilt_dir, |
| 30 name='download latest prebuilt') | 33 name='download latest prebuilt') |
| 34 file_list = self.m.file.listdir( |
| 35 name='get prebuilt filename', |
| 36 path=prebuilt_dir, |
| 37 step_test_data=lambda: self.m.json.test_api.output(['r111111.zip'])) |
| 38 prebuilt_file = file_list[0] |
| 39 if not PREBUILT_FILE_RE.match(prebuilt_file): |
| 40 raise self.m.step.StepFailure('Unexpected prebuilt filename: %s' |
| 41 % prebuilt_file) |
| 31 self.m.zip.unzip(step_name='unzip prebuilt', | 42 self.m.zip.unzip(step_name='unzip prebuilt', |
| 32 zip_file=zipfile, | 43 zip_file=prebuilt_dir.join(prebuilt_file), |
| 33 output=unzip_dir) | 44 output=unzip_dir) |
| 34 self.m.file.move(name='move prebuilt', | 45 self.m.file.move(name='move prebuilt', |
| 35 source=unzip_dir.join('chromedriver'), | 46 source=unzip_dir.join('chromedriver'), |
| 36 dest=self.m.chromium.output_dir, | 47 dest=self.m.chromium.output_dir, |
| 37 infra_step=False) | 48 infra_step=False) |
| 38 | 49 |
| 39 def archive_server_log(self, server_log): | 50 def archive_server_log(self, server_log): |
| 40 """Uploads chromedriver server log to Google storage. | 51 """Uploads chromedriver server log to Google storage. |
| 41 | 52 |
| 42 Args: | 53 Args: |
| (...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 205 chrome_version_name=package, | 216 chrome_version_name=package, |
| 206 android_package=package, | 217 android_package=package, |
| 207 env=test_env, | 218 env=test_env, |
| 208 archive_server_log=archive_server_logs) | 219 archive_server_log=archive_server_logs) |
| 209 self.run_java_tests(chromedriver, | 220 self.run_java_tests(chromedriver, |
| 210 chrome_version_name=package, | 221 chrome_version_name=package, |
| 211 android_package=package, | 222 android_package=package, |
| 212 verbose=True, | 223 verbose=True, |
| 213 env=test_env, | 224 env=test_env, |
| 214 archive_server_log=archive_server_logs) | 225 archive_server_log=archive_server_logs) |
| OLD | NEW |