func tf_to_vbox(d *schema.ResourceData, vm *vbox.Machine) error { var err error vm.OSType = "Linux_64" vm.CPUs = uint(d.Get("cpus").(int)) bytes, err := humanize.ParseBytes(d.Get("memory").(string)) vm.Memory = uint(bytes / humanize.MiByte) // VirtualBox expect memory to be in MiB units if err != nil { return err } vm.VRAM = 20 // Always 10MiB for vram vm.Flag = vbox.F_acpi | vbox.F_ioapic | vbox.F_rtcuseutc | vbox.F_pae | vbox.F_hwvirtex | vbox.F_nestedpaging | vbox.F_largepages | vbox.F_longmode | vbox.F_vtxvpid | vbox.F_vtxux vm.BootOrder = []string{"disk", "none", "none", "none"} vm.NICs, err = net_tf_to_vbox(d) userData := d.Get("user_data").(string) if userData != "" { err = vm.SetExtraData("user_data", userData) } return err }