in main.go [39:73]
func setupCmd(me string) (string, error) {
if os.Getenv("OPS_CMD") != "" {
return os.Getenv("OPS_CMD"), nil
}
// look in path
me, err := exec.LookPath(me)
if err != nil {
return "", err
}
trace("found", me)
// resolve links
fileInfo, err := os.Lstat(me)
if err != nil {
return "", err
}
if fileInfo.Mode()&os.ModeSymlink != 0 {
me, err = filepath.EvalSymlinks(me)
if err != nil {
return "", err
}
trace("resolving link to", me)
}
// get the absolute path
me, err = filepath.Abs(me)
if err != nil {
return "", err
}
//nolint:errcheck
os.Setenv("OPS_CMD", me)
trace("OPS_CMD:", me)
return me, nil
}