diff --git a/support/chromite_wrapper b/support/chromite_wrapper index a03a2605a..8c37ef1c7 100755 --- a/support/chromite_wrapper +++ b/support/chromite_wrapper @@ -10,24 +10,11 @@ to find the path for chromite, and hands off to the right tool via exec if possible. It is intended to used strictly outside of the chroot. - -If you're looking at a copy and want to know where the original looks at, look -here: - http://git.chromium.org/gitweb/?p=chromite.git;a=blob;f=bin/chromite - -Since this script is _copied_, it should remain small and not use internal libs. - """ -import errno import os import sys -# Due to historical reasons, and the fact depot_tools ToT is used by older -# factory branches (lacking chromite script cleanups), note we have to -# fallback to some odd import locations. This is the only reason for the -# fallback code- any/all new scripts symlinked to this script *must* exist -# in chromite/bin/ . def _FindChromite(path): """Find the chromite dir in a repo, gclient, or submodule checkout.""" @@ -35,9 +22,9 @@ def _FindChromite(path): # Depending on the checkout type (whether repo chromeos or gclient chrome) # Chromite lives in a different location. roots = ( - ('.repo', 'chromite/.git'), - ('.gclient', 'src/third_party/chromite/.git'), - ('src/.gitmodules', 'src/third_party/chromite/.git'), + ('.repo', 'chromite/.git'), + ('.gclient', 'src/third_party/chromite/.git'), + ('src/.gitmodules', 'src/third_party/chromite/.git'), ) while path != '/': @@ -50,12 +37,11 @@ def _FindChromite(path): def _MissingErrorOut(target): - sys.stderr.write( -"""ERROR: Couldn't find the chromite tool %s. + sys.stderr.write("""ERROR: Couldn't find the chromite tool %s. Please change to a directory inside your Chromium OS source tree and retry. If you need to setup a Chromium OS source tree, see - http://www.chromium.org/chromium-os/developer-guide + https://chromium.googlesource.com/chromiumos/docs/+/HEAD/developer_guide.md """ % target) return 127 @@ -67,30 +53,8 @@ def main(): return _MissingErrorOut(target) path = os.path.join(chromite_dir, 'bin', target) - try: - os.execv(path, [path] + sys.argv[1:]) - except EnvironmentError as e: - if e.errno not in (errno.ENOENT, errno.EPERM): - raise - - # Reaching here means it's either a bad target, or we're working against - # an old (pre 6be2efcf5bb575b03862113eec097c44d8d7f93e) revision of - # chromite. Fallback to trying to import it; this code works at least as - # far back as branch 0.11.241.B; likely further. + os.execv(path, [path] + sys.argv[1:]) - if target == 'cbuildbot': - target = 'chromite.buildbot.cbuildbot' - else: - target = 'chromite.bin.%s' % (target,) - - # Adjust the path importation so we can import our our target. - sys.path.insert(0, os.path.dirname(chromite_dir)) - - try: - module = __import__(target, fromlist=['main']) - except ImportError: - return _MissingErrorOut(target) - return module.main() if __name__ == '__main__': sys.exit(main())