This commit is contained in:
Stefan 2017-02-01 20:16:23 +01:00
parent 5a4719c236
commit 64e1020e6d

View file

@ -108,14 +108,16 @@ class MountAdditional(Task):
def run(cls, info): def run(cls, info):
import os import os
from bootstrapvz.base.fs.partitions.unformatted import UnformattedPartition from bootstrapvz.base.fs.partitions.unformatted import UnformattedPartition
def is_additional(partition):
return (not isinstance(partition, UnformattedPartition) and
partition.name not in ["boot", "swap", "root"])
p_map = info.volume.partition_map p_map = info.volume.partition_map
partitions = p_map.partitions partitions = p_map.partitions
is_additional = lambda partition: ( for partition in sorted(
not isinstance(partition, UnformattedPartition) filter(is_additional, partitions),
and partition.name not in ["boot", "swap", "root"] key=lambda partition: len(partition.name)):
)
name_length = lambda partition: len(partition.name)
for partition in sorted(filter(is_additional, partitions), key=name_length):
partition = getattr(p_map, partition.name) partition = getattr(p_map, partition.name)
os.makedirs(os.path.join(info.root, partition.name)) os.makedirs(os.path.join(info.root, partition.name))
if partition.mountopts is None: if partition.mountopts is None:
@ -191,6 +193,11 @@ class FStab(Task):
def run(cls, info): def run(cls, info):
import os.path import os.path
from bootstrapvz.base.fs.partitions.unformatted import UnformattedPartition from bootstrapvz.base.fs.partitions.unformatted import UnformattedPartition
def is_additional(partition):
return (not isinstance(partition, UnformattedPartition) and
partition.name not in ["boot", "swap", "root", "type"])
p_map = info.volume.partition_map p_map = info.volume.partition_map
partitions = p_map.partitions partitions = p_map.partitions
mount_points = [{'path': '/', mount_points = [{'path': '/',
@ -211,12 +218,9 @@ class FStab(Task):
'pass_num': '0', 'pass_num': '0',
}) })
is_additional = lambda partition: ( for partition in sorted(
not isinstance(partition, UnformattedPartition) filter(is_additional, partitions),
and partition.name not in ["boot", "swap", "root", "type"] key=lambda partition: len(partition.name)):
)
name_length = lambda partition: len(partition.name)
for partition in sorted(filter(is_additional, partitions), key=name_length):
mount_points.append({'path': "/" + partition.name, mount_points.append({'path': "/" + partition.name,
'partition': getattr(p_map, partition.name), 'partition': getattr(p_map, partition.name),
'dump': '1', 'dump': '1',