summaryrefslogtreecommitdiff
path: root/xml.go
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2024-10-18 07:40:06 -0500
committerJeff Carr <[email protected]>2024-10-18 07:40:06 -0500
commitc9ccf688c27749dfbab31004b6258dbb759962b2 (patch)
treed35d7dc4b621bf3a282604f6cd2fe9b331813af7 /xml.go
parent14dadbcf3ce8d732354d2c4ef30f3374f80950f9 (diff)
start simple xml handling
Signed-off-by: Jeff Carr <[email protected]>
Diffstat (limited to 'xml.go')
-rw-r--r--xml.go24
1 files changed, 22 insertions, 2 deletions
diff --git a/xml.go b/xml.go
index 2b1e7bb..dc856b3 100644
--- a/xml.go
+++ b/xml.go
@@ -10,21 +10,41 @@ import (
"libvirt.org/go/libvirtxml"
)
-func makeXml(d *DropletT) {
+func makeStandardXml(d *DropletT) {
log.Info("create new xml file for:", d.Hostname)
domcfg := &libvirtxml.Domain{}
- addDefaults(domcfg, d.Hostname)
addDefaults(domcfg, "standard.x86")
addDefaults(domcfg, "memory")
addDefaults(domcfg, "network")
addDefaults(domcfg, "spice")
addDefaults(domcfg, "qcow")
+ addDefaults(domcfg, d.Hostname)
fmt.Printf("Virt type %s\n", domcfg.Type)
fmt.Printf("Virt name %s\n", domcfg.Name)
fmt.Printf("Virt UUID %s\n", domcfg.UUID)
fmt.Printf("Virt Memory %s\n", domcfg.Memory)
+ // domcfg.Memory = 3333
+ fmt.Printf("Virt Devices %s\n", domcfg.Devices.Disks)
+ // log.Spew(domcfg.Devices)
+ // fmt.Printf("Virt Devices %s\n", domcfg.DiskDriver)
+ log.Info("DISKS")
+ log.Info("DISKS")
+ log.Info("")
+ // structure DomainDeviceList shows what can be done as a range
+ for i, x := range domcfg.Devices.Disks {
+ // Create a new DomainDiskSourceFile struct
+ newSource := &libvirtxml.DomainDiskSourceFile{
+ File: "mynew.qcow2", // Set the file name here
+ }
+
+ // Assign it to the disk's source
+ domcfg.Devices.Disks[i].Source.File = newSource
+
+ // fmt.Printf("Disk Source %s\n", name)
+ fmt.Printf("Disk Device %s\n", x.Source.File)
+ }
xmldoc, err := domcfg.Marshal()