src/bin/proxmox-backup-manager.rs - list remotes: do not use client, call directly
This commit is contained in:
		@ -5,7 +5,7 @@ use failure::*;
 | 
			
		||||
use serde_json::{json, Value};
 | 
			
		||||
use chrono::{Local, TimeZone};
 | 
			
		||||
 | 
			
		||||
use proxmox::api::{api, cli::*};
 | 
			
		||||
use proxmox::api::{api, cli::*, RpcEnvironment, ApiHandler};
 | 
			
		||||
 | 
			
		||||
use proxmox_backup::configdir;
 | 
			
		||||
use proxmox_backup::tools;
 | 
			
		||||
@ -84,16 +84,15 @@ fn connect() -> Result<HttpClient, Error> {
 | 
			
		||||
    }
 | 
			
		||||
)]
 | 
			
		||||
/// List configured remotes.
 | 
			
		||||
async fn list_remotes(param: Value) -> Result<Value, Error> {
 | 
			
		||||
fn list_remotes(param: Value, rpcenv: &mut dyn RpcEnvironment) -> Result<Value, Error> {
 | 
			
		||||
 | 
			
		||||
    let output_format = param["output-format"].as_str().unwrap_or("text").to_owned();
 | 
			
		||||
 | 
			
		||||
    let client = connect()?;
 | 
			
		||||
 | 
			
		||||
    let mut result = client.get("api2/json/config/remote", None).await?;
 | 
			
		||||
 | 
			
		||||
    let mut data = result["data"].take();
 | 
			
		||||
    let schema = api2::config::remote::API_RETURN_SCHEMA_LIST_REMOTES;
 | 
			
		||||
    let info = &api2::config::remote::API_METHOD_LIST_REMOTES;
 | 
			
		||||
    let mut data = match info.handler {
 | 
			
		||||
        ApiHandler::Sync(handler) => (handler)(param, info, rpcenv)?,
 | 
			
		||||
        _ => unreachable!(),
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    let mut column_config = Vec::new();
 | 
			
		||||
    column_config.push(ColumnConfig::new("name"));
 | 
			
		||||
@ -108,7 +107,7 @@ async fn list_remotes(param: Value) -> Result<Value, Error> {
 | 
			
		||||
        .column_config(column_config);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    format_and_print_result_full(&mut data, schema, &output_format, &options);
 | 
			
		||||
    format_and_print_result_full(&mut data, info.returns, &output_format, &options);
 | 
			
		||||
 | 
			
		||||
    Ok(Value::Null)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user