From b55769a5c9422e0aac532e901a4d7b5af834b34d Mon Sep 17 00:00:00 2001 From: Raman Tenneti Date: Fri, 13 Aug 2021 11:47:24 -0700 Subject: superproject: print messages if the manifest has superproject tag. 1) If the manifest has superproject tag (git_master, etc), then display error/warning messages (as it is doing today) 2) If the manifest doesn't have superproject tag (nest, chromeos manifests), then don't display any error/warning messages about superrproject (behave as though user has specified --no-use-superproject). 3) Print error/warning messages if --use-superproject passed as argument to repo sync. 4) No change in behavior for the repo init command. git_superproject.py: + Fixed typo in _WriteManifestFile method name + Superproject accepts print_message as an argument and it defaults to True. All messages that are printed to stderr are controlled by this flag. If it is True, then messages get printed. + Added PrintMessages function which return true if either --use-superproject is specified on the command line or if the manifest has a superproject tag. sync.py: + Displays the warning message if PrintMessgages are enabled and passes that as argument to superproject object. + Added 'hassuperprojecttag' trace2 log entry for analysis. We can find users/branches that are using superproject, but the manifest is missing the superproject tag. Tested: $ ./run_tests + Verified printing of messages with and without superproject tag, with with --use-superproject option. + aosp-master $ repo_dev init --use-superproject -u https://android.googlesource.com/platform/manifest $ repo_dev sync + A manifest without superproject tag. $ repo_dev init -m $(pwd)/manifest_7482982.xml $ repo_dev sync -n -c -j32 -m $(pwd)/manifest_7482982.xml Bug: [google internal] b/196411099 Change-Id: I92166dcad15a4129fab82edcf869e7c8db3efd4b Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/314982 Reviewed-by: Xin Li Tested-by: Raman Tenneti --- tests/test_git_superproject.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tests/test_git_superproject.py') diff --git a/tests/test_git_superproject.py b/tests/test_git_superproject.py index 6ff81843..e9b824d6 100644 --- a/tests/test_git_superproject.py +++ b/tests/test_git_superproject.py @@ -203,7 +203,7 @@ class SuperprojectTestCase(unittest.TestCase): project.SetRevisionId('ABCDEF') # Create temporary directory so that it can write the file. os.mkdir(self._superproject._superproject_path) - manifest_path = self._superproject._WriteManfiestFile() + manifest_path = self._superproject._WriteManifestFile() self.assertIsNotNone(manifest_path) with open(manifest_path, 'r') as fp: manifest_xml_data = fp.read() -- cgit v1.2.3-54-g00ecf