Chromium Code Reviews| Index: Tools/Scripts/webkitpy/layout_tests/controllers/manager.py |
| diff --git a/Tools/Scripts/webkitpy/layout_tests/controllers/manager.py b/Tools/Scripts/webkitpy/layout_tests/controllers/manager.py |
| index b5d4cce27c8d5b33c1ca1a3a9811b38f2f6aa9d0..72b5da031c15559d806240fa5e720fd1f2d7885c 100644 |
| --- a/Tools/Scripts/webkitpy/layout_tests/controllers/manager.py |
| +++ b/Tools/Scripts/webkitpy/layout_tests/controllers/manager.py |
| @@ -167,16 +167,16 @@ class Manager(object): |
| archived_path = self._filesystem.join(self._filesystem.dirname(self._results_directory), archived_name) |
| self._filesystem.move(self._results_directory, archived_path) |
| - def _clobber_old_archived_results(self): |
| + def _limit_archived_results_count(self): |
| results_directory_path = self._filesystem.dirname(self._results_directory) |
| file_list = self._filesystem.listdir(results_directory_path) |
| results_directories = [] |
| for dir in file_list: |
| file_path = self._filesystem.join(results_directory_path, dir) |
| - if self._filesystem.isdir(file_path): |
| + if self._filesystem.isdir(file_path) and 'layout-test-results' in dir: |
|
Dirk Pranke
2014/08/20 20:09:57
You should use the basename of self._results_direc
patro
2014/08/21 13:40:39
Done.
|
| results_directories.append(file_path) |
| results_directories.sort(key=lambda x: self._filesystem.mtime(x)) |
| - self._printer.write_update("Clobbering old archived results in %s" % results_directory_path) |
| + self._printer.write_update("Clobbering excess archived results in %s" % results_directory_path) |
| for dir in results_directories[:-self.ARCHIVED_RESULTS_LIMIT]: |
| self._filesystem.rmtree(dir) |
| @@ -202,14 +202,12 @@ class Manager(object): |
| self._port.stop_helper() |
| return exit_code |
| - if self._options.enable_versioned_results and self._filesystem.exists(self._results_directory): |
| - if self._options.clobber_old_results: |
| - _log.warning("Flag --enable_versioned_results overrides --clobber-old-results.") |
| - self._clobber_old_archived_results() |
| + if self._options.clobber_old_results: |
| + self._clobber_old_results() |
| + elif self._filesystem.exists(self._results_directory): |
| + self._limit_archived_results_count() |
| # Rename the existing results folder for archiving. |
| self._rename_results_folder() |
| - elif self._options.clobber_old_results: |
| - self._clobber_old_results() |
| # Create the output directory if it doesn't already exist. |
| self._port.host.filesystem.maybe_make_directory(self._results_directory) |
| @@ -395,16 +393,16 @@ class Manager(object): |
| writer.write_crash_log(crash_log) |
| def _clobber_old_results(self): |
| - # Just clobber the actual test results directories since the other |
| - # files in the results directory are explicitly used for cross-run |
| - # tracking. |
| - self._printer.write_update("Clobbering old results in %s" % |
| - self._results_directory) |
| - layout_tests_dir = self._port.layout_tests_dir() |
| - possible_dirs = self._port.test_dirs() |
| - for dirname in possible_dirs: |
| - if self._filesystem.isdir(self._filesystem.join(layout_tests_dir, dirname)): |
| - self._filesystem.rmtree(self._filesystem.join(self._results_directory, dirname)) |
| + results_directory_path = self._filesystem.dirname(self._results_directory) |
| + file_list = self._filesystem.listdir(results_directory_path) |
| + results_directories = [] |
| + for dir in file_list: |
| + file_path = self._filesystem.join(results_directory_path, dir) |
| + if self._filesystem.isdir(file_path) and 'layout-test-results' in dir: |
|
Dirk Pranke
2014/08/20 20:09:57
same comment.
In fact, you should probably split
patro
2014/08/21 13:40:39
Done.
patro
2014/08/21 13:40:39
Done.
|
| + results_directories.append(file_path) |
| + self._printer.write_update("Clobbering all archived results in %s" % results_directory_path) |
| + for dir in results_directories: |
| + self._filesystem.rmtree(dir) |
| # Port specific clean-up. |
| self._port.clobber_old_port_specific_results() |