A task runner.
brew tap broothie/ok && brew install ok
go install github.com/broothie/ok/cmd/ok@latest
# Okfile.rb
def greet(name, greeting: "Hello")
puts "#{greeting}, #{name}!"
end
// Okfile.go
//go:build okfile
package okfile
import "fmt"
func farewell(name string) {
fmt.Printf("Goodbye, %s\n", name)
}
# Makefile
build:
go build -o server cmd/server.go
$ ok
TASK ARGS FILE
build Makefile
farewell <name> Okfile.go
greet <name> --greeting=Hello Okfile.rb
$ ok greet Andrew --greeting Yo
Yo, Andrew!