From 18ba1b22497296129d1c7ee45efea2237b0bc955 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= Date: Wed, 12 Jan 2022 14:52:10 +0100 Subject: [PATCH] api-types: relax NODENAME_SCHEMA MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit there isn't really a concept of 'nodes' in PBS (yet) anyway - and if there ever is, it needs to be handled by the rest-server / specific API endpoints (like in PVE), and not by the schema. this allows dropping proxmox-sys from pbs-api-types (and thus nix and some other transitive deps as well). Signed-off-by: Fabian Grünbichler --- pbs-api-types/Cargo.toml | 3 --- pbs-api-types/src/lib.rs | 11 ++--------- 2 files changed, 2 insertions(+), 12 deletions(-) diff --git a/pbs-api-types/Cargo.toml b/pbs-api-types/Cargo.toml index 09107ace..e77d8bc4 100644 --- a/pbs-api-types/Cargo.toml +++ b/pbs-api-types/Cargo.toml @@ -18,6 +18,3 @@ proxmox-schema = { version = "1.1", features = [ "api-macro" ] } proxmox-serde = "0.1" proxmox-time = "1.1.1" proxmox-uuid = { version = "1.0.0", features = [ "serde" ] } - -[target.'cfg(not(target_arch="wasm32"))'.dependencies] -proxmox-sys = "0.2" # only needed for nodename()?? diff --git a/pbs-api-types/src/lib.rs b/pbs-api-types/src/lib.rs index 26bef33d..e3c3df11 100644 --- a/pbs-api-types/src/lib.rs +++ b/pbs-api-types/src/lib.rs @@ -1,7 +1,6 @@ //! Basic API types used by most of the PBS code. use serde::{Deserialize, Serialize}; -use anyhow::bail; pub mod common_regex; pub mod percent_encoding; @@ -199,15 +198,9 @@ pub const DNS_NAME_OR_IP_SCHEMA: Schema = StringSchema::new("DNS name or IP addr .format(&DNS_NAME_OR_IP_FORMAT) .schema(); -#[cfg(not(target_arch="wasm32"))] // this only makes sense for the serever side + pub const NODE_SCHEMA: Schema = StringSchema::new("Node name (or 'localhost')") - .format(&ApiStringFormat::VerifyFn(|node| { - if node == "localhost" || node == proxmox_sys::nodename() { - Ok(()) - } else { - bail!("no such node '{}'", node); - } - })) + .format(&HOSTNAME_FORMAT) .schema(); pub const TIME_ZONE_SCHEMA: Schema = StringSchema::new(