gerrit: deps: support *12345 syntax

BUG=None
TEST=`gerrit deps 516323` is able to cross to internal GoB

Change-Id: I8daea3e94bf15dbb8926f7c81f4dd7202262704c
Reviewed-on: https://chromium-review.googlesource.com/579950
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Paul Hobbs <phobbs@google.com>
Reviewed-by: Allen Li <ayatane@chromium.org>
diff --git a/scripts/gerrit.py b/scripts/gerrit.py
index 7932b33..371aef6 100644
--- a/scripts/gerrit.py
+++ b/scripts/gerrit.py
@@ -292,8 +292,8 @@
   cls = _Query(opts, query, raw=False)
 
   @cros_build_lib.Memoize
-  def _QueryChange(cl):
-    return _Query(opts, cl, raw=False)
+  def _QueryChange(cl, helper=None):
+    return _Query(opts, cl, raw=False, helper=helper)
 
   def _Children(cl):
     """Returns the Gerrit and CQ-Depends dependencies of a patch"""
@@ -301,8 +301,13 @@
     direct_deps = cl.GerritDependencies() + cq_deps
     # We need to query the change to guarantee that we have a .gerrit_number
     for dep in direct_deps:
+      if not dep.remote in opts.gerrit:
+        opts.gerrit[dep.remote] = gerrit.GetGerritHelper(
+            remote=dep.remote, print_cmd=opts.debug)
+      helper = opts.gerrit[dep.remote]
+
       # TODO(phobbs) this should maybe catch network errors.
-      change = _QueryChange(dep.ToGerritQueryText())[-1]
+      change = _QueryChange(dep.ToGerritQueryText(), helper=helper)[-1]
       if change.status == 'NEW':
         yield change