api-types: relax NODENAME_SCHEMA

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 <f.gruenbichler@proxmox.com>
This commit is contained in:
Fabian Grünbichler 2022-01-12 14:52:10 +01:00 committed by Thomas Lamprecht
parent e2e587e3c7
commit 18ba1b2249
2 changed files with 2 additions and 12 deletions

View File

@ -18,6 +18,3 @@ proxmox-schema = { version = "1.1", features = [ "api-macro" ] }
proxmox-serde = "0.1" proxmox-serde = "0.1"
proxmox-time = "1.1.1" proxmox-time = "1.1.1"
proxmox-uuid = { version = "1.0.0", features = [ "serde" ] } proxmox-uuid = { version = "1.0.0", features = [ "serde" ] }
[target.'cfg(not(target_arch="wasm32"))'.dependencies]
proxmox-sys = "0.2" # only needed for nodename()??

View File

@ -1,7 +1,6 @@
//! Basic API types used by most of the PBS code. //! Basic API types used by most of the PBS code.
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
use anyhow::bail;
pub mod common_regex; pub mod common_regex;
pub mod percent_encoding; 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) .format(&DNS_NAME_OR_IP_FORMAT)
.schema(); .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')") pub const NODE_SCHEMA: Schema = StringSchema::new("Node name (or 'localhost')")
.format(&ApiStringFormat::VerifyFn(|node| { .format(&HOSTNAME_FORMAT)
if node == "localhost" || node == proxmox_sys::nodename() {
Ok(())
} else {
bail!("no such node '{}'", node);
}
}))
.schema(); .schema();
pub const TIME_ZONE_SCHEMA: Schema = StringSchema::new( pub const TIME_ZONE_SCHEMA: Schema = StringSchema::new(