From 46598e0a153559c5bb1ecddecd320c7c67f2c04f Mon Sep 17 00:00:00 2001 From: tbrehm <t.brehm@ispconfig.org> Date: Fri, 22 Jul 2011 05:48:21 -0400 Subject: [PATCH] Added VM actions start, stop, restart and creating of ostemplates. --- server/mods-available/remoteaction_core_module.inc.php | 35 +++++++++++++++++++++++++++++++++++ 1 files changed, 35 insertions(+), 0 deletions(-) diff --git a/server/mods-available/remoteaction_core_module.inc.php b/server/mods-available/remoteaction_core_module.inc.php index 6bf3ad3..678b4be 100644 --- a/server/mods-available/remoteaction_core_module.inc.php +++ b/server/mods-available/remoteaction_core_module.inc.php @@ -126,6 +126,41 @@ * we stop executing the actions not to waste more time */ return; } + if ($action['action_type'] == 'openvz_start_vm') { + $veid = intval($action['action_param']); + if($veid > 0) { + exec("vzctl start $veid"); + } + } + if ($action['action_type'] == 'openvz_stop_vm') { + $veid = intval($action['action_param']); + if($veid > 0) { + exec("vzctl stop $veid"); + } + } + if ($action['action_type'] == 'openvz_restart_vm') { + $veid = intval($action['action_param']); + if($veid > 0) { + exec("vzctl restart $veid"); + } + } + if ($action['action_type'] == 'openvz_create_ostpl') { + $parts = explode(':',$action['action_param']); + $veid = intval($parts[0]); + $template_cache_dir = '/vz/template/cache/'; + $template_name = escapeshellcmd($parts[1]); + if($veid > 0 && $template_name != '' && is_dir($template_cache_dir)) { + $command = "vzdump --suspend --compress --stdexcludes --dumpdir $template_cache_dir $veid"; + exec($command); + exec("mv ".$template_cache_dir."vzdump-openvz-".$veid."*.tgz ".$template_cache_dir.$template_name.".tar.gz"); + exec("rm -f ".$template_cache_dir."vzdump-openvz-".$veid."*.log"); + } + /* this action takes so much time, + * we stop executing the actions not to waste more time */ + return; + } + + } } } -- Gitblit v1.9.1