@@ -2,7 +2,6 @@ package main
22
33import (
44 "fmt"
5- "log"
65 "os"
76
87 "github.com/utkin-tech/devmachines/cloudinit"
@@ -21,36 +20,38 @@ func main() {
2120 os .Exit (1 )
2221 }
2322
24- _ , err = disk .SetupDisk (user )
23+ diskArgs , err : = disk .SetupDisk (user )
2524 if err != nil {
26- fmt .Printf ("error : %v\n " , err )
25+ fmt .Printf ("failed to setup disk : %v\n " , err )
2726 os .Exit (1 )
2827 }
2928
30- _ , err = cloudinit .SetupCloudInit (net , user )
29+ cloudInitArgs , err : = cloudinit .SetupCloudInit (net , user )
3130 if err != nil {
32- log .Fatal (err )
31+ fmt .Printf ("failed to setup cloud-init: %v\n " , err )
32+ os .Exit (1 )
3333 }
3434
35- _ , err = network .SetupBridge (net )
35+ bridgeArgs , err : = network .SetupBridge (net )
3636 if err != nil {
37- fmt .Printf ("Error setting up network bridge: %v\n " , err )
37+ fmt .Printf ("failed to setup network bridge: %v\n " , err )
3838 return
3939 }
4040
41- // config := QEMUConfig{
42- // MemoryMB: 2048,
43- // CPUCores: 2,
44- // DiskImagePath: "/blobs/disk.img",
45- // SeedImagePath: "/blobs/seed.iso",
46- // TapInterface: "tap0",
47- // Acceleration: true,
48- // Output: os.Stdout,
49- // Wait: true,
50- // }
51-
52- // if err := LaunchQEMUVM(config); err != nil {
53- // fmt.Printf("Error launching VM: %v\n", err)
54- // os.Exit(1)
55- // }
41+ config := QEMUConfig {
42+ MemoryMB : 2048 ,
43+ CPUCores : 2 ,
44+ Output : os .Stdout ,
45+ Wait : true ,
46+ }
47+
48+ var args []string
49+ args = append (args , diskArgs ... )
50+ args = append (args , cloudInitArgs ... )
51+ args = append (args , bridgeArgs ... )
52+
53+ if err := StartVM (config , args ... ); err != nil {
54+ fmt .Printf ("Error launching VM: %v\n " , err )
55+ os .Exit (1 )
56+ }
5657}
0 commit comments