Jump to content

ICT:Drupal migration

From Costa Sano MediaWiki

Heritage Project: Drupal 11 Migration Blueprint (AlmaLinux 10.1)

1. Infrastructure Architecture

  • Web Server: AlmaLinux 10.1 (Hyper-V VM) - Apache 2.4 / PHP 8.3
  • Database Server: AlmaLinux 10.1 (Hyper-V VM) - MariaDB 10.11+
  • Proxy: IIS ARR (Windows Server) - SSL Offloading & Reverse Proxy

2. Installation Sequence (Web Server)

On the Web VM, execute the following to establish the "Secure Core":

  1. Install Composer:
    • php -r "copy('https://getcomposer.org', 'composer-setup.php');"
    • php composer-setup.php --install-dir=/usr/local/bin --filename=composer
  2. Scaffold Drupal 11:
    • cd /var/www
    • composer create-project drupal/recommended-project drupal
    • Note: DocumentRoot must point to /var/www/drupal/web

3. Twin-Server Database Handshake

On the MariaDB VM, grant remote access to the Web VM IP:

CREATE DATABASE drupal_heritage_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'drupal_admin'@'192.168.x.WEB_IP' IDENTIFIED BY 'PASSWORD';
GRANT ALL PRIVILEGES ON drupal_heritage_db.* TO 'drupal_admin'@'192.168.x.WEB_IP';
FLUSH PRIVILEGES;

On the Web VM, allow network connection via SELinux:

  • setsebool -P httpd_can_network_connect_db 1

4. Essential Module Stack ("The Pro Suite")

Install via Composer to ensure 10-year maintainability:

Module Purpose Note
[Toolbar] Enhanced Navigation DNN-style dropdown menus.
[Theme] Admin UI / Dark Mode Essential for senior eye comfort.
[[1]] Business Logic Engine Visual workflow (replaces Cargo/Hooks).
[[2]] User Landing Pages Masking ICT complexity for historians.
[[3]] Automatic Aliasing Automatic URL generation from Unique IDs.

5. Rapid Data Model Import Workflow

To bridge the DBML model from VS Code to Drupal:

  1. Export DBML to YAML via VS Code.
  2. Translate to Drupal Config: Map entities to Node Types and relationships to Entity References.
  3. Sync Directory: Place YAML files in /var/www/drupal/config/sync.
  4. Import: ./vendor/bin/drush config:import

6. Survival & Maintenance Checklist

  • Updates: composer update (Code) + drush updb (Database).
  • Documentation: All custom Content Types and ECA Workflows must be mirrored in this MediaWiki.
  • Backups: Snapshots of both Hyper-V VMs + MariaDB SQL dumps.