#!/usr/bin/env bash # کلاینت Prisma را روی سیستم دولوپر می‌سازد و بسته‌بندی می‌کند. # سرور نباید prisma generate بزند؛ روی هاست پروडاکشن دقایق طول می‌کشد. set -euo pipefail cd "$(dirname "$0")/.." OUT="prisma-client.tar.gz" SRC="node_modules/.prisma/client" if [ ! -d node_modules/prisma ]; then echo "ERROR: node_modules نیست. اول npm ci بزن." >&2 exit 1 fi # خروجی قبلی پاک شود تا engineهای بی‌استفاده در بسته نمانند rm -rf "$SRC" DATABASE_URL="${DATABASE_URL:-postgresql://build:build@localhost:5432/build?schema=public}" \ CHECKPOINT_DISABLE=1 ./node_modules/.bin/prisma generate test -f "$SRC/libquery_engine-debian-openssl-3.0.x.so.node" \ || { echo "ERROR: engine مربوط به debian-openssl-3.0.x ساخته نشد." >&2; exit 1; } rm -f "$OUT" tar -czf "$OUT" -C node_modules/.prisma client ls -lh "$OUT"