Download My Makefile on GitHub Gist
I use Makefile
for most of every my project, both at work and in side-projects.
It let you just create very easily task group
in a Makefile
, which you can execute them via make
command.
My best practices are the following:
Minimal config
I remove all unnecessary definition which might make noise in the Makefile
. Now it has just 6 lines to configure and define the templating of my favorite Makefile
.
SHELL := /bin/bash
help:
@grep -E '^[0-9a-zA-Z_-]+:.*?## .*$$|(^#--)' $(MAKEFILE_LIST) \
| awk 'BEGIN {FS = ":.*?## "}; {printf "\033[32m %-43s\033[0m %s\n", $$1, $$2}' \
| sed -e 's/\[32m #-- /[33m/'
Help:
this code block defines the templating for the task group and its tasks and I used it in every my makefile.
Group your task
With Prefix #--
, you are able to define the title of task group. We can organise the relevant tasks in the same task group.
#-- Docker
this will define a task group with title name
Docker
Add task always the a task description
by using prefix ## description of this task
, we can add the description to each task.
The following code defines a task group Docker
with a single task clean
, which triggers four commands to clean up the docker resources.
bash
clean: ## clean up all docker resources
docker-compose stop
docker container prune -f
docker volume prune -f
docker network prune -f
each command should begin with a
Tab
, for example, there is always aTab
before the commanddocker-compose stop
.
Simple start
By using make
, you can show the list of all defined task groups in Makefile
By using make clean
, you can execute the task clean
under the task group docker
Top comments (0)