mirror of
https://github.com/gohugoio/hugo.git
synced 2025-04-29 07:00:31 +03:00
common/hexec: Fall back to the binary in PATH if npx fails
Closes #12486
This commit is contained in:
parent
af0cb57aaf
commit
1c85830bc7
1 changed files with 11 additions and 1 deletions
|
@ -143,8 +143,18 @@ func (e *Exec) New(name string, arg ...any) (Runner, error) {
|
||||||
return cm.command(arg...)
|
return cm.command(arg...)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Npx is a convenience method to create a Runner running npx --no-install <name> <args.
|
// Npx will try to run npx, and if that fails, it will
|
||||||
|
// try to run the binary directly.
|
||||||
func (e *Exec) Npx(name string, arg ...any) (Runner, error) {
|
func (e *Exec) Npx(name string, arg ...any) (Runner, error) {
|
||||||
|
r, err := e.npx(name, arg...)
|
||||||
|
if err == nil {
|
||||||
|
return r, nil
|
||||||
|
}
|
||||||
|
return e.New(name, arg...)
|
||||||
|
}
|
||||||
|
|
||||||
|
// npx is a convenience method to create a Runner running npx --no-install <name> <args.
|
||||||
|
func (e *Exec) npx(name string, arg ...any) (Runner, error) {
|
||||||
arg = append(arg[:0], append([]any{"--no-install", name}, arg[0:]...)...)
|
arg = append(arg[:0], append([]any{"--no-install", name}, arg[0:]...)...)
|
||||||
return e.New("npx", arg...)
|
return e.New("npx", arg...)
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue