Sfoglia il codice sorgente

Bail out when manifest is referencing a bad SHA-1 revision.

BUG: Issue 222
Change-Id: Ie0a64b39922d6fdf1be2989eb514985be8490278
Xin Li 9 anni fa
parent
commit
f97e72e5dd
1 ha cambiato i file con 7 aggiunte e 1 eliminazioni
  1. 7 1
      gitc_utils.py

+ 7 - 1
gitc_utils.py

@@ -24,6 +24,8 @@ import git_command
 import git_config
 import wrapper
 
+from error import ManifestParseError
+
 NUM_BATCH_RETRIEVE_REVISIONID = 300
 
 def get_gitc_manifest_dir():
@@ -54,7 +56,11 @@ def _set_project_revisions(projects):
     if gitcmd.Wait():
       print('FATAL: Failed to retrieve revisionExpr for %s' % proj)
       sys.exit(1)
-    proj.revisionExpr = gitcmd.stdout.split('\t')[0]
+    revisionExpr = gitcmd.stdout.split('\t')[0]
+    if not revisionExpr:
+      raise(ManifestParseError('Invalid SHA-1 revision project %s (%s)' %
+                               (proj.remote.url, proj.revisionExpr)))
+    proj.revisionExpr = revisionExpr
 
 def _manifest_groups(manifest):
   """Returns the manifest group string that should be synced