Description
Verify that a Stratis layout created in the Cockpit Storage editor embedded in the Anaconda WebUI installer can be used for installation, including / on Stratis.
Background and the generic WebUI procedure are described in the Fedora change page and a Fedora Magazine article.
This page contains the baseline test case and several variants. Run the baseline first, then any variants you want to cover; each variant only lists what it changes compared to the baseline.
Setup
Boot a Fedora 45 (or later) WebUI-enabled ISO in a virtual machine with a single disk of at least 16 GB (vda). The image must include stratisd, stratis-cli and stratisd-dracut. No pre-partitioning is required. Variants that need more disks say so in their own section.
How to test
Follow the How To Test -> WebUI section of the change page to launch the storage editor and create the boot partitions (/boot/efi, /boot), the fedorapool Stratis pool and the root (/) and home (/home) filesystems. Then continue with the QA-specific checks:
- Click Return to installation and confirm. Verify that the Check storage dialog reports no errors and that Use configured storage is selected.
- Proceed to the Review screen and check that the Stratis device is shown with the correct filesystems for
/and/home. - Click Install, wait for the payload to finish and reboot.
- Run
findmnt / /homeandstratis filesystem list.
Expected Results
- The Use configured storage scenario is selected and storage validation passes.
- The Review screen shows the Stratis device (for example
vda3, Stratis) with the correct Stratis filesystem for/and/home. A filesystem created without an explicit size is thin-provisioned and defaults to the Stratis 1 TiB virtual size, shown as about 1.10 TB; this is expected. - The installation completes without errors.
- The installed system boots successfully, including the root-on-Stratis case, which is the primary goal of the change.
findmnt / /homeshows both mount points on the pool (for example/dev/stratis/fedorapool/rootand/dev/stratis/fedorapool/home) andstratis filesystem listlists the pool with the filesystems online.- Known bug to report, not an expected result: on some Fedora 45 composes the install completes but the system hangs in early boot forever on
dev-stratis-<pool>-root.devicebecause the pool is not activated in the initramfs. The change explicitly targets bootable root-on-Stratis, so if you hit this, capture the boot output, file a bug againstanaconda/stratisd-dracut, and add the bug link to the test day row.
Encrypted pool
This is a variant of the baseline test case above. Read the baseline instructions first.
The Stratis pool is encrypted with a passphrase, so this also verifies that Cockpit Storage hands the passphrase to the installer and the pool is unlocked automatically.
How to test (differences)
- In the Create Stratis pool dialog, check Encrypt data with a passphrase and set a passphrase before clicking Create.
- After clicking Return to installation, do not expect an unlock prompt: the installer unlocks the pool with the passphrase stored by Cockpit Storage.
- (Optional) On the pool page, open the Encryption tokens card and try adding, changing and removing a passphrase (V2 pools support multiple tokens).
Finish the baseline steps afterwards.
Expected Results (differences)
- The Review screen marks the root device as encrypted and validation passes without a manual unlock.
- After reboot the pool is unlocked automatically and
findmnt /resolves to/dev/stratis/fedorapool/root.
Notes
- The passphrase is kept only in the browser session storage and is used by the Check storage dialog when returning to the installation.
- The Encrypt data with a Tang keyserver option is intentionally not offered inside the installer.
Multiple filesystems
This is a variant of the baseline test case above. Read the baseline instructions first.
This variant exercises the Stratis filesystem management features of the Cockpit Storage editor (explicit sizes and limits, snapshots, rename and delete) on top of the common pool.
How to test (differences)
Follow the baseline procedure to create the pool and the root filesystem, then additionally:
- Create a
datafilesystem on the same pool with Set initial size (for example 5 GiB) and Limit size (for example 10 GiB) enabled, and no mount point. Verify the Virtual size and Virtual size limit on its page. - From the
datafilesystem dropdown choose Snapshot, name itdata-snapshotand create it without a mount point. - Rename
datatodata-renamedusing the edit link next to Name. - Delete
data-snapshotusing its dropdown Delete action.
Finish the baseline steps afterwards.
Expected Results (additions)
- The explicit initial virtual size and the size limit are honoured and shown on the filesystem page.
- A snapshot can be created and deleted, and a filesystem can be renamed.
stratis filesystem listshows the expected filesystems andfindmnt /resolves to/dev/stratis/fedorapool/root.
Notes
- A filesystem that is mounted in the installer cannot be deleted; delete or unmount it first.
- Snapshots are thin and consume space only for changed data.
Multiple devices
This is a variant of the baseline test case above. Read the baseline instructions first.
The pool spans block devices on two disks instead of one. Optionally also exercises the Add block devices action.
Setup (differences)
Use two disks of at least 16 GB each (vda and vdb) and select both as installation targets.
How to test (differences)
- After creating the boot partitions on
vda, create the pool and check the block devices for thevdafree space and the wholevdbdisk. - Verify that the pool card lists block devices from both disks.
- (Optional) From the pool card click Add block devices, choose the Data (or Cache) tier and add another available device; verify the pool usage grows.
Finish the baseline steps afterwards and run stratis blockdev list fedorapool.
Expected Results (differences)
- The pool is created from block devices on both disks and validation passes with both disks selected.
- The Review screen shows the root device with both member partitions and the
Stratislabel. stratis blockdev list fedorapoolshows all member block devices.
Notes
- Devices can be added to a pool but not removed; a pool must be deleted to release them.
- Multi-device Stratis pools add capacity only, they are not redundant.
Whole disk
This is a variant of the baseline test case above. Read the baseline instructions first.
The pool member is a whole, unpartitioned disk instead of free space turned into a partition. This covers Cockpit Storage's whole block device path, which is also used when a pool sits on an LVM logical volume or MDRAID device.
Setup (differences)
Use two disks (vda for the boot partitions and vdb for the pool) and select both as installation targets.
How to test (differences)
- Create the boot partitions on
vdaonly. - Create the pool and check the Block devices entry for the whole
vdbdisk (listed asVD vdb//dev/vdb, not a partition). - Verify that no partition was created on
vdbfor the pool.
Finish the baseline steps afterwards and run stratis blockdev list fedorapool.
Expected Results (differences)
- The pool can be created with a whole disk as its member and no partition is created on
vdb. - The Review screen shows the root device on
vdblabelledStratis.
Notes
- A disk used as a whole for a pool cannot be shared with other partitions.
Multiple pools
This is a variant of the baseline test case above. Read the baseline instructions first.
Two independent Stratis pools are created on a single disk and each is used for a different mount point.
How to test (differences)
Follow the baseline procedure up to (and including) the boot partitions, then:
- Create two raw partitions from the remaining space (for example
vda3andvda4). - Create the first pool
fedorapoolonvda3with arootfilesystem mounted at/. - Create a second pool
secondpoolonvda4with ahomefilesystem mounted at/home.
Finish the baseline steps afterwards and run stratis pool list and findmnt / /home.
Expected Results (differences)
- Two independent Stratis pools can be created on the same disk, each owning only its own partition.
- The Review screen shows
/onvda3and/homeonvda4, both labelledStratis. - Both mount points resolve to their respective pools (
/dev/stratis/fedorapool/rootand/dev/stratis/secondpool/home).
Notes
- Splitting the disk into more pools means each pool has its own thin-provisioned space and can be managed independently.
- All pools on the disk must fit into the disk's physical space.
References
- Fedora Change page: Changes/StratisAnacondaSupport
- Fedora Magazine article: Installing Fedora 45 on Stratis storage
