summaryrefslogtreecommitdiff
path: root/subcmds/forall.py
diff options
context:
space:
mode:
authorLaMont Jones <lamontjones@google.com>2022-04-12 23:33:59 +0000
committerLaMont Jones <lamontjones@google.com>2022-04-14 14:31:47 +0000
commitd8de29c4472e2f744a1bed37d7ec8710b1feebb8 (patch)
tree116c796b8272e056d377fde5eca123ecc8a1cb0c /subcmds/forall.py
parent2cc3ab7663ae867c6103bcf5c90a8e9e7999c15e (diff)
downloadgit-repo-d8de29c4472e2f744a1bed37d7ec8710b1feebb8.tar.gz
git-repo-d8de29c4472e2f744a1bed37d7ec8710b1feebb8.zip
forall: fix multi-manifest variables.
- REPO_PATH is relative to the root of the client. REPO_OUTERPATH is not needed. - REPO_INNERPATH is relative to the sub manifest root. - REPO_OUTERPATH is the path for the sub manifest root relative to the root of the client. Change-Id: I031692891cfef2634d1358584d27a6a4df735c20 Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/334899 Reviewed-by: Mike Frysinger <vapier@google.com> Tested-by: LaMont Jones <lamontjones@google.com>
Diffstat (limited to 'subcmds/forall.py')
-rw-r--r--subcmds/forall.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/subcmds/forall.py b/subcmds/forall.py
index cc578b522..f9f34e332 100644
--- a/subcmds/forall.py
+++ b/subcmds/forall.py
@@ -84,6 +84,11 @@ REPO_PROJECT is set to the unique name of the project.
REPO_PATH is the path relative the the root of the client.
+REPO_OUTERPATH is the path of the sub manifest's root relative to the root of
+the client.
+
+REPO_INNERPATH is the path relative to the root of the sub manifest.
+
REPO_REMOTE is the name of the remote system from the manifest.
REPO_LREV is the name of the revision from the manifest, translated
@@ -290,8 +295,9 @@ def DoWork(project, mirror, opt, cmd, shell, cnt, config):
env[name] = val
setenv('REPO_PROJECT', project.name)
- setenv('REPO_PATH', project.relpath)
- setenv('REPO_OUTERPATH', project.RelPath(local=opt.this_manifest_only))
+ setenv('REPO_OUTERPATH', project.manifest.path_prefix)
+ setenv('REPO_INNERPATH', project.relpath)
+ setenv('REPO_PATH', project.RelPath(local=opt.this_manifest_only))
setenv('REPO_REMOTE', project.remote.name)
try:
# If we aren't in a fully synced state and we don't have the ref the manifest