q/src/cli/Run.go
2025-02-07 19:41:54 +01:00

31 lines
431 B
Go

package cli
import (
"fmt"
"os"
"os/exec"
)
// Run builds and runs the executable.
func Run(args []string) int {
b, err := buildExecutable(args)
if err != nil {
fmt.Fprintln(os.Stderr, err)
return exit(err)
}
cmd := exec.Command(b.Executable())
cmd.Stdout = os.Stdout
cmd.Stdin = os.Stdin
cmd.Stderr = os.Stderr
err = cmd.Run()
if err != nil {
fmt.Fprintln(os.Stderr, err)
return exit(err)
}
return 0
}