filesystem: split logical and primary using more_itertools.partition

Signed-off-by: Olivier Gayot <olivier.gayot@canonical.com>
This commit is contained in:
Olivier Gayot 2022-10-07 09:41:24 +02:00
parent 01060fc14b
commit d27fec6480
2 changed files with 6 additions and 5 deletions

View File

@ -25,6 +25,7 @@ python3-dev
python3-distutils-extra
python3-flake8
python3-jsonschema
python3-more-itertools
python3-nose
python3-parameterized
python3-pip

View File

@ -26,6 +26,8 @@ import pathlib
import platform
import tempfile
import more_itertools
from curtin import storage_config
from curtin.block import partition_kname
from curtin.util import human2bytes
@ -1188,11 +1190,9 @@ class FilesystemModel(object):
def ad(v): # ad == "align down"
return v - v % info.part_align
primary_parts = list(filter(
lambda x: not is_logical_partition(x),
disk.partitions()))
logical_parts = list(filter(
lambda x: is_logical_partition(x),
# Extended is considered a primary partition too.
primary_parts, logical_parts = map(list, more_itertools.partition(
is_logical_partition,
disk.partitions()))
prev_end = info.min_start_offset