28 lines
529 B
Go
28 lines
529 B
Go
package views
|
|
|
|
import (
|
|
"os"
|
|
"os/exec"
|
|
|
|
log "github.com/sirupsen/logrus"
|
|
)
|
|
|
|
func run(app *appView, args ...string) {
|
|
app.Suspend(func() {
|
|
if err := execute(args...); err != nil {
|
|
log.Error("Command failed:", err, args)
|
|
app.flash(flashErr, "Doh! command failed", err.Error())
|
|
}
|
|
})
|
|
}
|
|
|
|
func execute(args ...string) error {
|
|
bin, err := exec.LookPath("kubectl")
|
|
if err != nil {
|
|
return err
|
|
}
|
|
cmd := exec.Command(bin, args...)
|
|
cmd.Stdin, cmd.Stdout, cmd.Stderr = os.Stdin, os.Stdout, os.Stderr
|
|
return cmd.Run()
|
|
}
|