diff --git a/git_superproject.py b/git_superproject.py index 4ca84a5..237e57e 100644 --- a/git_superproject.py +++ b/git_superproject.py @@ -32,7 +32,6 @@ from typing import NamedTuple from git_command import git_require, GitCommand from git_config import RepoConfig from git_refs import R_HEADS -from manifest_xml import LOCAL_MANIFEST_GROUP_PREFIX _SUPERPROJECT_GIT_NAME = 'superproject.git' _SUPERPROJECT_MANIFEST_NAME = 'superproject_override.xml' @@ -311,7 +310,7 @@ class Superproject(object): if project.revisionId: return True # Skip the project if it comes from the local manifest. - return any(s.startswith(LOCAL_MANIFEST_GROUP_PREFIX) for s in project.groups) + return project.manifest.IsFromLocalManifest(project) def UpdateProjectsRevisionId(self, projects): """Update revisionId of every project in projects with the commit id. diff --git a/manifest_xml.py b/manifest_xml.py index daf85d3..7c5906d 100644 --- a/manifest_xml.py +++ b/manifest_xml.py @@ -650,6 +650,12 @@ https://gerrit.googlesource.com/git-repo/+/HEAD/docs/manifest-format.md def HasLocalManifests(self): return self._load_local_manifests and self.local_manifests + def IsFromLocalManifest(self, project): + """Is the project from a local manifest? + """ + return any(x.startswith(LOCAL_MANIFEST_GROUP_PREFIX) + for x in project.groups) + @property def IsMirror(self): return self.manifestProject.config.GetBoolean('repo.mirror')