]> git.proxmox.com Git - proxmox-backup.git/commitdiff
proxmox-backup-client: use HumanByte to render snapshot size
authorDietmar Maurer <dietmar@proxmox.com>
Tue, 20 Oct 2020 09:43:48 +0000 (11:43 +0200)
committerDietmar Maurer <dietmar@proxmox.com>
Tue, 20 Oct 2020 09:43:48 +0000 (11:43 +0200)
src/bin/proxmox-backup-client.rs
src/tools/format.rs

index ffe5b3dd4d518f630517e26de9f3192b1928c0f8..4bb05bd14b50be78dbeb1f91a9f2ba51da7357cf 100644 (file)
@@ -510,7 +510,7 @@ async fn list_snapshots(param: Value) -> Result<Value, Error> {
         .sortby("backup-id", false)
         .sortby("backup-time", false)
         .column(ColumnConfig::new("backup-id").renderer(render_snapshot_path).header("snapshot"))
-        .column(ColumnConfig::new("size"))
+        .column(ColumnConfig::new("size").renderer(tools::format::render_bytes_human_readable))
         .column(ColumnConfig::new("files").renderer(render_files))
         ;
 
index c3aa791bda3b9937582b88d0017986cbecb479ef..8fe6aa8296885c095d926c16443a25379c07d7ee 100644 (file)
@@ -50,6 +50,19 @@ pub fn render_bool_with_default_true(value: &Value, _record: &Value) -> Result<S
     Ok((if value { "1" } else { "0" }).to_string())
 }
 
+pub fn render_bytes_human_readable(value: &Value, _record: &Value) -> Result<String, Error> {
+    if value.is_null() { return Ok(String::new()); }
+    let text = match value.as_u64() {
+        Some(bytes) => {
+            HumanByte::from(bytes).to_string()
+        }
+        None => {
+            value.to_string()
+        }
+    };
+    Ok(text)
+}
+
 pub struct HumanByte {
     b: usize,
 }