Add PocketBase schema migrations and migration pipeline
- 8 collections: vereine, gruppen, mitglieder, beitraege, einzuege, termine, nachrichten, push_subscriptions - verein_id relation added to users (multi-tenant isolation) - API rules enforce tenant separation via @request.auth.verein_id - docker-compose: --migrationsDir=/pb_data/migrations flag + volume mount - Makefile: migrations sync step added to deploy target
This commit is contained in:
parent
94ca36f470
commit
375a3305bb
11 changed files with 931 additions and 2 deletions
13
Makefile
13
Makefile
|
|
@ -18,8 +18,10 @@ TAR_EXCLUDE := --exclude='.git' \
|
|||
--exclude='./.env' \
|
||||
--exclude='./.DS_Store'
|
||||
|
||||
HOOKS_SRC := pocketbase/pb_hooks
|
||||
HOOKS_DST := /volume1/docker/vereinshaus/pocketbase/data/pb_hooks
|
||||
HOOKS_SRC := pocketbase/pb_hooks
|
||||
HOOKS_DST := /volume1/docker/vereinshaus/pocketbase/data/pb_hooks
|
||||
MIGRATIONS_SRC := pocketbase/pb_migrations
|
||||
MIGRATIONS_DST := /volume1/docker/vereinshaus/pocketbase/migrations
|
||||
|
||||
.PHONY: help check-ssh start stop restart status logs logs-f logs-app \
|
||||
shell-pb pb-admin deploy
|
||||
|
|
@ -71,6 +73,13 @@ deploy: check-ssh
|
|||
cat "$$f" | ssh $(DS_HOST) "cat > $(HOOKS_DST)/$$(basename $$f)"; \
|
||||
done; \
|
||||
fi
|
||||
@echo "→ PocketBase Migrations synchronisieren..."
|
||||
@ssh $(DS_HOST) "mkdir -p $(MIGRATIONS_DST)"
|
||||
@if ls $(MIGRATIONS_SRC)/*.js 2>/dev/null | grep -q .; then \
|
||||
for f in $(MIGRATIONS_SRC)/*.js; do \
|
||||
cat "$$f" | ssh $(DS_HOST) "cat > $(MIGRATIONS_DST)/$$(basename $$f)"; \
|
||||
done; \
|
||||
fi
|
||||
@echo "→ Docker rebuild + restart..."
|
||||
@ssh $(DS_HOST) " \
|
||||
cd $(DS_PATH) && \
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue