mirror of https://git.48k.eu/ogclient
utils: fs: error out if mkfs fails
If formatting fails, log shows: mkfs.ntfs reports return code 1 for /dev/sda2 but ogclient reports success to the ogserver. Raise an exception so front-end gets an indication that formatting has failed.master
parent
59fa3bb120
commit
2c10b4c92a
|
@ -429,9 +429,12 @@ class OgLiveOperations:
|
|||
|
||||
partition = int(part["partition"])
|
||||
if fs == 'cache':
|
||||
mkfs('ext4', int(disk), partition, label='CACHE')
|
||||
err = mkfs('ext4', int(disk), partition, label='CACHE')
|
||||
else:
|
||||
mkfs(fs, int(disk), partition)
|
||||
err = mkfs(fs, int(disk), partition)
|
||||
|
||||
if err == -1:
|
||||
raise OgError(f'Failed to format {part["partition"]} with filesystem {part["filesystem"]}')
|
||||
|
||||
ret = subprocess.run(['partprobe', f'/dev/{diskname}'])
|
||||
logging.info(f'second partprobe /dev/{diskname} reports {ret.returncode}')
|
||||
|
|
|
@ -165,10 +165,11 @@ def mkfs(fs, disk, partition, label=None):
|
|||
except ValueError as e:
|
||||
raise OgError(f'mkfs aborted: {e}') from e
|
||||
|
||||
fsdict[fs](partdev, label)
|
||||
return fsdict[fs](partdev, label)
|
||||
|
||||
|
||||
def mkfs_ext4(partdev, label=None):
|
||||
err = -1
|
||||
if label:
|
||||
cmd = shlex.split(f'mkfs.ext4 -L {label} -F {partdev}')
|
||||
else:
|
||||
|
@ -177,12 +178,15 @@ def mkfs_ext4(partdev, label=None):
|
|||
ret = subprocess.run(cmd,
|
||||
stdout=logfile,
|
||||
stderr=STDOUT)
|
||||
|
||||
err = ret.returncode
|
||||
if ret.returncode != 0:
|
||||
logging.error(f'mkfs.ext4 reports return code {ret.returncode} for {partdev}')
|
||||
|
||||
return err
|
||||
|
||||
|
||||
def mkfs_ntfs(partdev, label=None):
|
||||
err = -1
|
||||
if label:
|
||||
cmd = shlex.split(f'mkfs.ntfs -f -L {label} {partdev}')
|
||||
else:
|
||||
|
@ -191,12 +195,15 @@ def mkfs_ntfs(partdev, label=None):
|
|||
ret = subprocess.run(cmd,
|
||||
stdout=logfile,
|
||||
stderr=STDOUT)
|
||||
|
||||
err = ret.returncode
|
||||
if ret.returncode != 0:
|
||||
logging.error(f'mkfs.ntfs reports return code {ret.returncode} for {partdev}')
|
||||
|
||||
return err
|
||||
|
||||
|
||||
def mkfs_fat32(partdev, label=None):
|
||||
err = -1
|
||||
if label:
|
||||
cmd = shlex.split(f'mkfs.vfat -n {label} -F32 {partdev}')
|
||||
else:
|
||||
|
@ -205,12 +212,15 @@ def mkfs_fat32(partdev, label=None):
|
|||
ret = subprocess.run(cmd,
|
||||
stdout=logfile,
|
||||
stderr=STDOUT)
|
||||
|
||||
err = ret.returncode
|
||||
if ret.returncode != 0:
|
||||
logging.error(f'mkfs.vfat reports return code {ret.returncode} for {partdev}')
|
||||
|
||||
return err
|
||||
|
||||
|
||||
def mkfs_swap(partdev, label=None):
|
||||
err = -1
|
||||
if label:
|
||||
cmd = shlex.split(f'mkswap -f -L {label} {partdev}')
|
||||
else:
|
||||
|
@ -219,10 +229,12 @@ def mkfs_swap(partdev, label=None):
|
|||
ret = subprocess.run(cmd,
|
||||
stdout=logfile,
|
||||
stderr=STDOUT)
|
||||
|
||||
err = ret.returncode
|
||||
if ret.returncode != 0:
|
||||
logging.error(f'mkswap reports return code {ret.returncode} for {partdev}')
|
||||
|
||||
return err
|
||||
|
||||
|
||||
def get_filesystem_type(partdev):
|
||||
"""
|
||||
|
|
Loading…
Reference in New Issue