diff options
-rw-r--r-- | tests/wpt/manifestupdate.py | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/tests/wpt/manifestupdate.py b/tests/wpt/manifestupdate.py index f2e5887b78c..7c8fb53dead 100644 --- a/tests/wpt/manifestupdate.py +++ b/tests/wpt/manifestupdate.py @@ -54,10 +54,14 @@ def update(logger, wpt_dir, check_clean=True, rebuild=False): def _update(logger, test_paths, rebuild): for url_base, paths in test_paths.iteritems(): manifest_path = os.path.join(paths["metadata_path"], "MANIFEST.json") - if rebuild: + m = None + if not rebuild: + try: + m = manifest.manifest.load(paths["tests_path"], manifest_path) + except manifest.manifest.ManifestVersionMismatch: + logger.info("Manifest format changed, rebuilding") + if m is None: m = manifest.manifest.Manifest(url_base) - else: - m = manifest.manifest.load(paths["tests_path"], manifest_path) manifest.update.update(paths["tests_path"], m, working_copy=True) manifest.manifest.write(m, manifest_path) return 0 |