From fd3e14bcc6676b6f2e770a764351f82bee32738f Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Sat, 26 Oct 2024 04:25:50 -0500 Subject: start works with lib/virtigoxml Signed-off-by: Jeff Carr --- config.go | 5 +---- libvirtxml.go | 3 +-- main.go | 2 +- start.go | 30 ++++++++++++++++++++++++------ 4 files changed, 27 insertions(+), 13 deletions(-) diff --git a/config.go b/config.go index 5924315..9711a46 100644 --- a/config.go +++ b/config.go @@ -125,10 +125,7 @@ func writeConfigFile() { os.Exit(-1) } - if me.events.WriteConfigJSON() { - os.Exit(-1) - } - if me.events.WriteConfigTEXT() { + if err := me.events.ConfigRead(); err != nil { os.Exit(-1) } diff --git a/libvirtxml.go b/libvirtxml.go index fe2d723..470b332 100644 --- a/libvirtxml.go +++ b/libvirtxml.go @@ -212,8 +212,7 @@ func addEthernetTap(domcfg *libvirtxml.Domain, mac string) { who don't have bridge groups or proper cluster backend networking literally leaving this blank makes the interface 'tap0' */ - Target: &libvirtxml.DomainInterfaceTarget{ - }, + Target: &libvirtxml.DomainInterfaceTarget{}, } // Add the new disk to the domain configuration diff --git a/main.go b/main.go index 4168e0c..03e0551 100644 --- a/main.go +++ b/main.go @@ -106,7 +106,7 @@ func main() { } if argv.Start != "" { - startDropletXml(argv.Start) + newStart(argv.Start) os.Exit(0) } diff --git a/start.go b/start.go index 0a44e40..a0ce9bd 100644 --- a/start.go +++ b/start.go @@ -3,16 +3,15 @@ package main import ( - "fmt" "os" "path/filepath" + "go.wit.com/lib/virtigoxml" "go.wit.com/log" "libvirt.org/go/libvirtxml" ) -// generate the XML for 'virsh create' -func startDropletXml(start string) { +func newStart(start string) { meDrop := findDroplet(start) d := meDrop.pb if d == nil { @@ -22,11 +21,29 @@ func startDropletXml(start string) { log.Info("start droplet here:", d.Hostname) domcfg := &libvirtxml.Domain{} - addDefaultXml(domcfg, "standard.x86") + newAddXml(domcfg, "standard.x86") // addDefaultXml(domcfg, "memory") // addDefaultXml(domcfg, "network") - addDefaultXml(domcfg, "spice") - addDefaultXml(domcfg, "qcow") + newAddXml(domcfg, "qcow") + + virtigoxml.StartDropletXml(d, domcfg, start) +} + +func newAddXml(domcfg *libvirtxml.Domain, filename string) error { + fullname := "resources/xml/" + filename + ".xml" + pfile, err := resources.ReadFile(fullname) + if err != nil { + log.Println("ERROR:", err) + return err + } + + return virtigoxml.AddDefaultXml(domcfg, string(pfile)) +} + +/* +// generate the XML for 'virsh create' +func startDropletXml(start string) { + domcfg.Type = "kvm" domcfg.Name = d.Hostname @@ -82,6 +99,7 @@ func startDropletXml(start string) { writeoutXml(domcfg, d.Hostname) os.Exit(-1) } +*/ func findDisk(filename string) string { for _, dirname := range me.cluster.Dirs { -- cgit v1.2.3