Files
klz-cables.com/scripts/deploy-to-umami.sh
Marc Mintel c2d6e082e8
All checks were successful
Build & Deploy KLZ Cables / deploy (push) Successful in 3m50s
umami migration
2026-01-25 11:23:34 +01:00

127 lines
4.0 KiB
Bash

#!/bin/bash
# Deploy analytics data to Umami server
set -e
# Configuration
SERVER="root@alpha.mintel.me"
REMOTE_PATH="/home/deploy/sites/klz-cables.com"
WEBSITE_ID="59a7db94-0100-4c7e-98ef-99f45b17f9c3"
echo "🚀 Deploying analytics data to Umami server..."
echo "Server: $SERVER"
echo "Remote path: $REMOTE_PATH"
echo "Website ID: $WEBSITE_ID"
echo ""
# Check if files exist
if [ ! -f "data/umami-import.json" ]; then
echo "❌ Error: data/umami-import.json not found"
echo "Please run the migration script first:"
echo " python3 scripts/migrate-analytics-to-umami.py --input data/pages\(1\).csv --output data/umami-import.json --format json --site-id $WEBSITE_ID"
exit 1
fi
if [ ! -f "data/umami-import.sql" ]; then
echo "❌ Error: data/umami-import.sql not found"
echo "Please run the migration script first:"
echo " python3 scripts/migrate-analytics-to-umami.py --input data/pages\(1\).csv --output data/umami-import.sql --format sql --site-id $WEBSITE_ID"
exit 1
fi
# Check if SSH connection works
echo "🔍 Testing SSH connection..."
if ! ssh -o ConnectTimeout=5 "$SERVER" "echo 'SSH connection successful'"; then
echo "❌ Error: Cannot connect to $SERVER"
echo "Please check your SSH key and connection"
exit 1
fi
echo "✅ SSH connection successful"
echo ""
# Create remote directory if it doesn't exist
echo "📁 Creating remote directory..."
ssh "$SERVER" "mkdir -p $REMOTE_PATH/data"
echo "✅ Remote directory created"
echo ""
# Copy files to server
echo "📤 Copying files to server..."
scp data/umami-import.json "$SERVER:$REMOTE_PATH/data/"
scp data/umami-import.sql "$SERVER:$REMOTE_PATH/data/"
echo "✅ Files copied successfully"
echo ""
# Option 1: Import via API (if Umami API is accessible)
echo "📋 Import Options:"
echo ""
echo "Option 1: Import via API (Recommended)"
echo "--------------------------------------"
echo "1. SSH into your server:"
echo " ssh $SERVER"
echo ""
echo "2. Navigate to the directory:"
echo " cd $REMOTE_PATH"
echo ""
echo "3. Get your Umami API key:"
echo " - Log into Umami dashboard"
echo " - Go to Settings → API Keys"
echo " - Create a new API key"
echo ""
echo "4. Import the data:"
echo " curl -X POST \\"
echo " -H \"Content-Type: application/json\" \\"
echo " -H \"Authorization: Bearer YOUR_API_KEY\" \\"
echo " -d @data/umami-import.json \\"
echo " http://localhost:3000/api/import"
echo ""
echo " Or if Umami is on a different port/domain:"
echo " curl -X POST \\"
echo " -H \"Content-Type: application/json\" \\"
echo " -H \"Authorization: Bearer YOUR_API_KEY\" \\"
echo " -d @data/umami-import.json \\"
echo " https://your-umami-domain.com/api/import"
echo ""
# Option 2: Import via Database
echo "Option 2: Import via Database"
echo "------------------------------"
echo "1. SSH into your server:"
echo " ssh $SERVER"
echo ""
echo "2. Navigate to the directory:"
echo " cd $REMOTE_PATH"
echo ""
echo "3. Import the SQL file:"
echo " psql -U umami -d umami -f data/umami-import.sql"
echo ""
echo " If you need to specify host/port:"
echo " PGPASSWORD=your_password psql -h localhost -U umami -d umami -f data/umami-import.sql"
echo ""
# Option 3: Manual import via Umami dashboard
echo "Option 3: Manual Import via Umami Dashboard"
echo "--------------------------------------------"
echo "1. Log into Umami dashboard"
echo "2. Go to Settings → Import"
echo "3. Upload data/umami-import.json"
echo "4. Select your website (ID: $WEBSITE_ID)"
echo "5. Click Import"
echo ""
echo "📊 File Information:"
echo "-------------------"
echo "JSON file: $(ls -lh data/umami-import.json | awk '{print $5}')"
echo "SQL file: $(ls -lh data/umami-import.sql | awk '{print $5}')"
echo ""
echo "✅ Deployment complete!"
echo ""
echo "Next steps:"
echo "1. Choose one of the import methods above"
echo "2. Import the data into Umami"
echo "3. Verify the data in Umami dashboard"
echo "4. Update your website to use Umami tracking code"
echo ""
echo "For detailed instructions, see: scripts/README-migration.md"