3 ms·
I realized how much I love Makefiles when I had to build a go project, dockerize it, push to registry, package it with helm, push to artifactory, and clean up a
by kmarc 7y ago
I realized how much I love Makefiles when I had to build a go project, dockerize it, push to registry, package it with helm, push to artifactory, and clean up all the mess what was created on the way. The way the already created (touched) artifacts are not created again makes working with Makefiles super easy. Yes, your $FAVORITE_BUILD_SYSTEM knows this too, but while that might not be installed on every host in your dev ecosystem, make is.
Another reason why I got to love make even more is because I didn't have to remember all these diferent tools parametrization, even better, the Makefile itself documented how to use these different parts of the tooling.
"But this should be done in your CI/CD, right?" and yes, it's right, until your colleagues also wan to test and build and dockerize and etc... on their localhost. I wrote the Makefile, tested it thoroughly and guess what, jenkins can also run make docker_image and make helm_package just as fine.
Makefile is an ooooooold but certainly not legacy technology. I haven't mastered it yet myself but it certainly saved already a lot of time and effort for me.