62 lines
1.7 KiB
Bash
Executable File
62 lines
1.7 KiB
Bash
Executable File
#!/bin/bash
|
|
# ============================================================================
|
|
# update-node.sh - Aktualisiert den LibreBooking n8n Node
|
|
#
|
|
# Verwendung nach git pull oder Änderungen am Code
|
|
# ============================================================================
|
|
|
|
set -e
|
|
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
NC='\033[0m'
|
|
|
|
CONTAINER_NAME="${1:-n8n}"
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
|
|
echo -e "${GREEN}=== LibreBooking Node Update ===${NC}\n"
|
|
|
|
cd "$SCRIPT_DIR"
|
|
|
|
# Git Pull (optional)
|
|
if [ -d ".git" ]; then
|
|
echo "[1/5] Hole neueste Änderungen..."
|
|
git pull 2>/dev/null || echo -e "${YELLOW}Git pull übersprungen${NC}"
|
|
else
|
|
echo "[1/5] Kein Git Repository - übersprungen"
|
|
fi
|
|
|
|
# Dependencies aktualisieren
|
|
echo "[2/5] Aktualisiere Dependencies..."
|
|
npm install --silent
|
|
|
|
# Bauen
|
|
echo "[3/5] Baue Node..."
|
|
npm run build --silent
|
|
|
|
# Prüfe Container
|
|
if ! docker ps | grep -q "$CONTAINER_NAME"; then
|
|
echo -e "${YELLOW}Container '$CONTAINER_NAME' nicht gefunden.${NC}"
|
|
echo "Verfügbare Container:"
|
|
docker ps --format " {{.Names}}"
|
|
echo ""
|
|
echo "Manuell kopieren:"
|
|
echo " docker cp dist <container>:/home/node/.n8n/custom/n8n-nodes-librebooking/"
|
|
exit 0
|
|
fi
|
|
|
|
# In Container kopieren
|
|
echo "[4/5] Kopiere in Container '$CONTAINER_NAME'..."
|
|
docker cp dist "$CONTAINER_NAME":/home/node/.n8n/custom/n8n-nodes-librebooking/
|
|
docker cp package.json "$CONTAINER_NAME":/home/node/.n8n/custom/n8n-nodes-librebooking/
|
|
docker cp node_modules "$CONTAINER_NAME":/home/node/.n8n/custom/n8n-nodes-librebooking/
|
|
|
|
# Container neustarten
|
|
echo "[5/5] Starte Container neu..."
|
|
docker restart "$CONTAINER_NAME"
|
|
|
|
echo ""
|
|
echo -e "${GREEN}✓ Update abgeschlossen!${NC}"
|
|
echo ""
|