From 78f4dd3138b774dfea9d789d7324b8857f5a1a58 Mon Sep 17 00:00:00 2001 From: Raman Tenneti Date: Mon, 7 Jun 2021 13:27:37 -0700 Subject: superproject: add projects from local manifest to local:: group. With repo sync --use-superproject, don't update the commit ids of every project that comes from local manifest. Tested the code with the following commands. $ ./run_tests -v + Test with local.xml 1. repo init --use-superproject -u persistent-https://googleplex-android.git.corp.google.com/a/platform/manifest 2. cd .repo cp -r /google/src/head/depot/google3/wireless/android/build_tools/translations/pipeline/local_manifests local_manifests cd .. local$ time repo_dev sync --use-superproject NOTICE: --use-superproject is in beta; report any issues to the address described in `repo version` .../local/.repo/exp-superproject/feb2c2847da5e274f3d530d5ab438af8-superproject.git: Initial setup for superproject completed. ... Bug: [google internal] b/189360443 Bug: [google internal] b/189139268 Bug: https://crbug.com/gerrit/14499 Change-Id: Ideaf268c294e9b500b2b9726ffbd733dd8d63004 Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/308822 Tested-by: Raman Tenneti Reviewed-by: Mike Frysinger Reviewed-by: Jonathan Nieder --- manifest_xml.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'manifest_xml.py') diff --git a/manifest_xml.py b/manifest_xml.py index 9cbdcd18..30e96584 100644 --- a/manifest_xml.py +++ b/manifest_xml.py @@ -34,6 +34,9 @@ MANIFEST_FILE_NAME = 'manifest.xml' LOCAL_MANIFEST_NAME = 'local_manifest.xml' LOCAL_MANIFESTS_DIR_NAME = 'local_manifests' +# Add all projects from local manifest into a group. +LOCAL_MANIFEST_GROUP_PREFIX = 'local:' + # ContactInfo has the self-registered bug url, supplied by the manifest authors. ContactInfo = collections.namedtuple('ContactInfo', 'bugurl') @@ -679,7 +682,9 @@ https://gerrit.googlesource.com/git-repo/+/HEAD/docs/manifest-format.md # Since local manifests are entirely managed by the user, allow # them to point anywhere the user wants. nodes.append(self._ParseManifestXml( - local, self.repodir, restrict_includes=False)) + local, self.repodir, + parent_groups=f'{LOCAL_MANIFEST_GROUP_PREFIX}:{local_file[:-4]}', + restrict_includes=False)) except OSError: pass -- cgit v1.2.3-54-g00ecf