]> git.proxmox.com Git - proxmox-backup.git/blob - src/api2/version.rs
use const api definitions
[proxmox-backup.git] / src / api2 / version.rs
1 use failure::*;
2
3 use crate::api_schema::*;
4 use crate::api_schema::router::*;
5 use serde_json::{json, Value};
6
7 pub const PROXMOX_PKG_VERSION: &str =
8 concat!(
9 env!("CARGO_PKG_VERSION_MAJOR"),
10 ".",
11 env!("CARGO_PKG_VERSION_MINOR"),
12 );
13 pub const PROXMOX_PKG_RELEASE: &str = env!("CARGO_PKG_VERSION_PATCH");
14 pub const PROXMOX_PKG_REPOID: &str = env!("CARGO_PKG_REPOSITORY");
15
16 fn get_version(
17 _param: Value,
18 _info: &ApiMethod,
19 _rpcenv: &mut dyn RpcEnvironment,
20 ) -> Result<Value, Error> {
21
22 Ok(json!({
23 "version": PROXMOX_PKG_VERSION,
24 "release": PROXMOX_PKG_RELEASE,
25 "repoid": PROXMOX_PKG_REPOID
26 }))
27 }
28
29 pub const ROUTER: Router = Router::new()
30 .get(
31 &ApiMethod::new(
32 &ApiHandler::Sync(&get_version),
33 &ObjectSchema::new("Proxmox Backup Server API version.", &[])
34 )
35 );
36