api-types: rrd: use api-types from proxmox-rrd

Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
This commit is contained in:
Lukas Wagner 2024-08-06 14:59:56 +02:00 committed by Wolfgang Bumiller
parent 4fa99a164d
commit f9843eec16
6 changed files with 13 additions and 41 deletions

View File

@ -74,7 +74,7 @@ proxmox-openid = "0.10.0"
proxmox-rest-server = { version = "0.7", features = [ "templates" ] } proxmox-rest-server = { version = "0.7", features = [ "templates" ] }
# some use "cli", some use "cli" and "server", pbs-config uses nothing # some use "cli", some use "cli" and "server", pbs-config uses nothing
proxmox-router = { version = "2.0.0", default-features = false } proxmox-router = { version = "2.0.0", default-features = false }
proxmox-rrd = { version = "0.2" } proxmox-rrd = { version = "0.2", features = [ "api-types" ]}
# everything but pbs-config and pbs-client use "api-macro" # everything but pbs-config and pbs-client use "api-macro"
proxmox-schema = "3" proxmox-schema = "3"
proxmox-section-config = "2" proxmox-section-config = "2"

View File

@ -317,36 +317,6 @@ pub const NODE_TASKS_LIST_TASKS_RETURN_TYPE: ReturnType = ReturnType {
schema: &ArraySchema::new("A list of tasks.", &TaskListItem::API_SCHEMA).schema(), schema: &ArraySchema::new("A list of tasks.", &TaskListItem::API_SCHEMA).schema(),
}; };
#[api()]
#[derive(Copy, Clone, Serialize, Deserialize)]
#[serde(rename_all = "UPPERCASE")]
/// RRD consolidation mode
pub enum RRDMode {
/// Maximum
Max,
/// Average
Average,
}
#[api()]
#[derive(Copy, Clone, Serialize, Deserialize)]
#[serde(rename_all = "lowercase")]
/// RRD time frame
pub enum RRDTimeFrame {
/// Hour
Hour,
/// Day
Day,
/// Week
Week,
/// Month
Month,
/// Year
Year,
/// Decade (10 years)
Decade,
}
#[api] #[api]
#[derive(Deserialize, Serialize, Copy, Clone, PartialEq, Eq)] #[derive(Deserialize, Serialize, Copy, Clone, PartialEq, Eq)]
#[serde(rename_all = "lowercase")] #[serde(rename_all = "lowercase")]

View File

