managarten/scripts/mac-mini/push-schemas.sh
Till JS 774852ba2d feat(cutover): platform services build from ../mana, not from this repo
Part of the 8-Doppel-Cutover (2026-05-08, plan
~/.claude/plans/floating-swinging-flurry.md):

- docker-compose.{macmini,dev,test}.yml: build context for
  mana-{auth,credits,media,llm,notify} switched to ../mana/services/...
  so the Mac Mini stack pulls platform services from the platform repo
  (sibling clone), not from services/ in this monorepo.
- .npmrc + apps/api/{Dockerfile,package.json}: @mana/media-client now
  resolved from Verdaccio (npm.mana.how, ^0.1.0) instead of as a
  workspace COPY from services/mana-media/packages/client. Build-arg
  NPM_TOKEN flows through .npmrc for pnpm install auth. Required
  before services/mana-media/ can be deleted.
- .github/workflows/{ci,cd-macmini,daily-tests}.yml: removed the
  detect-/build-/test-jobs that targeted services/mana-{auth,credits,
  notify,media}/. Those services build out of the platform repo now —
  CI for them belongs in mana/-repo (open). cd-macmini's
  workflow_dispatch can still rebuild any of them on demand;
  auto-detect on path-change is gone for these five.
- scripts/{mac-mini/push-schemas.sh,run-integration-tests.sh}:
  rewritten to look in ../mana/ for the platform services.
- package.json dev:{auth,credits,notify,media}: paths point at
  ../mana/services/... so local dev still works post-cutover.

What this commit does NOT do: delete services/mana-{auth,credits,...}
from this repo. That waits for Phase 7 once the Mac Mini stack has
booted cleanly from the new build paths.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 18:40:08 +02:00

43 lines
1.2 KiB
Bash
Executable file

#!/bin/bash
#
# Push Drizzle schemas to all service databases
# Run after databases are created (deploy-v2.sh handles this)
#
# Usage: ./scripts/mac-mini/push-schemas.sh
set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
GREEN='\033[0;32m'
RED='\033[0;31m'
NC='\033[0m'
echo "=== Push Drizzle Schemas ==="
echo ""
push_schema() {
local name=$1
local dir=$2
echo -n " $name... "
if (cd "$PROJECT_ROOT/$dir" && bun run db:push 2>/dev/null); then
echo -e "${GREEN}OK${NC}"
else
echo -e "${RED}FAILED${NC}"
fi
}
echo "Core Services:"
# Plattform-Services bauen ab dem 2026-05-08-Cutover aus dem
# Schwester-Repo `../mana/`. Auf dem Mac Mini liegt das als
# `/Users/mana/projects/mana/`, parallel zu `mana-monorepo`.
push_schema "mana-auth" "../mana/services/mana-auth"
push_schema "mana-credits" "../mana/services/mana-credits"
push_schema "mana-user" "services/mana-user"
push_schema "mana-subscriptions" "services/mana-subscriptions"
push_schema "mana-analytics" "services/mana-analytics"
push_schema "news-ingester" "services/news-ingester"
echo ""
echo "Done. mana-sync creates its schema automatically on startup."