Ejemplo n.º 1
0
def _Main(argv):
  opt = optparse.OptionParser(usage="repo wrapperinfo -- ...")
  opt.add_option("--repo-dir", dest="repodir",
                 help="path to .repo/")
  opt.add_option("--wrapper-version", dest="wrapper_version",
                 help="version of the wrapper script")
  opt.add_option("--wrapper-path", dest="wrapper_path",
                 help="location of the wrapper script")
  _PruneOptions(argv, opt)
  opt, argv = opt.parse_args(argv)

  _CheckWrapperVersion(opt.wrapper_version, opt.wrapper_path)
  _CheckRepoDir(opt.repodir)

  repo = _Repo(opt.repodir)
  try:
    try:
      repo._Run(argv)
    finally:
      close_ssh()
  except KeyboardInterrupt:
    sys.exit(1)
  except RepoChangedException, rce:
    # If repo changed, re-exec ourselves.
    #
    argv = list(sys.argv)
    argv.extend(rce.extra_args)
    try:
      os.execv(__file__, argv)
    except OSError, e:
      print >>sys.stderr, 'fatal: cannot restart repo after upgrade'
      print >>sys.stderr, 'fatal: %s' % e
      sys.exit(128)
Ejemplo n.º 2
0
def _Main(argv):
    result = 0

    opt = optparse.OptionParser(usage="repo wrapperinfo -- ...")
    opt.add_option("--repo-dir", dest="repodir", help="path to .repo/")
    opt.add_option("--wrapper-version",
                   dest="wrapper_version",
                   help="version of the wrapper script")
    opt.add_option("--wrapper-path",
                   dest="wrapper_path",
                   help="location of the wrapper script")
    _PruneOptions(argv, opt)
    opt, argv = opt.parse_args(argv)

    _CheckWrapperVersion(opt.wrapper_version, opt.wrapper_path)
    _CheckRepoDir(opt.repodir)

    Version.wrapper_version = opt.wrapper_version
    Version.wrapper_path = opt.wrapper_path

    repo = _Repo(opt.repodir)
    try:
        try:
            init_ssh()
            init_http()
            name, gopts, argv = repo._ParseArgs(argv)
            run = lambda: repo._Run(name, gopts, argv) or 0
            if gopts.trace_python:
                import trace
                tracer = trace.Trace(count=False,
                                     trace=True,
                                     timing=True,
                                     ignoredirs=set(sys.path[1:]))
                result = tracer.runfunc(run)
            else:
                result = run()
        finally:
            close_ssh()
    except KeyboardInterrupt:
        print('aborted by user', file=sys.stderr)
        result = 1
    except ManifestParseError as mpe:
        print('fatal: %s' % mpe, file=sys.stderr)
        result = 1
    except RepoChangedException as rce:
        # If repo changed, re-exec ourselves.
        #
        argv = list(sys.argv)
        argv.extend(rce.extra_args)
        try:
            os.execv(__file__, argv)
        except OSError as e:
            print('fatal: cannot restart repo after upgrade', file=sys.stderr)
            print('fatal: %s' % e, file=sys.stderr)
            result = 128

    TerminatePager()
    sys.exit(result)
Ejemplo n.º 3
0
def _Main(argv):
    result = 0

    opt = optparse.OptionParser(usage="repo wrapperinfo -- ...")
    opt.add_option("--repo-dir", dest="repodir", help="path to .repo/")
    opt.add_option("--wrapper-version",
                   dest="wrapper_version",
                   help="version of the wrapper script")
    opt.add_option("--wrapper-path",
                   dest="wrapper_path",
                   help="location of the wrapper script")
    _PruneOptions(argv, opt)
    opt, argv = opt.parse_args(argv)

    _CheckWrapperVersion(opt.wrapper_version, opt.wrapper_path)
    _CheckRepoDir(opt.repodir)

    Version.wrapper_version = opt.wrapper_version
    Version.wrapper_path = opt.wrapper_path

    repo = _Repo(opt.repodir)
    try:
        try:
            init_ssh()
            init_http()
            result = repo._Run(argv) or 0
        finally:
            close_ssh()
    except KeyboardInterrupt:
        print('aborted by user', file=sys.stderr)
        result = 1
    except ManifestParseError as mpe:
        print('fatal: %s' % mpe, file=sys.stderr)
        result = 1
    except RepoChangedException as rce:
        # If repo changed, re-exec ourselves.
        #
        argv = list(sys.argv)
        argv.extend(rce.extra_args)
        try:
            # os.execv(__file__, argv)
            result = subprocess.call([sys.executable] + argv)
        except OSError as e:
            print('fatal: cannot restart repo after upgrade', file=sys.stderr)
            print('fatal: %s' % e, file=sys.stderr)
            result = 128

    portable.WaitForProcess()
    sys.exit(result)
