[pdm-devel] [PATCH datacenter-manager 3/4] api: pve: make to `get_storage_rrd_data` return PveStorageDataPoint
Shannon Sterz
s.sterz at proxmox.com
Fri Nov 28 16:38:54 CET 2025
this worked so far by accident as `NodeDataPoint` has the field that
are also specified in `PveStorageDataPoint`, but marks all additional
fields as optional. fix this by using the proper return type.
pdm-client already uses the correct return type anyway.
Signed-off-by: Shannon Sterz <s.sterz at proxmox.com>
---
server/src/api/pve/rrddata.rs | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/server/src/api/pve/rrddata.rs b/server/src/api/pve/rrddata.rs
index 226b675..08db107 100644
--- a/server/src/api/pve/rrddata.rs
+++ b/server/src/api/pve/rrddata.rs
@@ -289,8 +289,15 @@ async fn get_node_rrd_data(
access: {
permission: &Permission::Privilege(&["resource", "{remote}", "storage", "{storage}"], PRIV_RESOURCE_AUDIT, false),
},
+ returns: {
+ type: Array,
+ description:"A list of RRD data points on a PVE remote's storage.",
+ items: {
+ type: PveStorageDataPoint,
+ }
+ }
)]
-/// Read node stats
+/// Read storage stats
async fn get_storage_rrd_data(
remote: String,
node: String,
@@ -298,7 +305,7 @@ async fn get_storage_rrd_data(
timeframe: RrdTimeframe,
cf: RrdMode,
_param: Value,
-) -> Result<Vec<NodeDataPoint>, Error> {
+) -> Result<Vec<PveStorageDataPoint>, Error> {
let base = format!("pve/{remote}/storage/{node}/{storage}");
rrd_common::get_rrd_datapoints(remote, base, timeframe, cf).await
}
--
2.47.3
More information about the pdm-devel
mailing list