Skip to content

Commit ffae0e7

Browse files
authored
Merge pull request #8 from irabbi360/dev
vm storage detach remove
2 parents 3eaaba9 + 4df3c1d commit ffae0e7

File tree

1 file changed

+26
-7
lines changed

1 file changed

+26
-7
lines changed

src/ProxmoxNodeVm.php

Lines changed: 26 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -819,7 +819,7 @@ public function attachDisk(string $node, int $vmid, array $params)
819819
$result = $this->makeRequest('POST', "nodes/{$node}/qemu/{$vmid}/config", $diskParams);
820820

821821
if (!isset($result['data'])) {
822-
throw new Exception('Failed to attach disk: No response data received');
822+
return ResponseHelper::generate(false,"Failed to attach disk: No response data received");
823823
}
824824

825825
$successResponse = [
@@ -835,14 +835,33 @@ public function attachDisk(string $node, int $vmid, array $params)
835835
}
836836
}
837837

838-
public function detachDisk($node, $vmid, $disk)
838+
/**
839+
* @throws Exception
840+
*/
841+
public function detachDisk(string $node, int $vmid, string $disk, bool $type = false)
839842
{
840-
// API endpoint to remove a disk
841-
$result = $this->makeRequest('DELETE', "nodes/{$node}/qemu/{$vmid}/config", [
842-
'delete' => $disk, // Specify the disk to delete (e.g., 'scsi0')
843-
]);
843+
try {
844+
// API endpoint to remove a disk
845+
$result = $this->makeRequest('POST', "nodes/{$node}/qemu/{$vmid}/config", [
846+
'delete' => $disk, // Specify the disk to delete (e.g., 'scsi0')
847+
'force' => $type
848+
]);
849+
850+
if (!isset($result['data'])) {
851+
return ResponseHelper::generate(false,"Failed to detach disk");
852+
}
844853

845-
return $result;
854+
$successResponse = [
855+
'node' => $node,
856+
'vmid' => $vmid,
857+
'disk' => $disk,
858+
'data' => $result['data']
859+
];
860+
861+
return ResponseHelper::generate(true, 'Disk attach success', $successResponse);
862+
} catch (Exception $e) {
863+
return ResponseHelper::generate(false,"Failed to detach disk: " . $e->getMessage());
864+
}
846865
}
847866

848867
/**

0 commit comments

Comments
 (0)