Keys are token patterns. First matching key (definition order) wins.
version: "0.1"
engine:
dialect: matcher
scripts:
test ${MODULE}: go test ./${godo:argv[MODULE]}/...
test: go test ./...godo --preview test internal/catalogPrints (MODULE = internal/catalog):
go test ./internal/catalog/...
godo --preview testPrints (falls through to the exact key):
go test ./...
scripts:
lint ${MODULE}: go run ./lint ${godo:argv[MODULE]}
# @deps lint ${MODULE}
test ${MODULE}: go test ./${godo:argv[MODULE]}/...godo --preview test internal/catalogPrints:
go run ./lint internal/catalog
go test ./internal/catalog/...
version: "0.1"
scripts:
# @dialect matcher
"run ${GRP} ${SCR}": go run ./scripts/${godo:argv[GRP]}/${godo:argv[SCR]} ${godo:args}godo --ls run _ _Prints:
@dialect matcher
run ${GRP} ${SCR}:
go run ./scripts/${godo:argv[GRP]}/${godo:argv[SCR]} ${godo:args}
godo --preview run api seed --verbosePrints:
go run ./scripts/api/seed --verbose
After the pattern matches, leftovers feed ${godo:args…}. If the body does not use them and leftovers remain, godo errors (same rule as package).