<!doctype html>
<html>
 <head> 
  <meta charset="UTF-8"> 
 </head>
 <body>
  <div>
   sry just now saw that Lukas included a (nearly?) identical patch in his task sync series
  </div> 
  <div class="default-style">
   <a href="https://lore.proxmox.com/pdm-devel/20250418083210.74982-6-l.wagner@proxmox.com/">https://lore.proxmox.com/pdm-devel/20250418083210.74982-6-l.wagner@proxmox.com/</a>
  </div> 
  <blockquote type="cite"> 
   <div>
    On 2025-05-13 15:04 CEST Dominik Csapak <<a href="mailto:d.csapak@proxmox.com">d.csapak@proxmox.com</a>> wrote:
   </div> 
   <div>
     
   </div> 
   <div>
     
   </div> 
   <div>
    that trait changed some types, so we have to adapt here, namely
   </div> 
   <div>
    * use the crate::connection::PveClient type instead of typing it manually
   </div> 
   <div>
    * use Arc instead of Box
   </div> 
   <div>
     
   </div> 
   <div>
    Signed-off-by: Dominik Csapak <<a href="mailto:d.csapak@proxmox.com">d.csapak@proxmox.com</a>>
   </div> 
   <div>
    ---
   </div> 
   <div>
    server/src/test_support/fake_remote.rs | 26 +++++++++++++-------------
   </div> 
   <div>
    1 file changed, 13 insertions(+), 13 deletions(-)
   </div> 
   <div>
     
   </div> 
   <div>
    diff --git a/server/src/test_support/fake_remote.rs b/server/src/test_support/fake_remote.rs
   </div> 
   <div>
    index 0161d8e..c52bc32 100644
   </div> 
   <div>
    --- a/server/src/test_support/fake_remote.rs
   </div> 
   <div>
    +++ b/server/src/test_support/fake_remote.rs
   </div> 
   <div>
    @@ -1,4 +1,4 @@
   </div> 
   <div>
    -use std::{collections::HashMap, time::Duration};
   </div> 
   <div>
    +use std::{collections::HashMap, sync::Arc, time::Duration};
   </div> 
   <div>
     
   </div> 
   <div>
    use anyhow::{bail, Error};
   </div> 
   <div>
    use pdm_api_types::{remotes::Remote, Authid, ConfigDigest};
   </div> 
   <div>
    @@ -6,13 +6,16 @@ use pdm_config::remotes::RemoteConfig;
   </div> 
   <div>
    use proxmox_product_config::ApiLockGuard;
   </div> 
   <div>
    use proxmox_section_config::typed::SectionConfigData;
   </div> 
   <div>
    use pve_api_types::{
   </div> 
   <div>
    - client::PveClient, ClusterMetrics, ClusterMetricsData, ClusterNodeIndexResponse,
   </div> 
   <div>
    - ClusterNodeIndexResponseStatus, ClusterResource, ClusterResourceKind, ClusterResourceType,
   </div> 
   <div>
    - ListTasks, ListTasksResponse, PveUpid, StorageContent,
   </div> 
   <div>
    + ClusterMetrics, ClusterMetricsData, ClusterNodeIndexResponse, ClusterNodeIndexResponseStatus,
   </div> 
   <div>
    + ClusterResource, ClusterResourceKind, ClusterResourceType, ListTasks, ListTasksResponse,
   </div> 
   <div>
    + PveUpid, StorageContent,
   </div> 
   <div>
    };
   </div> 
   <div>
    use serde::Deserialize;
   </div> 
   <div>
     
   </div> 
   <div>
    -use crate::{connection::ClientFactory, pbs_client::PbsClient};
   </div> 
   <div>
    +use crate::{
   </div> 
   <div>
    + connection::{ClientFactory, PveClient},
   </div> 
   <div>
    + pbs_client::PbsClient,
   </div> 
   <div>
    +};
   </div> 
   <div>
     
   </div> 
   <div>
    #[derive(Deserialize, Clone)]
   </div> 
   <div>
    #[serde(rename_all = "kebab-case")]
   </div> 
   <div>
    @@ -74,8 +77,8 @@ impl FakeRemoteConfig {
   </div> 
   <div>
     
   </div> 
   <div>
    #[async_trait::async_trait]
   </div> 
   <div>
    impl ClientFactory for FakeClientFactory {
   </div> 
   <div>
    - fn make_pve_client(&self, _remote: &Remote) -> Result<Box<dyn PveClient + Send + Sync>, Error> {
   </div> 
   <div>
    - Ok(Box::new(FakePveClient {
   </div> 
   <div>
    + fn make_pve_client(&self, _remote: &Remote) -> Result<Arc<PveClient>, Error> {
   </div> 
   <div>
    + Ok(Arc::new(FakePveClient {
   </div> 
   <div>
    nr_of_vms: self.config.vms_per_pve_remote,
   </div> 
   <div>
    nr_of_cts: self.config.cts_per_pve_remote,
   </div> 
   <div>
    nr_of_nodes: self.config.nodes_per_pve_remote,
   </div> 
   <div>
    @@ -88,7 +91,7 @@ impl ClientFactory for FakeClientFactory {
   </div> 
   <div>
    &self,
   </div> 
   <div>
    _remote: &Remote,
   </div> 
   <div>
    _target_endpoint: Option<&str>,
   </div> 
   <div>
    - ) -> Result<Box<dyn PveClient + Send + Sync>, Error> {
   </div> 
   <div>
    + ) -> Result<Arc<PveClient>, Error> {
   </div> 
   <div>
    bail!("not implemented")
   </div> 
   <div>
    }
   </div> 
   <div>
     
   </div> 
   <div>
    @@ -96,10 +99,7 @@ impl ClientFactory for FakeClientFactory {
   </div> 
   <div>
    bail!("not implemented")
   </div> 
   <div>
    }
   </div> 
   <div>
     
   </div> 
   <div>
    - async fn make_pve_client_and_login(
   </div> 
   <div>
    - &self,
   </div> 
   <div>
    - _remote: &Remote,
   </div> 
   <div>
    - ) -> Result<Box<dyn PveClient + Send + Sync>, Error> {
   </div> 
   <div>
    + async fn make_pve_client_and_login(&self, _remote: &Remote) -> Result<Arc<PveClient>, Error> {
   </div> 
   <div>
    bail!("not implemented")
   </div> 
   <div>
    }
   </div> 
   <div>
     
   </div> 
   <div>
    @@ -118,7 +118,7 @@ struct FakePveClient {
   </div> 
   <div>
    }
   </div> 
   <div>
     
   </div> 
   <div>
    #[async_trait::async_trait]
   </div> 
   <div>
    -impl PveClient for FakePveClient {
   </div> 
   <div>
    +impl pve_api_types::client::PveClient for FakePveClient {
   </div> 
   <div>
    async fn cluster_resources(
   </div> 
   <div>
    &self,
   </div> 
   <div>
    _ty: Option<ClusterResourceKind>,
   </div> 
   <div>
    --
   </div> 
   <div>
    2.39.5
   </div> 
   <div>
     
   </div> 
   <div>
     
   </div> 
   <div>
     
   </div> 
   <div>
    _______________________________________________
   </div> 
   <div>
    pdm-devel mailing list
   </div> 
   <div>
    <a href="mailto:pdm-devel@lists.proxmox.com">pdm-devel@lists.proxmox.com</a>
   </div> 
   <div>
    <a href="https://lists.proxmox.com/cgi-bin/mailman/listinfo/pdm-devel" target="_blank" rel="noopener">https://lists.proxmox.com/cgi-bin/mailman/listinfo/pdm-devel</a>
   </div> 
  </blockquote>
 </body>
</html>