[pdm-devel] [PATCH datacenter-manager v2 2/4] pdm-client: add target-endpoint parameter to remote migration methods

Dominik Csapak d.csapak at proxmox.com
Tue Jan 14 12:21:38 CET 2025


and set it to None for all users for now

Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
changes from v1:
* fix cli code to set that parameter to None
* also fix UI code in one go so the repo state is compileable

 cli/client/src/pve.rs           | 4 ++--
 lib/pdm-client/src/lib.rs       | 8 ++++++++
 ui/src/widget/migrate_window.rs | 2 ++
 3 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/cli/client/src/pve.rs b/cli/client/src/pve.rs
index c355293..1b12403 100644
--- a/cli/client/src/pve.rs
+++ b/cli/client/src/pve.rs
@@ -618,7 +618,7 @@ async fn remote_migrate_qemu(
 
     let client = client()?;
     let upid = client
-        .pve_qemu_remote_migrate(&remote, node.as_deref(), vmid, target, params)
+        .pve_qemu_remote_migrate(&remote, node.as_deref(), vmid, target, None, params)
         .await?;
     println!("upid: {upid}");
     let status = client.pve_wait_for_task(&upid).await?;
@@ -996,7 +996,7 @@ async fn remote_migrate_lxc(
 
     let client = client()?;
     let upid = client
-        .pve_lxc_remote_migrate(&remote, node.as_deref(), vmid, target, params)
+        .pve_lxc_remote_migrate(&remote, node.as_deref(), vmid, target, None, params)
         .await?;
     println!("upid: {upid}");
     let status = client.pve_wait_for_task(&upid).await?;
diff --git a/lib/pdm-client/src/lib.rs b/lib/pdm-client/src/lib.rs
index 4ef560e..1253ded 100644
--- a/lib/pdm-client/src/lib.rs
+++ b/lib/pdm-client/src/lib.rs
@@ -488,6 +488,7 @@ impl<T: HttpApiClient> PdmClient<T> {
         node: Option<&str>,
         vmid: u32,
         target: String,
+        target_endpoint: Option<&str>,
         params: RemoteMigrateQemu,
     ) -> Result<RemoteUpid, Error> {
         let path = format!("/api2/extjs/pve/remotes/{remote}/qemu/{vmid}/remote-migrate");
@@ -496,6 +497,9 @@ impl<T: HttpApiClient> PdmClient<T> {
         if let Some(node) = node {
             request["node"] = node.into();
         }
+        if let Some(target_endpoint) = target_endpoint {
+            request["target-endpoint"] = target_endpoint.into();
+        }
         Ok(self.0.post(&path, &request).await?.expect_json()?.data)
     }
 
@@ -581,6 +585,7 @@ impl<T: HttpApiClient> PdmClient<T> {
         node: Option<&str>,
         vmid: u32,
         target: String,
+        target_endpoint: Option<&str>,
         params: RemoteMigrateLxc,
     ) -> Result<RemoteUpid, Error> {
         let path = format!("/api2/extjs/pve/remotes/{remote}/lxc/{vmid}/remote-migrate");
@@ -589,6 +594,9 @@ impl<T: HttpApiClient> PdmClient<T> {
         if let Some(node) = node {
             request["node"] = node.into();
         }
+        if let Some(target_endpoint) = target_endpoint {
+            request["target-endpoint"] = target_endpoint.into();
+        }
         Ok(self.0.post(&path, &request).await?.expect_json()?.data)
     }
 
diff --git a/ui/src/widget/migrate_window.rs b/ui/src/widget/migrate_window.rs
index c87cf9a..42b4e95 100644
--- a/ui/src/widget/migrate_window.rs
+++ b/ui/src/widget/migrate_window.rs
@@ -174,6 +174,7 @@ impl PdmMigrateWindow {
                             None,
                             guest_info.vmid,
                             target_remote.to_string(),
+                            None,
                             migrate_opts,
                         )
                         .await?
@@ -218,6 +219,7 @@ impl PdmMigrateWindow {
                             None,
                             guest_info.vmid,
                             target_remote.to_string(),
+                            None,
                             migrate_opts,
                         )
                         .await?
-- 
2.39.5





More information about the pdm-devel mailing list