refacto: reorganize files to easily add an API service

This commit is contained in:
Alexis Fourmaux 2026-05-09 18:21:45 +02:00
parent 5c480db410
commit 9c883a8eca
22 changed files with 26 additions and 23 deletions

View file

@ -1,7 +1,9 @@
IP ?= 192.168.1.195
REMOTE_USER ?= pi
REMOTE = $(REMOTE_USER)@$(IP)
DEST ?= /home/$(REMOTE_USER)/projet-agreg
IP ?= 192.168.1.195
REMOTE_USER ?= pi
REMOTE = $(REMOTE_USER)@$(IP)
SERVER = server
GATEWAY = lora-gateway
DEST ?= /home/$(REMOTE_USER)/projet-agreg
RSYNC_OPTS = -arvz --delete --exclude='__pycache__' --exclude='*.pyc' --exclude='.env' --exclude='.venv' --exclude='Makefile' --exclude='.git' --exclude='.vscode' --exclude='.gitignore'
.PHONY: deploy deploy-gw deploy-app clean-app clean-gw clean-all
@ -11,29 +13,29 @@ deploy-all: deploy-gw deploy-app
deploy-app:
@echo "Déploiement sur $(REMOTE):$(DEST)"
ssh $(REMOTE) "mkdir -p $(DEST)"
rsync $(RSYNC_OPTS) app $(REMOTE):$(DEST)
rsync $(RSYNC_OPTS) $(SERVER) $(REMOTE):$(DEST)
@echo "Déploiement terminé"
ssh $(REMOTE) "cd $(DEST)/app && docker compose up -d --build"
ssh $(REMOTE) "cd $(DEST)/$(SERVER) && docker compose up -d --build"
@echo "Services redémarrés"
deploy-gw:
@echo "Déploiement sur $(REMOTE):$(DEST)"
ssh $(REMOTE) "mkdir -p $(DEST)"
rsync $(RSYNC_OPTS) lora-gateway $(REMOTE):$(DEST)
rsync $(RSYNC_OPTS) $(GATEWAY) $(REMOTE):$(DEST)
@echo "Déploiement terminé"
ssh $(REMOTE) "cd $(DEST)/lora-gateway && docker compose up -d"
ssh $(REMOTE) "cd $(DEST)/$(GATEWAY) && docker compose up -d"
@echo "Services redémarrés"
clean-app:
@echo "Nettoyage de l'app sur $(REMOTE):$(DEST)/app"
ssh $(REMOTE) "cd $(DEST)/app && docker compose down --volumes --remove-orphans || true"
ssh $(REMOTE) "rm -rf $(DEST)/app"
@echo "Nettoyage de l'app sur $(REMOTE):$(DEST)/$(SERVER)"
ssh $(REMOTE) "cd $(DEST)/$(SERVER) && docker compose down --volumes --remove-orphans || true"
ssh $(REMOTE) "rm -rf $(DEST)/$(SERVER)"
@echo "Nettoyage de l'application terminé"
clean-gw:
@echo "Nettoyage de la gateway sur $(REMOTE):$(DEST)/lora-gateway"
ssh $(REMOTE) "cd $(DEST)/lora-gateway && docker compose down --volumes --remove-orphans || true"
ssh $(REMOTE) "rm -rf $(DEST)/lora-gateway"
@echo "Nettoyage de la gateway sur $(REMOTE):$(DEST)/$(GATEWAY)"
ssh $(REMOTE) "cd $(DEST)/$(GATEWAY) && docker compose down --volumes --remove-orphans || true"
ssh $(REMOTE) "rm -rf $(DEST)/$(GATEWAY)"
@echo "Nettoyage de la gateway terminé"
clean-all: clean-app clean-gw