]> git.proxmox.com Git - proxmox-backup.git/blobdiff - src/bin/proxmox-backup-manager.rs
worker task: allow to configure path and owner/group
[proxmox-backup.git] / src / bin / proxmox-backup-manager.rs
index 5c70d8c7816e05312ab03c44a9d39b1b1093402d..689f44db156e43e590542e20fb0bdb387f28f91d 100644 (file)
@@ -6,12 +6,16 @@ use serde_json::{json, Value};
 
 use proxmox::api::{api, cli::*, RpcEnvironment};
 
+use pbs_client::{connect_to_localhost, display_task_log, view_task_result};
 use pbs_tools::percent_encoding::percent_encode_component;
+use pbs_tools::json::required_string_param;
+use pbs_api_types::{
+    DATASTORE_SCHEMA, UPID_SCHEMA, REMOTE_ID_SCHEMA, REMOVE_VANISHED_BACKUPS_SCHEMA,
+    IGNORE_VERIFIED_BACKUPS_SCHEMA, VERIFICATION_OUTDATED_AFTER_SCHEMA,
+};
 
-use proxmox_backup::tools;
 use proxmox_backup::config;
-use proxmox_backup::api2::{self, types::* };
-use proxmox_backup::client::*;
+use proxmox_backup::api2;
 use proxmox_backup::server::wait_for_local_worker;
 
 mod proxmox_backup_manager;
@@ -35,7 +39,7 @@ async fn start_garbage_collection(param: Value) -> Result<Value, Error> {
 
     let output_format = get_output_format(&param);
 
-    let store = tools::required_string_param(&param, "store")?;
+    let store = required_string_param(&param, "store")?;
 
     let mut client = connect_to_localhost()?;
 
@@ -66,7 +70,7 @@ async fn garbage_collection_status(param: Value) -> Result<Value, Error> {
 
     let output_format = get_output_format(&param);
 
-    let store = tools::required_string_param(&param, "store")?;
+    let store = required_string_param(&param, "store")?;
 
     let client = connect_to_localhost()?;
 
@@ -89,12 +93,12 @@ fn garbage_collection_commands() -> CommandLineInterface {
         .insert("status",
                 CliCommand::new(&API_METHOD_GARBAGE_COLLECTION_STATUS)
                 .arg_param(&["store"])
-                .completion_cb("store", config::datastore::complete_datastore_name)
+                .completion_cb("store", pbs_config::datastore::complete_datastore_name)
         )
         .insert("start",
                 CliCommand::new(&API_METHOD_START_GARBAGE_COLLECTION)
                 .arg_param(&["store"])
-                .completion_cb("store", config::datastore::complete_datastore_name)
+                .completion_cb("store", pbs_config::datastore::complete_datastore_name)
         );
 
     cmd_def.into()
@@ -166,7 +170,7 @@ async fn task_list(param: Value) -> Result<Value, Error> {
 /// Display the task log.
 async fn task_log(param: Value) -> Result<Value, Error> {
 
-    let upid = tools::required_string_param(&param, "upid")?;
+    let upid = required_string_param(&param, "upid")?;
 
     let mut client = connect_to_localhost()?;
 
@@ -187,7 +191,7 @@ async fn task_log(param: Value) -> Result<Value, Error> {
 /// Try to stop a specific task.
 async fn task_stop(param: Value) -> Result<Value, Error> {
 
-    let upid_str = tools::required_string_param(&param, "upid")?;
+    let upid_str = required_string_param(&param, "upid")?;
 
     let mut client = connect_to_localhost()?;
 
@@ -379,15 +383,15 @@ fn main() {
             "pull",
             CliCommand::new(&API_METHOD_PULL_DATASTORE)
                 .arg_param(&["remote", "remote-store", "local-store"])
-                .completion_cb("local-store", config::datastore::complete_datastore_name)
-                .completion_cb("remote", config::remote::complete_remote_name)
+                .completion_cb("local-store", pbs_config::datastore::complete_datastore_name)
+                .completion_cb("remote", pbs_config::remote::complete_remote_name)
                 .completion_cb("remote-store", complete_remote_datastore_name)
         )
         .insert(
             "verify",
             CliCommand::new(&API_METHOD_VERIFY)
                 .arg_param(&["store"])
-                .completion_cb("store", config::datastore::complete_datastore_name)
+                .completion_cb("store", pbs_config::datastore::complete_datastore_name)
         )
         .insert("report",
             CliCommand::new(&API_METHOD_REPORT)