refactor: internal package
This commit is contained in:
31
internal/execy/execy.go
Normal file
31
internal/execy/execy.go
Normal file
@@ -0,0 +1,31 @@
|
||||
// Package execy runs external commands.
|
||||
package execy
|
||||
|
||||
import (
|
||||
"os/exec"
|
||||
)
|
||||
|
||||
var runner = Runner(&osRunner{})
|
||||
|
||||
// Runner executes external commands.
|
||||
type Runner interface {
|
||||
Run(cmd *exec.Cmd) error
|
||||
}
|
||||
|
||||
// osRunner runs OS programs.
|
||||
type osRunner struct{}
|
||||
|
||||
func (r *osRunner) Run(cmd *exec.Cmd) error {
|
||||
return cmd.Run()
|
||||
}
|
||||
|
||||
func Run(cmd *exec.Cmd) error {
|
||||
return runner.Run(cmd)
|
||||
}
|
||||
|
||||
// CmdOut represents the result of the command run.
|
||||
type CmdOut struct {
|
||||
Stdout string
|
||||
Stderr string
|
||||
Err error
|
||||
}
|
||||
Reference in New Issue
Block a user