Thanks for the MP Alexander.
Before we get too far into review, please understand that the decision to
include f2fs in the filesystems dropdown list of Ubuntu-desktop-installer or
Subiquity is not mine to make. Getting support for it in Curtin is just one
part. Look for example at
https://github.com/canonical/ubuntu-desktop-installer/issues/1332 - we removed
several filesystems from that list.
But if we do want to included f2fs at some point, it starts here, so let's
discuss this part.
docs: we should add an entry in the Format command - doc/topics/storage.rst
unittests: please consider the existing tests/unittests/test_block_mkfs.py
tests and think about a suitable f2fs version. tox -e py3-flake8 reports a
minor problem in curtin/block/schemas.py
integration tests: curtin has a body of vmtests, but the newer ones we tend to
run as part of tests/integration. I want to see more integration tests instead
of new vmtests. There isn't an example yet in integration on a new filesystem
type, so I won't make it required to add one there, but it'd be nice.
Diff comments:
> diff --git a/curtin/block/schemas.py b/curtin/block/schemas.py
> index 3278331..60807d9 100644
> --- a/curtin/block/schemas.py
> +++ b/curtin/block/schemas.py
> @@ -4,7 +4,7 @@ _uuid_pattern = (
> r'[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}')
> _path_dev = r'^/dev/[^/]+(/[^/]+)*$'
> _path_nondev = r'(^/$|^(/[^/]+)+$)'
> -_fstypes = ['btrfs', 'ext2', 'ext3', 'ext4', 'fat', 'fat12', 'fat16',
> 'fat32',
> +_fstypes = ['btrfs', 'ext2', 'ext3', 'ext4', 'f2fs', 'fat', 'fat12',
> 'fat16', 'fat32',
Linter will complain the line is too long, let's move an entry or two down a
line to keep it happy.
> 'iso9660', 'vfat', 'jfs', 'ntfs', 'reiserfs', 'swap', 'xfs',
> 'zfsroot']
> _ptable_unsupported = 'unsupported'
> diff --git a/debian/control b/debian/control
> index a35cbf6..0527580 100644
> --- a/debian/control
> +++ b/debian/control
> @@ -25,6 +25,7 @@ Priority: extra
> Depends: bcache-tools,
> btrfs-progs | btrfs-tools,
> dosfstools,
> + f2fs-tools,
It's not desired to list every filesystem tools package here, curtin installs
missing packages needed on demand. It's better at this point to not list it
here, and we can ensure that f2fs-tools is in the right location in the cases
that want it.
> file,
> gdisk,
> lvm2,
--
https://code.launchpad.net/~nexusprism/curtin/+git/curtin/+merge/439880
Your team curtin developers is requested to review the proposed merge of
~nexusprism/curtin:master into curtin:master.
--
Mailing list: https://launchpad.net/~curtin-dev
Post to : [email protected]
Unsubscribe : https://launchpad.net/~curtin-dev
More help : https://help.launchpad.net/ListHelp