While writing test cases for webUI, I wound up trying a software RAID install, and it doesn't seem to work. I go to the storage editor, create BIOS boot and /boot partitions on one disk, create an MDRAID device spanning two disks, create a partition table on it, create an ext4 partition in the empty space, and set its mount point as / . That all works fine, apparently. I click "Return to installation", and I get a "Storage requirements not met" warning, which says "You have not defined a root partition". If I click "Configure storage again", I'm back at the storage editor, but my MDRAID device now shows "(stopped)". If I start it again, it shows the partition and its assigned mount point, but if I click "Return to installation" again, the same things happens - warning, and the device is stopped. If, at the warning dialog, I instead go back to the front page and then go to mount point assignment, I can't assign the mount point there either as the RAID device is not available as a target (presumably because it's been stopped). Weirdly, if I complete the storage editor *with the RAID device stopped*, I see it briefly start and stop again, and the "Continue with installation" dialog says "Free space requirements met" and lets me continue. But if I then click "Use configured storage" and actually proceed with installation, it crashes immediately: ERROR:anaconda.modules.common.task.task:Thread AnaTaskThread-CreateStorageLayoutTask-1 has failed: Traceback (most recent call last): Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: File "/usr/lib64/python3.13/site-packages/pyanaconda/core/threads.py", line 281, in run Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: threading.Thread.run(self) Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: ~~~~~~~~~~~~~~~~~~~~^^^^^^ Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: File "/usr/lib64/python3.13/threading.py", line 992, in run Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: self._target(*self._args, **self._kwargs) Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: File "/usr/lib64/python3.13/site-packages/pyanaconda/modules/common/task/task.py", line 97, in _thread_run_callback Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: self._task_run_callback() Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: ~~~~~~~~~~~~~~~~~~~~~~~^^ Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: File "/usr/lib64/python3.13/site-packages/pyanaconda/modules/common/task/task.py", line 110, in _task_run_callback Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: self._set_result(self.run()) Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: ~~~~~~~~^^ Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: File "/usr/lib64/python3.13/site-packages/pyanaconda/modules/storage/installation.py", line 84, in run Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: self._turn_on_filesystems( Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: ~~~~~~~~~~~~~~~~~~~~~~~~~^ Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: self._storage, Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: ^^^^^^^^^^^^^^ Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: callbacks=register Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: ^^^^^^^^^^^^^^^^^^ Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: ) Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: ^ Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: File "/usr/lib64/python3.13/site-packages/pyanaconda/modules/storage/installation.py", line 165, in _turn_on_filesystems Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: self._setup_bootable_devices(storage) Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^ Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: File "/usr/lib64/python3.13/site-packages/pyanaconda/modules/storage/installation.py", line 184, in _setup_bootable_devices Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: if boot.type == "mdarray": Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: ^^^^^^^^^ Feb 07 19:51:28 localhost-live org.fedoraproject.Anaconda.Modules.Storage[3220]: AttributeError: 'NoneType' object has no attribute 'type' I haven't yet found a way to actually complete an install to a software RAID set.
Proposing as a Beta blocker per the "Custom partitioning" criterion - that doesn't explicitly say 'webui' atm but only because I haven't got around to editing it again yet, webui is blocking for F42 as it's on Workstation live. That criterion requires "Create mount points backed by ext4 partitions, LVM volumes or btrfs volumes, or software RAID arrays at RAID levels 0, 1 and 5 containing ext4 partitions" and "Assign mount points to existing storage volumes".
also, when booting with an already-existing software RAID set and going straight to mount point assignment, the partitions on the RAID set are not available as targets either.
+4 in https://pagure.io/fedora-qa/blocker-review/issue/1751 , marking accepted.
The test case [1] which is what is described as reproducer above, is quite different from the GTK UI one [2] which says to create MD array mounted as / and optionally second array mounted as /home Some background: in blivet the following two "types" of MD array are recognized: 1. The array is directly on top of disks: in this case blivet considers the array to be a disk (similar to a hardware RAID) and we should create the partition table on the array 2. The array is on top of partitions: from blivet's pov this is a device and it allows only a single filesystem (or other format like lvmpv) on top of it and if it has partitions they are ignored [1] https://fedoraproject.org/wiki/QA:Testcase_partitioning_webui_custom_software_RAID [2] https://fedoraproject.org/wiki/QA:Testcase_partitioning_custom_software_RAID Both Web UI and GTK UI support only these two types. When it comes to Web UI, I indeed found a bug for the scenario (1), RAID on top of disks and fixed in https://github.com/rhinstaller/anaconda-webui/pull/658
well, I was really just trying to "do software RAID" in the most obvious way the new UI offered. This was what I wound up with. I wrote the test case *after* filing this bug, it was kind of a separate action.
FEDORA-2025-73a6f8a23c (anaconda-42.27.3-1.fc42 and anaconda-webui-26-1.fc42) has been submitted as an update to Fedora 42. https://bodhi.fedoraproject.org/updates/FEDORA-2025-73a6f8a23c
FEDORA-2025-73a6f8a23c has been pushed to the Fedora 42 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2025-73a6f8a23c` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2025-73a6f8a23c See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
With Fedora-Workstation-Live-42_Beta-1.2.x86_64.iso I believe we can mark this as working. The software raid setup can be configured with guidance from comment 4. Option 2 from there is the easiest option (but with only a single filesystem in the raid). I hit some obstacles with Option 1 related to the biosboot partition, but I'll report that separately.
FEDORA-2025-73a6f8a23c (anaconda-42.27.3-1.fc42 and anaconda-webui-26-1.fc42) has been pushed to the Fedora 42 stable repository. If problem still persists, please make note of it in this bug report.