There's also task (https://taskfile.dev/), which is YAML-based and might work well in an environment where everything else is YAML anyway, and makesure (https://github.com/xonixx/makesure), which is pretty similar to just, but didn't really click with me.
just push
just test - make test
- make build (or run if it's an interactive app)
- make publish
Publish runs test + build and uploads it to "production".For Go projects I've started to move to Magefiles though: https://magefile.org
I love go but the only example on the site is bad, and there is not any others. Also, executing commands in go is tedious and verbose w/o helpers. The "Why" on the page fails to convince me as well.
How is a makefile too much whitespace?
Is there any good examples of mage being used in a larger project? preferably a popular one?
The test/lint/build phases of my magefiles are mostly the same as makefiles. What differs is the publish command:
There I can make use of (for example)native AWS libraries to do complex deployment processes with error checking and validation. All this is of course doable with makefiles, but it gets very tedious compared to a "real" programming language.