Ejemplo n.º 4
0
def _Main(argv):
  result = 0

  opt = optparse.OptionParser(usage="repo wrapperinfo -- ...")
  opt.add_option("--repo-dir", dest="repodir",
                 help="path to .repo/")
  opt.add_option("--wrapper-version", dest="wrapper_version",
                 help="version of the wrapper script")
  opt.add_option("--wrapper-path", dest="wrapper_path",
                 help="location of the wrapper script")
  _PruneOptions(argv, opt)
  opt, argv = opt.parse_args(argv)

  _CheckWrapperVersion(opt.wrapper_version, opt.wrapper_path)
  _CheckRepoDir(opt.repodir)

  Version.wrapper_version = opt.wrapper_version
  Version.wrapper_path = opt.wrapper_path

  repo = _Repo(opt.repodir)
  try:
    try:
      init_ssh()
      init_http()
      result = repo._Run(argv) or 0
    finally:
      close_ssh()
  except KeyboardInterrupt:
    print('aborted by user', file=sys.stderr)
    result = 1
  except ManifestParseError as mpe:
    print('fatal: %s' % mpe, file=sys.stderr)
    result = 1
  except RepoChangedException as rce:
    # If repo changed, re-exec ourselves.
    #
    argv = list(sys.argv)
    argv.extend(rce.extra_args)
    try:
      os.execv(__file__, argv)
    except OSError as e:
      print('fatal: cannot restart repo after upgrade', file=sys.stderr)
      print('fatal: %s' % e, file=sys.stderr)
      result = 128

  TerminatePager()
  sys.exit(result)
Ejemplo n.º 5
0
def _Main(argv):
    result = 0

    signal.signal(signal.SIGTERM, portable.terminateHandle)

    opt = optparse.OptionParser(usage="repo wrapperinfo -- ...")
    opt.add_option("--repo-dir", dest="repodir",
                   help="path to .repo/")
    opt.add_option("--wrapper-version", dest="wrapper_version",
                   help="version of the wrapper script")
    opt.add_option("--wrapper-path", dest="wrapper_path",
                   help="location of the wrapper script")

    _PruneOptions(argv, opt)
    opt, argv = opt.parse_args(argv)

    _CheckWrapperVersion(opt.wrapper_version, opt.wrapper_path)
    _CheckRepoDir(opt.repodir)

    Version.wrapper_version = opt.wrapper_version
    Version.wrapper_path = opt.wrapper_path

    repo = _Repo(opt.repodir)
    repo._Config(argv)

    gopts = repo.config[2]
    if gopts.debug:
        print("enter debug mode, host %s" % gopts.debug_host)
        _Debug(gopts.debug_host, gopts.debug_env)

    if gopts.debug:
        if portable.isPosix():
            # deactivate pager on posix systems since forked process cant be debugged
            os.environ['GIT_PAGER'] = ''

    # intercept here if on Windows and Pager is required
    if not portable.isPosix():
        if _WindowsPager(repo):
            # everything was already done; so exit
            return 0

    try:
        try:
            init_ssh()
            init_http()
            result = repo._Run() or 0
        finally:
            close_ssh()
    except KeyboardInterrupt:
        print('aborted by user', file=sys.stderr)
        result = 1
    except ManifestParseError as mpe:
        print('fatal: %s' % mpe, file=sys.stderr)
        result = 1
    except RepoChangedException as rce:
        # If repo changed, re-exec ourselves.
        #
        argv = list(sys.argv)
        argv.extend(rce.extra_args)
        argv = [sys.executable] + argv
        try:
            argv.insert(0, __file__)
            argv.insert(0, sys.executable)
            result = subprocess.call(argv)
        except OSError as e:
            print('fatal: cannot restart repo after upgrade', file=sys.stderr)
            print('fatal: %s' % e, file=sys.stderr)
            result = 128

    return result
