| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- #!/usr/bin/env bash
- # =============================================================================
- # mustikas Drupal 7 -> Drupal 11 migratsioon (ohmu dev)
- # =============================================================================
- # Jooksutab kogu migratsiooni algusest lõpuni. Käivita root õigustega:
- # sudo bash migrate_mustikas11.sh
- #
- # NB! Töötab AINULT ohmu serveril. Production (hetzner) jääb puutumata.
- # Andmebaas dr_mustikas on hetznerist sünkroonitud koopia (vt mustikas
- # sync_from_hetzner.sh). Selle skripti jooksutamine EI muuda hetznerit.
- #
- # "Viimaste andmete ülekandmine" (lõppsünk):
- # 1. Jooksuta esmalt värske sünk hetznerist:
- # sudo bash /opt/docker-compose/third/drupal/mustikas/sync_from_hetzner.sh
- # (see värskendab ohmu dr_mustikas andmebaasi + D7 failid)
- # 2. Jooksuta see skript, et uus sisu D11-sse migreerida:
- # sudo bash /opt/docker-compose/third/drupal/mustikas11/migrate_mustikas11.sh
- # =============================================================================
- set -euo pipefail
- C="drupal_mustikas11"
- DRUSH="php -d memory_limit=1024M /opt/drupal/vendor/drush/drush/drush.php"
- echo "=== $(date): Alustan D7->D11 migratsiooni ==="
- # ── 0. Pre-migratsiooni parandused (source DB andmevead) ──
- echo "[0/5] Pre-migratsiooni parandused (source DB) ..."
- docker exec "$C" sh -c "cd /opt/drupal && $DRUSH scr /tmp/fix_er_sort.php"
- docker exec "$C" sh -c "cd /opt/drupal && $DRUSH scr /tmp/fix_text_maxlength.php"
- echo " parandused tehtud."
- # ── 1. Migratsiooni konfiguratsiooni loomine ──
- echo "[1/5] Migratsiooni konfiguratsioon ..."
- docker exec "$C" sh -c "cd /opt/drupal && $DRUSH migrate-upgrade --configure-only \
- --legacy-db-url=mysql://root:ai_root_pass_2026@mariadb/dr_mustikas \
- --legacy-root=https://mustikas.maastikuarhitekt.ee -y"
- echo " konfiguratsioon loodud."
- # ── 2. Esmane import (dependencies) ──
- echo "[2/5] Esmane import (group migrate_drupal_7) ..."
- docker exec "$C" sh -c "cd /opt/drupal && $DRUSH migrate:import \
- --group=migrate_drupal_7 --continue-on-failure -y" || true
- # ── 3. Puuduvad custom field storage'id ──
- echo "[3/5] Custom field storage'id ..."
- docker exec "$C" sh -c "cd /opt/drupal && $DRUSH scr /tmp/fix_fields.php"
- docker exec "$C" sh -c "cd /opt/drupal && $DRUSH scr /tmp/fix_fields2.php"
- # ── 4. Sisumigratsioonid (rollback + re-import, et parandused kehtiksid) ──
- echo "[4/5] Sisu migratsioon ..."
- for m in \
- upgrade_d7_field \
- upgrade_d7_field_instance \
- upgrade_d7_node_complete_kanne \
- upgrade_d7_node_complete_emal_liige \
- upgrade_d7_node_complete_projekt \
- upgrade_d7_node_complete_book \
- upgrade_d7_node_complete_page \
- upgrade_d7_node_complete_php \
- upgrade_d7_node_complete_filedepot_folder \
- upgrade_d7_url_alias \
- upgrade_d7_user \
- upgrade_d7_file \
- upgrade_d7_menu \
- upgrade_d7_menu_links; do
- docker exec "$C" sh -c "cd /opt/drupal && $DRUSH migrate:rollback $m -y" || true
- done
- docker exec "$C" sh -c "cd /opt/drupal && $DRUSH scr /tmp/fix_fields.php"
- docker exec "$C" sh -c "cd /opt/drupal && $DRUSH scr /tmp/fix_fields2.php"
- docker exec "$C" sh -c "cd /opt/drupal && $DRUSH migrate:import \
- --group=migrate_drupal_7 --continue-on-failure -y" || true
- # ── 5. Puhver + kokkuvõte ──
- echo "[5/5] Puhvri tühjendamine + kokkuvõte ..."
- docker exec "$C" sh -c "cd /opt/drupal && $DRUSH cache:rebuild" || true
- echo ""
- echo "=== $(date): Migratsioon valmis ==="
- echo "Kontroll:"
- echo " docker exec mariadb mariadb -u root -pai_root_pass_2026 -N -e \\"
- echo " 'SELECT COUNT(*) FROM dr_mustikas11.node_field_data;'"
- echo " (peaks olema 8277)"
- echo " https://ohmu.tail20e23.ts.net:8010/"
|