All checks were successful
Build & Deploy KLZ Cables / deploy (push) Successful in 3m50s
76 lines
2.4 KiB
Bash
Executable File
76 lines
2.4 KiB
Bash
Executable File
#!/bin/bash
|
|
# Deploy analytics data to your Umami instance on alpha.mintel.me
|
|
|
|
set -e
|
|
|
|
# Configuration - Umami is on infra.mintel.me
|
|
SERVER="root@infra.mintel.me"
|
|
REMOTE_PATH="/home/deploy/sites/klz-cables.com"
|
|
WEBSITE_ID="59a7db94-0100-4c7e-98ef-99f45b17f9c3"
|
|
|
|
# Umami API endpoint (assuming it's running on the same server)
|
|
UMAMI_API="http://localhost:3000/api/import"
|
|
|
|
echo "🚀 Deploying analytics data to your Umami instance..."
|
|
echo "Server: $SERVER"
|
|
echo "Remote path: $REMOTE_PATH"
|
|
echo "Website ID: $WEBSITE_ID"
|
|
echo "Umami API: $UMAMI_API"
|
|
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
|
|
|
|
# Test SSH connection
|
|
echo "🔍 Testing SSH connection to $SERVER..."
|
|
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 directory and copy files to server
|
|
echo "📁 Creating remote directory..."
|
|
ssh "$SERVER" "mkdir -p $REMOTE_PATH/data"
|
|
echo "✅ Remote directory created"
|
|
|
|
echo "📤 Copying analytics 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 ""
|
|
|
|
# Detect Umami container
|
|
echo "🔍 Detecting Umami container..."
|
|
UMAMI_CONTAINER=$(ssh "$SERVER" "docker ps -q --filter 'name=umami'")
|
|
if [ -z "$UMAMI_CONTAINER" ]; then
|
|
echo "❌ Error: Could not detect Umami container"
|
|
echo "Make sure Umami is running on $SERVER"
|
|
exit 1
|
|
fi
|
|
echo "✅ Umami container detected: $UMAMI_CONTAINER"
|
|
echo ""
|
|
|
|
# Import data via database (most reliable method)
|
|
echo "📥 Importing data via database..."
|
|
ssh "$SERVER" "
|
|
echo 'Importing data into Umami database...'
|
|
docker exec -i core-postgres-1 psql -U infra -d umami < $REMOTE_PATH/data/umami-import.sql
|
|
echo '✅ Database import completed'
|
|
"
|
|
|
|
echo ""
|
|
echo "✅ Migration Complete!"
|
|
echo ""
|
|
echo "Your analytics data has been imported into Umami."
|
|
echo "Website ID: $WEBSITE_ID"
|
|
echo ""
|
|
echo "Verify in Umami dashboard: https://analytics.infra.mintel.me"
|
|
echo "You should see 7,634 historical page view events." |