]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
ceph: fix mkfs -f bug
authorSage Weil <sage@redhat.com>
Tue, 31 Mar 2015 04:11:35 +0000 (21:11 -0700)
committerSage Weil <sage@redhat.com>
Tue, 31 Mar 2015 14:56:53 +0000 (07:56 -0700)
Pass -f by default to btrfs instead of first trying without and *then*
trying with.

Among other things, this avoids a confusing failure where we try mkfs.ext4
device (no -f), fail for some reason, and then try again with -f and get
a usage error (-f does not mean force for mke2fs).

Signed-off-by: Sage Weil <sage@redhat.com>
tasks/ceph.py

index 6de4702916929b007b604f2eca58391d74f25e02..fbe955dfc7d5e52f6dd0fd3c43af8f87b6cf5531 100644 (file)
@@ -529,7 +529,8 @@ def cluster(ctx, config):
                     if mount_options is None:
                         mount_options = ['noatime','user_subvol_rm_allowed']
                     if mkfs_options is None:
-                        mkfs_options = ['-m', 'single',
+                        mkfs_options = ['-f',
+                                        '-m', 'single',
                                         '-l', '32768',
                                         '-n', '32768']
                 if fs == 'xfs':
@@ -557,15 +558,7 @@ def cluster(ctx, config):
                         stdout=StringIO(),
                         )
 
-                try:
-                    remote.run(args= ['yes', run.Raw('|')] + ['sudo'] + mkfs + [dev])
-                except run.CommandFailedError:
-                    # Newer btfs-tools doesn't prompt for overwrite, use -f
-                    if '-f' not in mount_options:
-                        mkfs_options.append('-f')
-                        mkfs = ['mkfs.%s' % fs] + mkfs_options
-                        log.info('%s on %s on %s' % (mkfs, dev, remote))
-                    remote.run(args= ['yes', run.Raw('|')] + ['sudo'] + mkfs + [dev])
+                remote.run(args= ['yes', run.Raw('|')] + ['sudo'] + mkfs + [dev])
 
                 log.info('mount %s on %s -o %s' % (dev, remote,
                                                    ','.join(mount_options)))