[pve-devel] [PATCH installer 4/7] tui: add min/max constraints for ZFS bootdisk parameters
Christoph Heiss
c.heiss at proxmox.com
Wed Oct 4 16:42:15 CEST 2023
Signed-off-by: Christoph Heiss <c.heiss at proxmox.com>
---
proxmox-tui-installer/src/views/bootdisk.rs | 19 ++++++++++++++++---
1 file changed, 16 insertions(+), 3 deletions(-)
diff --git a/proxmox-tui-installer/src/views/bootdisk.rs b/proxmox-tui-installer/src/views/bootdisk.rs
index 46bdd9f..8b5b5d2 100644
--- a/proxmox-tui-installer/src/views/bootdisk.rs
+++ b/proxmox-tui-installer/src/views/bootdisk.rs
@@ -20,6 +20,9 @@ use crate::{
};
use crate::{setup::ProxmoxProduct, InstallerState};
+// See Proxmox::Sys::Block::partition_bootable_disk()
+const MINIMUM_DISK_SIZE: f64 = 2.;
+
pub struct BootdiskOptionsView {
view: LinearLayout,
advanced_options: Rc<RefCell<BootdiskOptions>>,
@@ -501,7 +504,10 @@ impl ZfsBootdiskOptionsView {
// TODO: Re-apply previous disk selection from `options` correctly
fn new(disks: &[Disk], options: &ZfsBootdiskOptions) -> Self {
let inner = FormView::new()
- .child("ashift", IntegerEditView::new().content(options.ashift))
+ .child(
+ "ashift",
+ IntegerEditView::with_range(9, 13).content(options.ashift),
+ )
.child(
"compress",
SelectView::new()
@@ -526,8 +532,15 @@ impl ZfsBootdiskOptionsView {
.unwrap_or_default(),
),
)
- .child("copies", IntegerEditView::new().content(options.copies))
- .child("hdsize", DiskSizeEditView::new().content(options.disk_size));
+ .child(
+ "copies",
+ IntegerEditView::with_range(1, 3).content(options.copies),
+ )
+ .child(
+ "hdsize",
+ DiskSizeEditView::with_range(MINIMUM_DISK_SIZE, options.disk_size)
+ .content(options.disk_size),
+ );
let view = MultiDiskOptionsView::new(disks, &options.selected_disks, inner)
.top_panel(TextView::new(
--
2.42.0
More information about the pve-devel
mailing list