.PHONY: help network network-claudeweb up down restart status \ up-main up-gitea up-wedding up-finance up-claudeweb \ down-main down-gitea down-wedding down-finance down-claudeweb \ logs-main logs-gitea logs-wedding logs-finance logs-claudeweb \ pull-main pull-gitea pull-wedding pull-finance pull-claudeweb \ rebuild-wedding rebuild-finance rebuild-claudeweb clone-claudeweb # Orquestrador das stacks. `lronetto-main` é o "platform layer" # (postgres + redis + minio + pgadmin + caddy). Os demais repos são clonados # como diretórios IRMÃOS e referenciados aqui. Ajuste os caminhos abaixo se # usar outro layout no disco. # # lronetto-gitea https://gitea.lronetto.com/lronetto/lronetto-gitea.git # lronetto-wedding https://gitea.lronetto.com/lronetto/lronetto-wedding.git # lronetto-finance https://gitea.lronetto.com/lronetto/lronetto-finance.git # lronetto-claudeweb https://gitea.lronetto.com/lronetto/lronetto-claudeweb.git NET := infra-net # Rede isolada dos workers efêmeros do claudeweb (declarada external no compose dele). NET_WORKERS := claudeweb-workers WEDDING_DIR ?= ../lronetto-wedding GITEA_DIR ?= ../lronetto-gitea FINANCE_DIR ?= ../lronetto-finance CLAUDEWEB_DIR ?= ../lronetto-claudeweb CLAUDEWEB_REPO ?= https://gitea.lronetto.com/lronetto/lronetto-claudeweb.git DC_MAIN := docker compose -f docker-compose.yml --env-file .env DC_GITEA := docker compose -f $(GITEA_DIR)/docker-compose.yml --env-file $(GITEA_DIR)/.env DC_WEDDING := docker compose -f $(WEDDING_DIR)/docker-compose.yml --env-file $(WEDDING_DIR)/.env DC_FINANCE := docker compose -f $(FINANCE_DIR)/docker-compose.yml --env-file $(FINANCE_DIR)/.env # claudeweb: compose vive em deploy/compose.yml e o .env fica na RAIZ do repo. DC_CLAUDEWEB := docker compose -f $(CLAUDEWEB_DIR)/deploy/compose.yml --env-file $(CLAUDEWEB_DIR)/.env help: @echo "Stacks: main (este repo) | gitea ($(GITEA_DIR)) | wedding ($(WEDDING_DIR))" @echo " finance ($(FINANCE_DIR)) | claudeweb ($(CLAUDEWEB_DIR))" @echo "" @echo " make up Sobe tudo (main -> gitea -> wedding -> finance -> claudeweb)" @echo " make down Desce tudo na ordem inversa" @echo " make restart down + up" @echo " make status ps de todas as stacks" @echo "" @echo " make up-main Sobe só a stack main" @echo " make up-gitea Sobe só o gitea" @echo " make up-wedding Build + up do app wedding" @echo " make up-finance Build + up do app finance" @echo " make up-claudeweb Build (incl. worker-image) + up do claudeweb" @echo " make rebuild-wedding Force rebuild do app wedding" @echo " make rebuild-finance Force rebuild do app finance" @echo " make rebuild-claudeweb Force rebuild do claudeweb" @echo " make down-{main,gitea,wedding,finance,claudeweb}" @echo " make logs-{main,gitea,wedding,finance,claudeweb}" @echo " make pull-{main,gitea,wedding,finance,claudeweb}" @echo " make clone-claudeweb Clona $(CLAUDEWEB_REPO) em $(CLAUDEWEB_DIR)" @echo " make network Cria a network external '$(NET)' (idempotente)" @echo " make network-claudeweb Cria a network external '$(NET_WORKERS)' (idempotente)" network: @./network.sh network-claudeweb: @INFRA_NETWORK=$(NET_WORKERS) ./network.sh up: network up-main up-gitea up-wedding up-finance up-claudeweb down: down-claudeweb down-finance down-wedding down-gitea down-main restart: down up status: @$(DC_MAIN) ps || true @$(DC_GITEA) ps || true @$(DC_WEDDING) ps || true @$(DC_FINANCE) ps || true @$(DC_CLAUDEWEB) ps || true up-main: network $(DC_MAIN) up -d up-gitea: network $(DC_GITEA) up -d up-wedding: network $(DC_WEDDING) up -d --build up-finance: network $(DC_FINANCE) up -d --build # Delegado ao Makefile do repo: o `up` de lá builda antes a imagem do worker # efêmero (fora do compose) que o backend instancia. up-claudeweb: network network-claudeweb $(MAKE) -C $(CLAUDEWEB_DIR) up rebuild-wedding: network $(DC_WEDDING) build --no-cache $(DC_WEDDING) up -d rebuild-finance: network $(DC_FINANCE) build --no-cache $(DC_FINANCE) up -d rebuild-claudeweb: network network-claudeweb $(MAKE) -C $(CLAUDEWEB_DIR) worker-image $(DC_CLAUDEWEB) build --no-cache $(DC_CLAUDEWEB) up -d down-main: $(DC_MAIN) down down-gitea: $(DC_GITEA) down down-wedding: $(DC_WEDDING) down down-finance: $(DC_FINANCE) down down-claudeweb: $(DC_CLAUDEWEB) down logs-main: $(DC_MAIN) logs -f logs-gitea: $(DC_GITEA) logs -f logs-wedding: $(DC_WEDDING) logs -f logs-finance: $(DC_FINANCE) logs -f logs-claudeweb: $(DC_CLAUDEWEB) logs -f pull-main: $(DC_MAIN) pull pull-gitea: $(DC_GITEA) pull pull-wedding: $(DC_WEDDING) pull pull-finance: $(DC_FINANCE) pull pull-claudeweb: $(DC_CLAUDEWEB) pull clone-claudeweb: @test -d $(CLAUDEWEB_DIR)/.git \ && echo "$(CLAUDEWEB_DIR) já existe" \ || git clone $(CLAUDEWEB_REPO) $(CLAUDEWEB_DIR)