cc_growpart: prefer growpart over parted 'resizepart'

the resizepart code was not functional.
We will re-favor it later under bug 1212492.

For now, we'll just favor the 'growpart' resizer.
Both will be found in Ubuntu cloud images.
This commit is contained in:
Scott Moser 2013-08-14 21:31:54 -04:00
parent c2268e6aaf
commit 2c9053ccc0
2 changed files with 7 additions and 2 deletions

View File

@ -96,7 +96,7 @@ class ResizeParted(object):
def resize(self, diskdev, partnum, partdev): def resize(self, diskdev, partnum, partdev):
before = get_size(partdev) before = get_size(partdev)
try: try:
util.subp(["parted", "resizepart", diskdev, partnum]) util.subp(["parted", diskdev, "resizepart", partnum])
except util.ProcessExecutionError as e: except util.ProcessExecutionError as e:
raise ResizeFailedException(e) raise ResizeFailedException(e)
@ -272,4 +272,6 @@ def handle(_name, cfg, _cloud, log, _args):
else: else:
log.debug("'%s' %s: %s" % (entry, action, msg)) log.debug("'%s' %s: %s" % (entry, action, msg))
RESIZERS = (('parted', ResizeParted), ('growpart', ResizeGrowPart)) # LP: 1212444 FIXME re-order and favor ResizeParted
#RESIZERS = (('growpart', ResizeGrowPart),)
RESIZERS = (('growpart', ResizeGrowPart), ('parted', ResizeParted))

View File

@ -9,6 +9,7 @@ import errno
import logging import logging
import os import os
import re import re
import unittest
# growpart: # growpart:
# mode: auto # off, on, auto, 'growpart', 'parted' # mode: auto # off, on, auto, 'growpart', 'parted'
@ -121,6 +122,7 @@ class TestConfig(MockerTestCase):
# Order must be correct # Order must be correct
self.mocker.order() self.mocker.order()
@unittest.skip("until LP: #1212444 fixed")
def test_no_resizers_auto_is_fine(self): def test_no_resizers_auto_is_fine(self):
subp = self.mocker.replace(util.subp, passthrough=False) subp = self.mocker.replace(util.subp, passthrough=False)
subp(['parted', '--help'], env={'LANG': 'C'}) subp(['parted', '--help'], env={'LANG': 'C'})
@ -142,6 +144,7 @@ class TestConfig(MockerTestCase):
self.assertRaises(ValueError, self.handle, self.name, config, self.assertRaises(ValueError, self.handle, self.name, config,
self.cloud_init, self.log, self.args) self.cloud_init, self.log, self.args)
@unittest.skip("until LP: #1212444 fixed")
def test_mode_auto_prefers_parted(self): def test_mode_auto_prefers_parted(self):
subp = self.mocker.replace(util.subp, passthrough=False) subp = self.mocker.replace(util.subp, passthrough=False)
subp(['parted', '--help'], env={'LANG': 'C'}) subp(['parted', '--help'], env={'LANG': 'C'})