diff options
| author | Jeff Carr <[email protected]> | 2024-10-11 23:18:45 -0500 | 
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2024-10-11 23:18:45 -0500 | 
| commit | 3636bc167090ede51f1edb1ac3f82ba0bbe1808f (patch) | |
| tree | 2e31d2b0b418f075361c1761524b59aba7611e14 | |
| parent | e35b47fd5f098be0a7a9c4615cd1e7858251ae99 (diff) | |
persistant and dumps out vms
Signed-off-by: Jeff Carr <[email protected]>
| -rw-r--r-- | Makefile | 1 | ||||
| -rw-r--r-- | http.go | 15 | ||||
| -rw-r--r-- | hypervisior.go | 6 | 
3 files changed, 20 insertions, 2 deletions
@@ -7,6 +7,7 @@ REDOMOD = $(shell if [ -e go.sum ]; then  echo go.sum exists; else GO111MODULE=  all:  	GO111MODULE=off go build -v -x -ldflags "-X main.Version=${VERSION} -X gui.GUIVERSION=${VERSION}"  	./virtigod --version +	sudo ./virtigod  # this is for release builds using the go.mod files  release-build: @@ -18,6 +18,7 @@ func okHandler(w http.ResponseWriter, r *http.Request) {  	var tmp string  	tmp = cleanURL(r.URL.Path) +	log.Info("Got URL:", tmp)  	if tmp == "/" {  		fmt.Fprintln(w, "OK")  		return @@ -31,11 +32,23 @@ func okHandler(w http.ResponseWriter, r *http.Request) {  		fmt.Fprintln(w, j)  		return  	} + +	if tmp == "/vms" { +		s := poolHypervisor(hv) +		fmt.Fprint(w, s) +		return +	} +  	if tmp == "/favicon.ico" {  		writeFile(w, "ipv6.png")  		return  	} -	// used for uptime monitor checking +	if tmp == "/uptime" { +		writeFile(w, "uptime.html") +		return +	} + +	// used for uptime monitor checking (like Kuma)  	if tmp == "/uptime" {  		writeFile(w, "uptime.html")  		return diff --git a/hypervisior.go b/hypervisior.go index 02ee539..e338889 100644 --- a/hypervisior.go +++ b/hypervisior.go @@ -22,7 +22,8 @@ import (  	"github.com/digitalocean/go-qemu/qemu"  ) -func poolHypervisor(hv *hypervisor.Hypervisor) { +func poolHypervisor(hv *hypervisor.Hypervisor) string { +	var out string  	// fmt.Printf("\n**********Domains**********\n")  	domains, err := hv.Domains()  	if err != nil { @@ -57,10 +58,13 @@ func poolHypervisor(hv *hypervisor.Hypervisor) {  		}  		if status == qemu.StatusRunning {  			fmt.Println("ON ", name, drives) +			out += "ON " + name + "\n"  		} else {  			fmt.Println("OFF", status, name, drives) +			out += "OFF " + name + "\n"  		}  	} +	return out  }  func displayBlockDevices(domain *qemu.Domain) {  | 
