fix: narrow exception catches in PingGuestAgent and ImportPveOvaCmdlet

Co-authored-by: GoodOlClint <151449+GoodOlClint@users.noreply.github.com>
Agent-Logs-Url: https://github.com/GoodOlClint/PSProxmoxVE/sessions/e7930807-5536-4c55-96f8-0712aee44e00
This commit is contained in:
copilot-swe-agent[bot]
2026-03-24 23:35:27 +00:00
parent d91c93aca2
commit f400336803
2 changed files with 6 additions and 3 deletions
+2 -1
View File
@@ -550,8 +550,9 @@ namespace PSProxmoxVE.Core.Services
client.PostAsync($"nodes/{Uri.EscapeDataString(node)}/qemu/{vmid}/agent/ping").GetAwaiter().GetResult();
return true;
}
catch (Exception ex) when (ex is not OutOfMemoryException and not StackOverflowException)
catch (PSProxmoxVE.Core.Exceptions.PveApiException)
{
// Treat API-level failures for this endpoint as "guest agent not responding".
return false;
}
finally
@@ -2,8 +2,10 @@ using System;
using System.Collections.Generic;
using System.IO;
using System.Management.Automation;
using System.Net;
using Newtonsoft.Json.Linq;
using PSProxmoxVE.Core.Client;
using PSProxmoxVE.Core.Exceptions;
using PSProxmoxVE.Core.Models.Vms;
using PSProxmoxVE.Core.Services;
@@ -274,9 +276,9 @@ namespace PSProxmoxVE.Cmdlets.Vms
var vm = vmService.GetVm(session, Node, vmId);
WriteObject(vm);
}
catch (Exception ex) when (ex is not OutOfMemoryException and not StackOverflowException)
catch (PveApiException ex) when (ex.StatusCode == HttpStatusCode.NotFound)
{
// If the VM isn't queryable yet (e.g. disk import still running), return basic info
// VM not yet queryable (e.g. disk import still in progress); return basic info
WriteVerbose($"VM retrieval failed, returning basic info: {ex.Message}");
WriteObject(new PveVm
{