Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(136)

Unified Diff: chromite

Issue 7484062: Update chromite wrapper (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/depot_tools/
Patch Set: '' Created 9 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cbuildbot ('k') | chromite_wrapper » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chromite
===================================================================
--- chromite (revision 93425)
+++ chromite (working copy)
@@ -1,84 +1 @@
-#!/usr/bin/python
-# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Wrapper for the chromite shell.
-
-This script is intended to run in several ways:
-- Outside the chroot, it should be _copied_ to someplace that is in the
- path (like depot_tools). It will search for the right chromite by looking
- for a file 'chromite/shell/main.py' upward based on the CWD.
-- Inside the chroot, it might be _either_ copied to someplace in the path (since
- depot_tools is in the path in the chroot) or it might run from chromite/bin
- directly, which should be in the PATH. In any case, we'll look for the
- real 'chromite/shell/main.py' based on the environment variable
- CROS_WORKON_SRCROOT, so it doesn't matter what the CWD is.
-
-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.
-
-"""
-
-# Python imports.
-import os
-import sys
-
-def Search(path):
- """Return an iterator of lists of places to look for chromite."""
-
- if os.path.exists('/etc/debian_chroot'):
- # We're in the chroot. Chromite should be in the python path inside the
- # chroot, so we don't do any searching. NOTE that we purposely don't want
- # CROS_WORKON_SRCROOT in the python path.
- yield []
- else:
- # Look in $CROS_WORKON_SRCROOT first. The idea is that a user would set
- # this manually if they wanted to specify a particular version of chromite.
- if 'CROS_WORKON_SRCROOT' in os.environ:
- yield [os.environ['CROS_WORKON_SRCROOT']]
-
- # Search upward until we either end up with a blank dir or the "parent" dir
- # doesn't change.
- prev_path = None
- while path and path != prev_path:
- yield [path]
- path, prev_path = os.path.dirname(path), path
-
-
-for path in Search(os.getcwd()):
- sys.path = path + sys.path
- try:
- import chromite.shell.main
- break
- except ImportError, e:
- # Just in case there is actually something wrong with Chromite, print
- # a sensible error. We match only the end of the string so that we can
- # handle an error within the chromite directory.
- # The full error is 'No module named (chromite.)shell.main'
- # Note: If you hit the directory containing chromite on the way up, then
- # the error will be 'No module named shell.main' so we must check only the
- # shell.main part.
- if not str(e).endswith('shell.main'):
- raise
-
- # We've got different modules named chromite in the tree, pulling in the
- # wrong one will break the right one. So unload it.
- if 'chromite' in sys.modules:
- del sys.modules['chromite']
- sys.path = sys.path[len(path):]
-else:
- # TODO(dianders): Should we actually print out the 'repo init' call that
- # the user should use?
- sys.stderr.write(
- "ERROR: Couldn't find the chromite tool.\n"
- "\n"
- "Please change to a directory inside your Chromium OS source tree\n"
- "and retry. If you need to setup a Chromium OS source tree, see:\n"
- " http://www.chromium.org/chromium-os/developer-guide\n")
- sys.exit(1)
-
-chromite.shell.main.main()
+link chromite_wrapper
Property changes on: chromite
___________________________________________________________________
Added: svn:special
+ *
« no previous file with comments | « cbuildbot ('k') | chromite_wrapper » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698