]> review.fuel-infra Code Review - openstack-build/heat-build.git/commitdiff
Fix apt-get install
authorSteven Dake <sdake@redhat.com>
Wed, 30 May 2012 21:49:27 +0000 (14:49 -0700)
committerSteven Dake <sdake@redhat.com>
Thu, 31 May 2012 03:11:14 +0000 (20:11 -0700)
rpm deps not available on ubuntu systems
fix apt-get install doesn't work (string vs list)

Change-Id: Ic2da1415f9bccb15321afd0ed5111041cbf2a2d0
Signed-off-by: Steven Dake <sdake@redhat.com>
heat/cfntools/cfn_helper.py

index 11a8349c9736ef192cfb03fc8561c20376a1b270..0fe56b7d242228123b6cfc310ad3e68b7b49a007 100644 (file)
@@ -37,8 +37,12 @@ import logging
 import os
 import os.path
 import pwd
-import rpmUtils.updates as rpmupdates
-import rpmUtils.miscutils as rpmutils
+try:
+    import rpmUtils.updates as rpmupdates
+    import rpmUtils.miscutils as rpmutils
+    rpmutils_present = True
+except:
+    rpmutils_present = False
 import subprocess
 import sys
 from urllib2 import urlopen, Request
@@ -192,7 +196,8 @@ class CommandRunner(object):
 
 class RpmHelper(object):
 
-    _rpm_util = rpmupdates.Updates([], [])
+    if rpmutils_present:
+        _rpm_util = rpmupdates.Updates([], [])
 
     @classmethod
     def prepcache(cls):
@@ -461,11 +466,9 @@ class PackagesHandler(object):
         very basic support for apt
         """
         # TODO(asalkeld) support versions
-        pkg_str = ''
-        for pkg_name, versions in packages.iteritems():
-            pkg_str.append(' %s ' % pkg_name)
+        pkg_list = ' '.join([p for p in packages])
 
-        cmd_str = 'apt-get -y %s' % (pkg_str)
+        cmd_str = 'apt-get -y install %s' % pkg_list
         CommandRunner(cmd_str).run()
 
     # map of function pionters to handle different package managers