| 123456789101112131415161718192021222324252627282930313233343536373839 |
- #!/usr/bin/env bash
- # =============================================================================
- # Hetzner -> ohmu: dr_mustikas andmebaasi + Drupali HTML sünkroonimine
- # Välja arvatud settings.php (ohmu oma jääb alles)
- # Käivita root õigustega: sudo bash sync_from_hetzner.sh
- # =============================================================================
- set -e
- HETZNER="root@100.80.222.54"
- OHMU_MARIADB_PASS="ai_root_pass_2026"
- HETZNER_HTML="/var/lib/docker/volumes/drupal_mustikas-1-html/_data"
- OHMU_HTML="/var/lib/docker/volumes/drupal_mustikas-html/_data"
- echo "=== $(date): Alustan sünkroonimist ==="
- # 1. MariaDB: dump hetznerist ja import ohmu-sse
- echo "[1/3] MariaDB: dump hetzner dr_mustikas -> ohmu mariadb ..."
- ssh "$HETZNER" "docker exec mariadb_simple sh -c 'mariadb-dump -u root -p\"\$(cat /run/secrets/mysql_root_password)\" --single-transaction dr_mustikas'" \
- | docker exec -i mariadb mariadb -u root -p"$OHMU_MARIADB_PASS" dr_mustikas 2>/dev/null
- echo " DB sünkroonitud."
- # 2. Rsync Drupali HTML (v.a settings.php) — vajab root õigusi
- echo "[2/3] Rsync: hetzner HTML -> ohmu (v.a settings.php) ..."
- rsync -av --delete --exclude="settings.php" -e "ssh" \
- "$HETZNER:$HETZNER_HTML/" \
- "$OHMU_HTML/"
- echo " HTML sünkroonitud."
- # 3. Tühjenda Drupali puhver
- echo "[3/3] Drupali puhvri tühjendamine..."
- docker exec drupal_mustikas sh -c "cd /var/www/html && php -r '
- include_once \"includes/bootstrap.inc\";
- drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
- cache_clear_all();
- drupal_set_message(\"Cache cleared.\");
- '" 2>/dev/null || docker exec drupal_mustikas sh -c "rm -rf /var/www/html/sites/default/files/cache/*" 2>/dev/null || echo " (puhvri tühjendamine jäi vahele)"
- echo ""
- echo "=== $(date): Sünkroonimine valmis ==="
|