forall: Silently skip missing projects
If a project is missing locally, it might be OK to skip over it
and continue running the same command in other projects.
Bug: REPO-43
Change-Id: I64f97eb315f379ab2c51fc53d24ed340b3d09250
Signed-off-by: Shawn O. Pearce <sop@google.com>
(cherry picked from commit d4cd69bdef28c5a9287c85c48a18ce621eba689d)
diff --git a/subcmds/forall.py b/subcmds/forall.py
index 8209c80..d3e70ae 100644
--- a/subcmds/forall.py
+++ b/subcmds/forall.py
@@ -169,6 +169,12 @@
else:
cwd = project.worktree
+ if not os.path.exists(cwd):
+ if (opt.project_header and opt.verbose) \
+ or not opt.project_header:
+ print >>sys.stderr, 'skipping %s/' % project.relpath
+ continue
+
if opt.project_header:
stdin = subprocess.PIPE
stdout = subprocess.PIPE