src/api2/types.rs: define REMOTE_ID_SCHEMA here

This commit is contained in:
Dietmar Maurer 2020-01-13 11:47:07 +01:00
parent 6de36b94b1
commit 167971ed49
4 changed files with 11 additions and 7 deletions

View File

@ -3,6 +3,7 @@ use serde_json::Value;
use proxmox::api::{api, ApiMethod, Router, RpcEnvironment};
use crate::api2::types::*;
use crate::config::remotes;
#[api(
@ -34,7 +35,7 @@ pub fn list_remotes(
input: {
properties: {
name: {
schema: remotes::REMOTE_ID_SCHEMA,
schema: REMOTE_ID_SCHEMA,
},
comment: {
optional: true,
@ -77,7 +78,7 @@ pub fn create_remote(name: String, param: Value) -> Result<(), Error> {
input: {
properties: {
name: {
schema: remotes::REMOTE_ID_SCHEMA,
schema: REMOTE_ID_SCHEMA,
},
},
},

View File

@ -117,6 +117,12 @@ pub const DATASTORE_SCHEMA: Schema = StringSchema::new("Datastore name.")
.max_length(32)
.schema();
pub const REMOTE_ID_SCHEMA: Schema = StringSchema::new("Remote ID.")
.format(&PROXMOX_SAFE_ID_FORMAT)
.min_length(3)
.max_length(32)
.schema();
// Complex type definitions

View File

@ -382,7 +382,7 @@ fn cert_mgmt_cli() -> CommandLineInterface {
schema: DATASTORE_SCHEMA,
},
remote: {
schema: crate::config::remotes::REMOTE_ID_SCHEMA,
schema: REMOTE_ID_SCHEMA,
},
"remote-store": {
schema: DATASTORE_SCHEMA,

View File

@ -7,6 +7,7 @@ use proxmox::api::{api, schema::*};
use proxmox::tools::{fs::replace_file, fs::CreateOptions};
use crate::api2::types::*;
use crate::section_config::{SectionConfig, SectionConfigData, SectionConfigPlugin};
lazy_static! {
@ -15,10 +16,6 @@ lazy_static! {
// fixme: define better schemas
pub const REMOTE_ID_SCHEMA: Schema = StringSchema::new("Remote ID.")
.min_length(3)
.schema();
pub const COMMENT_SCHEMA: Schema = StringSchema::new("Comment").schema();
pub const REMOTE_HOST_SCHEMA: Schema = StringSchema::new("Host IP address or DNS name.").schema();
pub const REMOTE_USERID_SCHEMA: Schema = StringSchema::new("User ID").schema();