initial
This commit is contained in:
39
sync/install-cron.sh
Executable file
39
sync/install-cron.sh
Executable file
@@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
# Install Email Rules Sync as a cron job
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
SYNC_SCRIPT="$SCRIPT_DIR/sync.js"
|
||||
|
||||
echo "📦 Installing Email Rules Sync Cron Job..."
|
||||
echo ""
|
||||
|
||||
# Make sync script executable
|
||||
chmod +x "$SYNC_SCRIPT"
|
||||
|
||||
# Create cron job to run every 30 minutes (as fallback - main sync is event-driven)
|
||||
CRON_JOB="*/30 * * * * cd $SCRIPT_DIR && sudo /usr/bin/node sync.js >> /tmp/email-rules-sync.log 2>&1"
|
||||
|
||||
# Check if cron job already exists
|
||||
if crontab -l 2>/dev/null | grep -q "email-rules-sync"; then
|
||||
echo "⚠️ Cron job already exists. Updating..."
|
||||
(crontab -l 2>/dev/null | grep -v "email-rules-sync"; echo "$CRON_JOB") | crontab -
|
||||
else
|
||||
echo "➕ Adding new cron job..."
|
||||
(crontab -l 2>/dev/null; echo "$CRON_JOB") | crontab -
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "✅ Cron job installed successfully!"
|
||||
echo ""
|
||||
echo "The sync script will run every 30 minutes as a fallback."
|
||||
echo "Main synchronization is event-driven (triggered by API changes)."
|
||||
echo "Logs are written to: /tmp/email-rules-sync.log"
|
||||
echo ""
|
||||
echo "To view current cron jobs:"
|
||||
echo " crontab -l"
|
||||
echo ""
|
||||
echo "To view logs:"
|
||||
echo " tail -f /tmp/email-rules-sync.log"
|
||||
echo ""
|
||||
echo "To run sync manually:"
|
||||
echo " cd $SCRIPT_DIR && npm start"
|
||||
Reference in New Issue
Block a user