Task
Source:: https://taskfile.dev/
Task - это утилита написанная на Go представляющая из себя замену Make. Make бесспорно хорош но как ни крути создавался в другое время, а главное для других задач.
- Плюсы
- YAML вместо эзотеричных табов.
- Отсутствие привязки к сборке сишного кода. Имена тасок это просто имена и всё.
- Расширенный синтаксис для типовых опреаций сборки. Например переход в директорию для шага
- Минусы
- Не так известен. Наличие Makefile в проекте очевидно само по себе, наличие же
Taskfile.yml
требует пояснений.
- Не так известен. Наличие Makefile в проекте очевидно само по себе, наличие же
Установка
- Можно просто скачать бинарник с Github проекта и пложить его куда угодно в $PATH.
- Можно установить скриптом в одну строку:
sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b ~/.local/bin
Вообще на странице проекта много диковатых способов установки. Типа npm (для go-шного бинаря, да).
Использование
Детали тут.
Создать в проекте файл Taskfile.yml
. Например такой:
version: '3'
tasks:
build:
cmds:
- npx quartz build --concurrency 10
default:
cmds:
- git checkout CNAME
- git add .
- git commit -a -m "."
- git push
dir: public
deps:
- build
Таска default
выполняется по умолчанию при запуске task
.