Ejemplo n.º 6
0
def _Main(argv):
    result = 0

    signal.signal(signal.SIGTERM, portable.terminateHandle)

    opt = optparse.OptionParser(usage="repo wrapperinfo -- ...")
    opt.add_option("--repo-dir", dest="repodir", help="path to .repo/")
    opt.add_option("--wrapper-version",
                   dest="wrapper_version",
                   help="version of the wrapper script")
    opt.add_option("--wrapper-path",
                   dest="wrapper_path",
                   help="location of the wrapper script")

    _PruneOptions(argv, opt)
    opt, argv = opt.parse_args(argv)

    _CheckWrapperVersion(opt.wrapper_version, opt.wrapper_path)
    _CheckRepoDir(opt.repodir)

    Version.wrapper_version = opt.wrapper_version
    Version.wrapper_path = opt.wrapper_path

    repo = _Repo(opt.repodir)
    repo._Config(argv)

    gopts = repo.config[2]
    if gopts.debug:
        print("enter debug mode, host %s" % gopts.debug_host)
        _Debug(gopts.debug_host, gopts.debug_env)

    if gopts.debug:
        if portable.isPosix():
            # deactivate pager on posix systems since forked process cant be debugged
            os.environ['GIT_PAGER'] = ''

    # intercept here if on Windows and Pager is required
    if not portable.isPosix():
        if _WindowsPager(repo):
            # everything was already done; so exit
            return 0

    try:
        try:
            init_ssh()
            init_http()
            result = repo._Run() or 0
        finally:
            close_ssh()
    except KeyboardInterrupt:
        print('aborted by user', file=sys.stderr)
        result = 1
    except ManifestParseError as mpe:
        print('fatal: %s' % mpe, file=sys.stderr)
        result = 1
    except RepoChangedException as rce:
        # If repo changed, re-exec ourselves.
        #
        argv = list(sys.argv)
        argv.extend(rce.extra_args)
        argv = [sys.executable] + argv
        try:
            argv.insert(0, __file__)
            argv.insert(0, sys.executable)
            result = subprocess.call(argv)
        except OSError as e:
            print('fatal: cannot restart repo after upgrade', file=sys.stderr)
            print('fatal: %s' % e, file=sys.stderr)
            result = 128

    return result
Ejemplo n.º 7
0
      mgr.add_password(p[1], 'http://%s/'  % host, p[0], p[2])
      mgr.add_password(p[1], 'https://%s/' % host, p[0], p[2]) except netrc.NetrcParseError: pass except IOError: pass
  handlers.append(_BasicAuthHandler(mgr))
  handlers.append(_DigestAuthHandler(mgr))
  if kerberos: handlers.append(_KerberosAuthHandler())
  if 'http_proxy' in os.environ: url = os.environ['http_proxy']
    handlers.append(urllib.request.ProxyHandler({'http': url, 'https': url}))
  if 'REPO_CURL_VERBOSE' in os.environ: handlers.append(urllib.request.HTTPHandler(debuglevel=1))
    handlers.append(urllib.request.HTTPSHandler(debuglevel=1))
  urllib.request.install_opener(urllib.request.build_opener(*handlers))
def _Main(argv): result = 0
  opt = optparse.OptionParser(usage="re po wrapperinfo -- ...")
  opt.add_option("--repo-dir", dest="repodir", help="path to .re po/")
  opt.add_option("--wrapper-version", dest="wrapper_version", help="version of the wrapper script")
  opt.add_option("--wrapper-path", dest="wrapper_path", help="location of the wrapper script")
  _PruneOptions(argv, opt)
  opt, argv = opt.parse_args(argv)
  _CheckWrapperVersion(opt.wrapper_version, opt.wrapper_path)
  _CheckRepoDir(opt.repodir)
  Version.wrapper_version = opt.wrapper_version
  Version.wrapper_path = opt.wrapper_path
  repo = _Repo(opt.repodir)# If re po changed, re-exec ourselves.#
  try:
    try: init_ssh()   init_http()   result = repo._Run(argv) or 0         finally: close_ssh() except KeyboardInterrupt: print('aborted by user', file=sys.stderr) result = 1 except ManifestParseError as mpe: print('fatal: %s' % mpe, file=sys.stderr) result = 1
  except RepoChangedException as rce: argv = list(sys.argv)
    argv.extend(rce.extra_args)
    try: os.execv(__file__, argv) except OSError as e: print('fatal: cannot restart re po after upgrade', file=sys.stderr) print('fatal: %s' % e, file=sys.stderr) result = 128
  sys.exit(result)
if __name__ == '__main__':
  _Main(sys.argv[1:])