Files
argo-cd/test/e2e/fixture/cmd.go
Matthieu MOREL 7357465ea6 chore: enable noctx linter (#24765)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2025-09-29 20:20:53 +02:00

37 lines
916 B
Go

package fixture
import (
"context"
"os"
"os/exec"
"strings"
argoexec "github.com/argoproj/argo-cd/v3/util/exec"
)
func Run(workDir, name string, args ...string) (string, error) {
return RunWithStdin("", workDir, name, args...)
}
func RunWithStdin(stdin, workDir, name string, args ...string) (string, error) {
cmd := exec.CommandContext(context.Background(), name, args...)
if stdin != "" {
cmd.Stdin = strings.NewReader(stdin)
}
cmd.Env = os.Environ()
cmd.Dir = workDir
return argoexec.RunCommandExt(cmd, argoexec.CmdOpts{})
}
func RunWithStdinWithRedactor(stdin, workDir, name string, redactor func(string) string, args ...string) (string, error) {
cmd := exec.CommandContext(context.Background(), name, args...)
if stdin != "" {
cmd.Stdin = strings.NewReader(stdin)
}
cmd.Env = os.Environ()
cmd.Dir = workDir
return argoexec.RunCommandExt(cmd, argoexec.CmdOpts{Redactor: redactor})
}