Only run yum install once per package block

before we would get this:
yum install a
yum install a b
yum install a b c

Now we just get
yum install a b c

Change-Id: I2067922ab03de9488a0cd4e08c8d44c00296cd6a
Closes-bug: #1235796
This commit is contained in:
Angus Salkeld 2013-11-01 17:13:18 +11:00
parent 8cbb79aff2
commit 090a5a9f4f
2 changed files with 9 additions and 8 deletions

View File

@ -429,10 +429,10 @@ class PackagesHandler(object):
installs.append(pkg)
elif rc > 0:
downgrades.append(pkg)
if installs:
RpmHelper.install(installs, rpms=False)
if downgrades:
RpmHelper.downgrade(downgrades)
if installs:
RpmHelper.install(installs, rpms=False)
if downgrades:
RpmHelper.downgrade(downgrades)
def _handle_rpm_packages(self, packages):
"""Handle installation, upgrade, or downgrade of packages via rpm.

View File

@ -87,10 +87,11 @@ class TestPackages(MockPopenTestCase):
'yum -y --showduplicates list available %s' % pack]) \
.AndReturn(FakePOpen(returncode=0))
install_list.append(pack)
self.mock_cmd_run(
['su', 'root', '-c',
'yum -y install %s' % ' '.join(install_list)]) \
.AndReturn(FakePOpen(returncode=0))
self.mock_cmd_run(
['su', 'root', '-c',
'yum -y install %s' % ' '.join(install_list)]) \
.AndReturn(FakePOpen(returncode=0))
self.m.ReplayAll()
packages = {