ytdl-web/ytdl/version.go

40 lines
457 B
Go
Raw Normal View History

2023-04-14 22:42:44 -04:00
package ytdl
import (
"bytes"
"os/exec"
"strings"
"sync"
)
var (
version string
versionOnce sync.Once
)
func GetVersion() string {
var err error
versionOnce.Do(func() {
cmd := exec.Command(
"yt-dlp",
"--version",
)
var out bytes.Buffer
cmd.Stdout = &out
err = cmd.Run()
if err != nil {
return
}
version = strings.TrimSpace(out.String())
})
if err != nil {
return "Error getting version"
}
return version
}