Signed-off-by: Fabian Grünbichler <f.gruenbich...@proxmox.com> --- src/bin/proxmox_backup_manager/sync.rs | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+)
diff --git a/src/bin/proxmox_backup_manager/sync.rs b/src/bin/proxmox_backup_manager/sync.rs index 2dbef119..fd312e9e 100644 --- a/src/bin/proxmox_backup_manager/sync.rs +++ b/src/bin/proxmox_backup_manager/sync.rs @@ -7,6 +7,18 @@ use pbs_api_types::JOB_ID_SCHEMA; use proxmox_backup::api2; +fn render_group_filter(value: &Value, _record: &Value) -> Result<String, Error> { + if let Some(group_filters) = value.as_array() { + let group_filters:Vec<&str> = group_filters + .iter() + .filter_map(Value::as_str) + .collect(); + Ok(group_filters.join(" OR ")) + } else { + Ok(String::from("all")) + } +} + #[api( input: { properties: { @@ -34,6 +46,7 @@ fn list_sync_jobs(param: Value, rpcenv: &mut dyn RpcEnvironment) -> Result<Value .column(ColumnConfig::new("remote")) .column(ColumnConfig::new("remote-store")) .column(ColumnConfig::new("schedule")) + .column(ColumnConfig::new("groups").renderer(render_group_filter)) .column(ColumnConfig::new("comment")); format_and_print_result_full(&mut data, &info.returns, &output_format, &options); @@ -65,6 +78,12 @@ fn show_sync_job(param: Value, rpcenv: &mut dyn RpcEnvironment) -> Result<Value, _ => unreachable!(), }; + if let Some(groups) = data.get_mut("groups") { + if let Ok(rendered) = render_group_filter(groups, groups) { + *groups = Value::String(rendered); + } + } + let options = default_table_format_options(); format_and_print_result_full(&mut data, &info.returns, &output_format, &options); -- 2.30.2 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel