diff options
author | Raman Tenneti <rtenneti@google.com> | 2021-03-04 10:29:40 -0800 |
---|---|---|
committer | Raman Tenneti <rtenneti@google.com> | 2021-03-04 20:07:52 +0000 |
commit | ef99ec07b4687cef0129057b81c0c1ebd21bb640 (patch) | |
tree | 86a2e87156f795e631097cc922c9757dbaf1cf7f /subcmds/init.py | |
parent | 934cb0a849d0bf22e2ae64cd6c3e93334d05e3ab (diff) | |
download | git-repo-ef99ec07b4687cef0129057b81c0c1ebd21bb640.tar.gz |
superproject: Display status messages during repo init/sync.v2.13.3
Superproject objects accept the optional argument “quiet”.
The following progress messages are displayed if quiet is false.
Displayed the following message whenever we find we have to make a new
folder (aka new remote), because if you started with repo init android
and later do googleplex-android that is when it will be slow.
"<location>: Performing initial setup for superproject; this might take
several minutes.".
After fetch completion, added the following notification:
"<location>: Initial setup for superproject completed."
Tested the code with the following commands.
$ ./run_tests -v
Tested the sync code by using repo_dev alias and pointing to this CL.
$ repo_dev init -u persistent-https://googleplex-android.git.corp.google.com/platform/manifest -b rvc-dev --partial-clone --clone-filter=blob:limit=10M --repo-rev=main --use-superproject
Bug: [google internal] b/181178282
Bug: https://crbug.com/gerrit/13707
Change-Id: Ia7fb85c6fb934faaa90c48fc0c55e7f41055f48a
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/299122
Reviewed-by: Mike Frysinger <vapier@google.com>
Tested-by: Raman Tenneti <rtenneti@google.com>
Diffstat (limited to 'subcmds/init.py')
-rw-r--r-- | subcmds/init.py | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/subcmds/init.py b/subcmds/init.py index fc446045..c2376b65 100644 --- a/subcmds/init.py +++ b/subcmds/init.py | |||
@@ -185,10 +185,15 @@ to update the working directory files. | |||
185 | return {'REPO_MANIFEST_URL': 'manifest_url', | 185 | return {'REPO_MANIFEST_URL': 'manifest_url', |
186 | 'REPO_MIRROR_LOCATION': 'reference'} | 186 | 'REPO_MIRROR_LOCATION': 'reference'} |
187 | 187 | ||
188 | def _CloneSuperproject(self): | 188 | def _CloneSuperproject(self, opt): |
189 | """Clone the superproject based on the superproject's url and branch.""" | 189 | """Clone the superproject based on the superproject's url and branch. |
190 | |||
191 | Args: | ||
192 | opt: Program options returned from optparse. See _Options(). | ||
193 | """ | ||
190 | superproject = git_superproject.Superproject(self.manifest, | 194 | superproject = git_superproject.Superproject(self.manifest, |
191 | self.repodir) | 195 | self.repodir, |
196 | quiet=opt.quiet) | ||
192 | if not superproject.Sync(): | 197 | if not superproject.Sync(): |
193 | print('error: git update of superproject failed', file=sys.stderr) | 198 | print('error: git update of superproject failed', file=sys.stderr) |
194 | sys.exit(1) | 199 | sys.exit(1) |
@@ -553,7 +558,7 @@ to update the working directory files. | |||
553 | self._LinkManifest(opt.manifest_name) | 558 | self._LinkManifest(opt.manifest_name) |
554 | 559 | ||
555 | if self.manifest.manifestProject.config.GetBoolean('repo.superproject'): | 560 | if self.manifest.manifestProject.config.GetBoolean('repo.superproject'): |
556 | self._CloneSuperproject() | 561 | self._CloneSuperproject(opt) |
557 | 562 | ||
558 | if os.isatty(0) and os.isatty(1) and not self.manifest.IsMirror: | 563 | if os.isatty(0) and os.isatty(1) and not self.manifest.IsMirror: |
559 | if opt.config_name or self._ShouldConfigureUser(opt): | 564 | if opt.config_name or self._ShouldConfigureUser(opt): |