-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Btrfs storage redesign #19512
Btrfs storage redesign #19512
Conversation
pkg/storaged/pages/other.jsx
Outdated
props: { block } | ||
}); | ||
|
||
make_block_pages(p, block, null); |
Check warning
Code scanning / CodeQL
Superfluous trailing arguments
pkg/storaged/pages/drive.jsx
Outdated
}); | ||
|
||
if (block.Size > 0) | ||
make_block_pages(drive_page, block, null); |
Check warning
Code scanning / CodeQL
Superfluous trailing arguments
} else if ((content_block.IdUsage == "raid") || | ||
(client.mdraids[content_block.MDRaidMember])) { | ||
make_mdraid_disk_page(parent, block, content_block, container); | ||
} else if (block_swap || (content_block && content_block.IdUsage == "other" && content_block.IdType == "swap")) { |
Check warning
Code scanning / CodeQL
Useless conditional Warning
pkg/storaged/pages/drive.jsx
Outdated
import { SCard } from "../utils/card.jsx"; | ||
import { SDesc } from "../utils/desc.jsx"; | ||
import { StorageButton } from "../storage-controls.jsx"; | ||
import { PageChildrenCard, ParentPageLink, new_page, page_type, block_location, register_crossref } from "../pages.jsx"; |
Check notice
Code scanning / CodeQL
Unused variable, import, function or class
test/verify/check-storage-stratis
Outdated
b.wait_not_present("#devices .pf-v5-c-dropdown a:contains('Create Stratis pool')") | ||
# XXX - explain this or make it more explicit | ||
raid_clicks = self.dropdown_action(self.card_header("Storage"), "Create RAID device") | ||
stratic_clicks = self.dropdown_action(self.card_header("Storage"), "Create Stratis pool") |
Check notice
Code scanning / CodeQL
Unused local variable
It gets spuriously closed sometimes.
All card actions are defined via the page and container abstractions, which will put them into the kebab menu of table rows. But then, dangerous and impossible actions are removed from that menu.
We could do the same in other places.
To be able to link to a BTRFS device in the BTRFS volume page we want to register all backing blocks to create link to btrfs volume devices.
This introduces the concept of BTRFS volumes in the storage page, a BTRFS volume can have multiple device(s). The first version won't implement adding/removing devices but should support showing them and making sense of it. We also show the btrfs subvolumes of a volume and should in the future allow creating of subvolumes under a subvolume and the root.
4c417d1
to
ca756b1
Compare
Partially implemented in #19690 |
Depends on:
Demo:
Screenshots:
Storage overview page
BTRFS Volume overview page
To Do:
fstab
should show up in the new storage overview re-design (For example now you won't see /home which is a btrfs subvolume but you do see /)qgroup
in udisks? And creating of a qgroup? Needs more research, to be postponed for a follow upbtrfs subvolume create foo
is completely valid.