GNU Make - программа для генерации программ из исходников. Изначально было заточено под C, но потом стали использовать и как файлик под скрипты.
Важно, что при вызове команды make
не учиывается переменная окружения SHELL
, а просто вызывается sh
.
Конфиг хранится в файле Makefile
.
Syntax
# задание опциональных аргументов
arg ?= "default"
Base
Команда, чтобы вывести другие команды плюс сразу напоминаем про .PHONY
:
.PHONY: help
## help: show list of available commands.
help : Makefile
@echo "+--------------------+"
@echo "| AVAILABLE COMMANDS |"
@echo "+--------------------+\n"
@cat Makefile | grep "##" | sed -n 's/^## /make /p' | column -t -s ':' && echo ""
Забираем environment из .env
если он есть:
ifneq (,$(wildcard ./.env))
include .env
export
endif
Python
Типичный файл для python:
- создать virtualenv
- установить зависимости из requirements.txt
- запустить приложение
- хорошее дополнение: генерация по pip-tools и разделе prod/dev
Шаблон: