Drop RunCommand usage, access subprocess.Popen directly.
BUG=chromium-os:26795
TEST=None
Change-Id: I229424d7a42a96edb112a3f9cca3f13cc164f831
Reviewed-on: https://gerrit.chromium.org/gerrit/16722
Reviewed-by: Scott Zawalski <scottz@chromium.org>
Commit-Ready: Brian Harring <ferringb@chromium.org>
Tested-by: Brian Harring <ferringb@chromium.org>
diff --git a/devserver_util.py b/devserver_util.py
index e36ad63..3a48d53 100644
--- a/devserver_util.py
+++ b/devserver_util.py
@@ -12,8 +12,6 @@
import sys
import constants
-sys.path.append(constants.SOURCE_ROOT)
-from chromite.lib import cros_build_lib
AU_BASE = 'au'
@@ -84,11 +82,15 @@
cmd = 'gsutil ls %s/*.bin' % archive_url
msg = 'Failed to get a list of payloads.'
try:
- result = cros_build_lib.RunCommand(cmd, shell=True, redirect_stdout=True,
- error_message=msg)
- except cros_build_lib.RunCommandError, e:
- raise DevServerUtilError(str(e))
- payload_list = result.output.splitlines()
+ proc = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE)
+ stdout, stderr = proc.communicate()
+ if proc.returncode != 0:
+ raise DevServerUtilError('%s nonzero exit code: %i'
+ % (msg, proc.returncode))
+ except subprocess.CalledProcessError, e:
+ raise DevServerUtilError('%s %s' % (msg, e))
+
+ payload_list = stdout.splitlines()
full_payload_url, nton_payload_url, mton_payload_url = (
ParsePayloadList(payload_list))
@@ -113,9 +115,9 @@
cmd = 'gsutil cp %s %s' % (src, dest)
msg = 'Failed to download "%s".' % src
try:
- cros_build_lib.RunCommand(cmd, shell=True, error_message=msg)
- except cros_build_lib.RunCommandError, e:
- raise DevServerUtilError(str(e))
+ subprocess.check_call(cmd, shell=True)
+ except subprocess.CalledProcessError, e:
+ raise DevServerUtilError('%s %s' % (msg, e))
def InstallBuild(staging_dir, build_dir):
@@ -173,9 +175,9 @@
(os.path.join(staging_dir, AUTOTEST_PACKAGE), staging_dir))
msg = 'Failed to extract autotest.tar.bz2 ! Is pbzip2 installed?'
try:
- cros_build_lib.RunCommand(cmd, shell=True, error_message=msg)
- except cros_build_lib.RunCommandError, e:
- raise DevServerUtilError(str(e))
+ subprocess.check_call(cmd, shell=True)
+ except subprocess.CalledProcessError, e:
+ raise DevServerUtilError('%s %s' % (msg, e))
# Use the root of Autotest
autotest_pkgs_dir = os.path.join(staging_dir, 'autotest', 'packages')
@@ -185,10 +187,9 @@
'upload', '--repository', autotest_pkgs_dir, '--all']
msg = 'Failed to create autotest packages!'
try:
- cros_build_lib.RunCommand(' '.join(cmd_list), cwd=staging_dir, shell=True,
- error_message=msg)
- except cros_build_lib.RunCommandError, e:
- raise DevServerUtilError(str(e))
+ subprocess.check_call(' '.join(cmd_list), cwd=staging_dir, shell=True)
+ except subprocess.CalledProcessError, e:
+ raise DevServerUtilError('%s %s' % (msg, e))
def SafeSandboxAccess(static_dir, path):