modified: README.md modified: support-provisioning-portal/assets/portal.css modified: support-provisioning-portal/assets/portal.js modified: support-provisioning-portal/includes/class-spp-activator.php modified: support-provisioning-portal/includes/class-spp-admin-page.php modified: support-provisioning-portal/includes/class-spp-http-proxmox-client.php modified: support-provisioning-portal/includes/class-spp-mock-proxmox-client.php new file: support-provisioning-portal/includes/class-spp-permissions.php modified: support-provisioning-portal/includes/class-spp-plugin.php modified: support-provisioning-portal/includes/class-spp-repository.php modified: support-provisioning-portal/includes/class-spp-rest-controller.php modified: support-provisioning-portal/includes/class-spp-shortcode.php modified: support-provisioning-portal/includes/interface-spp-proxmox-client.php modified: support-provisioning-portal/support-provisioning-portal.php
33 lines
702 B
PHP
33 lines
702 B
PHP
<?php
|
|
|
|
if (!defined('ABSPATH')) {
|
|
exit;
|
|
}
|
|
|
|
interface SPP_Proxmox_Client
|
|
{
|
|
/**
|
|
* @return array<int, array{vmId:int,name:string,cpuCores:int,memoryMb:int,diskGb:int,status:string}>
|
|
*/
|
|
public function list_templates(): array;
|
|
|
|
/**
|
|
* @param array<string, int|string> $input
|
|
* @return array{vm_id:int}
|
|
*/
|
|
public function clone_vm(array $input): array;
|
|
|
|
public function start_vm(int $vm_id): void;
|
|
|
|
public function stop_vm(int $vm_id): void;
|
|
|
|
public function delete_vm(int $vm_id): void;
|
|
|
|
public function get_status(int $vm_id): string;
|
|
|
|
/**
|
|
* @return array<int, string>
|
|
*/
|
|
public function get_ip_addresses(int $vm_id): array;
|
|
}
|