summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--nova/tests/test_utils.py15
-rw-r--r--nova/utils.py24
2 files changed, 27 insertions, 12 deletions
diff --git a/nova/tests/test_utils.py b/nova/tests/test_utils.py
index 8b883f755..9ec0e85da 100644
--- a/nova/tests/test_utils.py
+++ b/nova/tests/test_utils.py
@@ -780,8 +780,23 @@ class MkfsTestCase(test.TestCase):
def test_mkfs(self):
self.mox.StubOutWithMock(utils, 'execute')
utils.execute('mkfs', '-t', 'ext4', '-F', '/my/block/dev')
+ utils.execute('mkfs', '-t', 'msdos', '/my/msdos/block/dev')
utils.execute('mkswap', '/my/swap/block/dev')
self.mox.ReplayAll()
utils.mkfs('ext4', '/my/block/dev')
+ utils.mkfs('msdos', '/my/msdos/block/dev')
utils.mkfs('swap', '/my/swap/block/dev')
+
+ def test_mkfs_with_label(self):
+ self.mox.StubOutWithMock(utils, 'execute')
+ utils.execute('mkfs', '-t', 'ext4', '-F',
+ '-L', 'ext4-vol', '/my/block/dev')
+ utils.execute('mkfs', '-t', 'msdos',
+ '-n', 'msdos-vol', '/my/msdos/block/dev')
+ utils.execute('mkswap', '-L', 'swap-vol', '/my/swap/block/dev')
+ self.mox.ReplayAll()
+
+ utils.mkfs('ext4', '/my/block/dev', 'ext4-vol')
+ utils.mkfs('msdos', '/my/msdos/block/dev', 'msdos-vol')
+ utils.mkfs('swap', '/my/swap/block/dev', 'swap-vol')
diff --git a/nova/utils.py b/nova/utils.py
index 398c620f8..d9ded16b6 100644
--- a/nova/utils.py
+++ b/nova/utils.py
@@ -1160,17 +1160,17 @@ def mkfs(fs, path, label=None):
:param label: Volume label to use
"""
if fs == 'swap':
- execute('mkswap', path)
+ args = ['mkswap']
else:
args = ['mkfs', '-t', fs]
- #add -F to force no interactive excute on non-block device.
- if fs in ('ext3', 'ext4'):
- args.extend(['-F'])
- if label:
- if fs in ('msdos', 'vfat'):
- label_opt = '-n'
- else:
- label_opt = '-L'
- args.extend([label_opt, label])
- args.append(path)
- execute(*args)
+ #add -F to force no interactive execute on non-block device.
+ if fs in ('ext3', 'ext4'):
+ args.extend(['-F'])
+ if label:
+ if fs in ('msdos', 'vfat'):
+ label_opt = '-n'
+ else:
+ label_opt = '-L'
+ args.extend([label_opt, label])
+ args.append(path)
+ execute(*args)