Make, Task e a interface do repositório
O repositório deve oferecer comandos previsíveis para pessoa e CI. Uma interface curta
reduz divergência entre “funciona localmente” e pipeline: make test deve executar o
mesmo contrato que o job de teste, não uma aproximação.
.PHONY: check test buildcheck: npm run checktest: npm testbuild: npm run buildDeclare sempre .PHONY para alvos que não são arquivos. Não esconda comandos destrutivos
atrás de nomes vagos: destroy deve exigir ambiente explícito, confirmação adequada e
nunca usar produção como padrão. make é disponível em muitos ambientes; Taskfile pode
ser mais legível em YAML, mas escolha uma única entrada e documente como instalá-la.
CI deve chamar os alvos, não reimplementar suas etapas em YAML. Se a plataforma exige
paralelismo ou cache, mantenha a decisão no CI, mas deixe a validação comum no repositório.
Um help que lista alvos, pré-requisitos e variáveis diminui a carga de entrada do time.
Próximo passo: implemente a ferramenta por trás do alvo com Python ou Go.