keycloak-oidc-vite-express/make-zip.sh
2025-11-30 17:04:07 +01:00

38 lines
873 B
Bash
Executable file

#!/usr/bin/env bash
set -euo pipefail
PROJECT="keycloak-oidc-vite-express"
ZIP="$PROJECT.zip"
echo "[+] Validazione file principali..."
for f in package.json tsconfig.json README.md .env \
server/index.ts server/auth.ts server/env.ts \
client/index.html client/vite.config.ts \
client/src/main.tsx client/src/App.tsx client/src/api.ts
do
if [[ ! -f "$f" ]]; then
echo "[-] Manca il file: $f" >&2
exit 1
fi
done
echo "[+] Pulizia dist..."
rm -rf dist client/dist
echo "[+] Installazione dipendenze (se necessario)..."
if [[ ! -d node_modules ]]; then
npm install
fi
echo "[+] Build client e server..."
npm run build
echo "[+] Creazione archivio $ZIP..."
cd ..
rm -f "$ZIP"
zip -r "$ZIP" "$PROJECT" \
-x "$PROJECT/node_modules/*" \
-x "$PROJECT/.env" \
-x "$PROJECT/.git/*"
echo "[+] Fatto. Trovi lo zip in: $(pwd)/$ZIP"