diff --git a/apps/dashboard/src/lib/server/backends/proxmox/client.ts b/apps/dashboard/src/lib/server/backends/proxmox/client.ts index 430564c..51acddd 100644 --- a/apps/dashboard/src/lib/server/backends/proxmox/client.ts +++ b/apps/dashboard/src/lib/server/backends/proxmox/client.ts @@ -417,4 +417,12 @@ export class ProxmoxClient { .json>(); return res.data.result; } + + async updateHAResources(sid: string, params: Record): Promise { + await this.api + .put(`cluster/ha/resources/${sid}`, { + body: this.toForm(params) + }) + .json>(); + } } diff --git a/apps/dashboard/src/lib/server/backends/proxmox/index.ts b/apps/dashboard/src/lib/server/backends/proxmox/index.ts index e9388d2..26c5e49 100644 --- a/apps/dashboard/src/lib/server/backends/proxmox/index.ts +++ b/apps/dashboard/src/lib/server/backends/proxmox/index.ts @@ -724,6 +724,9 @@ export class ProxmoxBackend implements VmBackend { async killVm(id: string, proxmoxId?: number): Promise { clearProxmoxReadCaches(); const { node, vmid } = await this.resolve(id, proxmoxId); + await this.client.updateHAResources(`vm:${vmid}`, { + state: 'disabled' + }); const upid = await this.client.stopVm(node, vmid); await this.client.waitForTask(node, upid); }