@ -22,6 +22,7 @@ use proxmox_router::{
http_err, list_subdirs_api_method, ApiHandler, ApiMethod, ApiResponseFuture, Permission, http_err, list_subdirs_api_method, ApiHandler, ApiMethod, ApiResponseFuture, Permission,
Router, RpcEnvironment, RpcEnvironmentType, SubdirMap, Router, RpcEnvironment, RpcEnvironmentType, SubdirMap,
}; };
use proxmox_rrd::api_types::{RRDMode, RRDTimeFrame};
use proxmox_schema::*; use proxmox_schema::*;
use proxmox_sortable_macro::sortable; use proxmox_sortable_macro::sortable;
use proxmox_sys::fs::{ use proxmox_sys::fs::{
@ -36,11 +37,11 @@ use pbs_api_types::{
print_ns_and_snapshot, print_store_and_ns, Authid, BackupContent, BackupNamespace, BackupType, print_ns_and_snapshot, print_store_and_ns, Authid, BackupContent, BackupNamespace, BackupType,
Counts, CryptMode, DataStoreConfig, DataStoreListItem, DataStoreStatus, Counts, CryptMode, DataStoreConfig, DataStoreListItem, DataStoreStatus,
GarbageCollectionJobStatus, GroupListItem, JobScheduleStatus, KeepOptions, Operation, GarbageCollectionJobStatus, GroupListItem, JobScheduleStatus, KeepOptions, Operation,
PruneJobOptions, RRDMode, RRDTimeFrame, SnapshotListItem, SnapshotVerifyState, PruneJobOptions, SnapshotListItem, SnapshotVerifyState, BACKUP_ARCHIVE_NAME_SCHEMA,
BACKUP_ARCHIVE_NAME_SCHEMA, BACKUP_ID_SCHEMA, BACKUP_NAMESPACE_SCHEMA, BACKUP_TIME_SCHEMA, BACKUP_ID_SCHEMA, BACKUP_NAMESPACE_SCHEMA, BACKUP_TIME_SCHEMA, BACKUP_TYPE_SCHEMA,
BACKUP_TYPE_SCHEMA, DATASTORE_SCHEMA, IGNORE_VERIFIED_BACKUPS_SCHEMA, MAX_NAMESPACE_DEPTH, DATASTORE_SCHEMA, IGNORE_VERIFIED_BACKUPS_SCHEMA, MAX_NAMESPACE_DEPTH, NS_MAX_DEPTH_SCHEMA,
NS_MAX_DEPTH_SCHEMA, PRIV_DATASTORE_AUDIT, PRIV_DATASTORE_BACKUP, PRIV_DATASTORE_MODIFY, PRIV_DATASTORE_AUDIT, PRIV_DATASTORE_BACKUP, PRIV_DATASTORE_MODIFY, PRIV_DATASTORE_PRUNE,
PRIV_DATASTORE_PRUNE, PRIV_DATASTORE_READ, PRIV_DATASTORE_VERIFY, UPID, UPID_SCHEMA, PRIV_DATASTORE_READ, PRIV_DATASTORE_VERIFY, UPID, UPID_SCHEMA,
VERIFICATION_OUTDATED_AFTER_SCHEMA, VERIFICATION_OUTDATED_AFTER_SCHEMA,
}; };
use pbs_client::pxar::{create_tar, create_zip}; use pbs_client::pxar::{create_tar, create_zip};

View File

@ -3,9 +3,10 @@ use serde_json::{json, Value};
use std::collections::BTreeMap; use std::collections::BTreeMap;
use proxmox_router::{Permission, Router}; use proxmox_router::{Permission, Router};
use proxmox_rrd::api_types::{RRDMode, RRDTimeFrame};
use proxmox_schema::api; use proxmox_schema::api;
use pbs_api_types::{RRDMode, RRDTimeFrame, NODE_SCHEMA, PRIV_SYS_AUDIT}; use pbs_api_types::{NODE_SCHEMA, PRIV_SYS_AUDIT};
use crate::rrd_cache::extract_rrd_data; use crate::rrd_cache::extract_rrd_data;

View File

@ -5,11 +5,11 @@ use serde_json::Value;
use proxmox_router::list_subdirs_api_method; use proxmox_router::list_subdirs_api_method;
use proxmox_router::{ApiMethod, Permission, Router, RpcEnvironment, SubdirMap}; use proxmox_router::{ApiMethod, Permission, Router, RpcEnvironment, SubdirMap};
use proxmox_rrd::api_types::{RRDMode, RRDTimeFrame};
use proxmox_schema::api; use proxmox_schema::api;
use pbs_api_types::{ use pbs_api_types::{
Authid, DataStoreStatusListItem, Operation, RRDMode, RRDTimeFrame, PRIV_DATASTORE_AUDIT, Authid, DataStoreStatusListItem, Operation, PRIV_DATASTORE_AUDIT, PRIV_DATASTORE_BACKUP,
PRIV_DATASTORE_BACKUP,
}; };
use pbs_config::CachedUserInfo; use pbs_config::CachedUserInfo;

View File

@ -9,12 +9,12 @@ use std::path::Path;
use anyhow::{format_err, Error}; use anyhow::{format_err, Error};
use once_cell::sync::OnceCell; use once_cell::sync::OnceCell;
use proxmox_rrd::rrd::{AggregationFn, DataSourceType, Database, Archive}; use proxmox_rrd::rrd::{AggregationFn, Archive, DataSourceType, Database};
use proxmox_rrd::Cache; use proxmox_rrd::Cache;
use proxmox_sys::fs::CreateOptions; use proxmox_sys::fs::CreateOptions;
use pbs_api_types::{RRDMode, RRDTimeFrame};
use pbs_buildcfg::PROXMOX_BACKUP_STATE_DIR_M; use pbs_buildcfg::PROXMOX_BACKUP_STATE_DIR_M;
use proxmox_rrd::api_types::{RRDMode, RRDTimeFrame};
const RRD_CACHE_BASEDIR: &str = concat!(PROXMOX_BACKUP_STATE_DIR_M!(), "/rrdb"); const RRD_CACHE_BASEDIR: &str = concat!(PROXMOX_BACKUP_STATE_DIR_M!(), "/rrdb");