Files
duckbrain-toolbox/Makefile
T

32 lines
1.1 KiB
Makefile

# duckbrain-toolbox: atajos del ciclo de desarrollo y publicacion del phar.
# `publish` requiere FORGEJO_TOKEN en el entorno (token de la API con write:repository).
CONFIG := packages/commands/src/Toolbox/Config.php
VERSION := $(shell grep -oP "const VERSION = '\K[^']+" $(CONFIG))
.PHONY: help test build compat release publish check clean
help: ## Muestra esta ayuda
@grep -hE '^[a-z-]+:.*## ' $(MAKEFILE_LIST) | sed -E 's/^([a-z-]+):.*## (.+)$$/ make \1 \xe2\x80\x94 \2/'
test: ## Corre la suite de pruebas (harness propio, sin phpunit)
php tests/run.php
build: ## Construye dist/duckbrain.phar y su .sha256
scripts/build-phar
compat: ## Barrido de compatibilidad contra el core real (requiere red)
scripts/compat-sweep $(if $(ARGS),$(ARGS),)
release: ## Asistente interactivo para versionar un paquete (scripts/release)
./scripts/release $(if $(ARGS),$(ARGS),)
publish: build ## Crea/mueve la release v$(VERSION) en Forgejo y sube los assets
scripts/publish-phar
check: ## Pregunta al servidor si hay un instalador mas nuevo (exit 1 si la hay)
php bin/duckbrain self-update --check
clean: ## Borra dist/
rm -rf dist