debian-forge-composer/internal/upload/vmware/vmware.go
Alexander Todorov 963e46f50d Always use .vmdk suffix after streamOptimized conversion
b/c vCenter gets confused by the .stream suffix
2020-08-26 14:45:31 +02:00

23 lines
459 B
Go

package vmware
import (
"os"
"os/exec"
"strings"
)
func OpenAsStreamOptimizedVmdk(imagePath string) (*os.File, error) {
newPath := strings.TrimSuffix(imagePath, ".vmdk") + "-stream.vmdk"
cmd := exec.Command(
"/usr/bin/qemu-img", "convert", "-O", "vmdk", "-o", "subformat=streamOptimized",
imagePath, newPath)
err := cmd.Run()
if err != nil {
return nil, err
}
f, err := os.Open(newPath)
if err != nil {
return nil, err
}
return f, err
}