Mercurial > hg > Members > shoshi > webvirt
diff app/controllers/pages_controller.php @ 1:eb4fee3d9bb8
added StoragePools management functions (storage_controller)
author | Shoshi TAMAKI <shoshi@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 27 Jul 2011 00:00:25 +0900 |
parents | 261e66bd5a0c |
children |
line wrap: on
line diff
--- a/app/controllers/pages_controller.php Sun Jul 24 21:08:31 2011 +0900 +++ b/app/controllers/pages_controller.php Wed Jul 27 00:00:25 2011 +0900 @@ -16,28 +16,55 @@ $this->set("title_for_laytout",WebVirtUtil::$wvirt_config["APP_NAME"]." - ".WebVirtUtil::$wvirt_config["APP_VERSION"]); - $hostname = libvirt_get_hostname($con); + $hostname = libvirt_connect_get_hostname($con); $this->set("hostname",$hostname); $nodeinfo = libvirt_node_get_info($con); $this->set("nodeinfo",$nodeinfo); $this->set("actions",WebVirtUtil::$node_actions); $domains = libvirt_list_domains($con); - - $vmlist = array(); + $domlist = array(); foreach($domains as $dom){ - $name = libvirt_domain_get_name($dom); - $info = libvirt_domain_get_info($dom); + $res = libvirt_domain_lookup_by_name($con,$dom); + $name = libvirt_domain_get_name($res); + $info = libvirt_domain_get_info($res); + $status = "NO STATE"; + + switch($info["state"]){ + case VIR_DOMAIN_NOSTATE: + $status = "NO STATE"; + break; + case VIR_DOMAIN_RUNNING: + $status = "RUNNING"; + break; + case VIR_DOMAIN_BLOCKED: + $status = "BLOCKED"; + break; + case VIR_DOMAIN_PAUSED: + $status = "PAUSED"; + break; + case VIR_DOMAIN_SHUTDOWN: + $status = "SHUTDOWN"; + break; + case VIR_DOMAIN_SHUTOFF: + $status = "SHUTOFF"; + break; + case VIR_DOMAIN_CRASHED: + $status = "CRASHED"; + break; + } + $actions = array(); - array_push($vmlist,array("name" => $name, + array_push($domlist,array("name" => $name, "memory" => $info["memory"], "nrVirtCpu" => $info["nrVirtCpu"], + "status" => $status, "actions" => WebVirtUtil::$domain_actions, - "uuid" => libvirt_domain_get_uuid_string($dom), + "uuid" => libvirt_domain_get_uuid_string($res), )); } - $this->set("domains",$vmlist); + $this->set("domains",$domlist); } }