Files
Migrations/phase2-tasks.md

136 lines
4.1 KiB
Markdown
Raw Normal View History

# Phase 2 Migration Task List
## Sibiu Independent — May 2026
Generated: 2026-05-29
Scope: Web node (zamolxis) — Phase 2 + repo wrap-up
---
## Tasks
### TASK-001
**Subject:** rsync WP files from dracula to zamolxis
**Active form:** Rsyncing WP files
**Description:**
rsync all WordPress files from root@100.99.157.56 port 79 (/www/wwwroot/sibiuindependent.ro/) to zamolxis (/var/www/sibiuindependent.ro/), excluding cache and w3tc-config. Fix ownership to www:www.
**Command reference:**
```sh
rsync -avz --progress \
-e "ssh -i /root/.ssh/id_ed25519 -p 79" \
--exclude="wp-content/cache/" \
--exclude="wp-content/w3tc-config/" \
root@100.99.157.56:/www/wwwroot/sibiuindependent.ro/ \
/var/www/sibiuindependent.ro/
chown -R www:www /var/www/sibiuindependent.ro
```
**Status:** [ ] Pending
---
### TASK-002
**Subject:** Update wp-config.php on zamolxis
**Active form:** Updating wp-config.php
**Description:**
Update DB_HOST to 100.67.166.29, DB credentials to sql_sibiuindepen user, add WP_REDIS_PATH and WP_REDIS_SCHEME constants for unix socket Redis.
**Changes required in /var/www/sibiuindependent.ro/wp-config.php:**
```php
define( 'DB_HOST', '100.67.166.29' );
// Add before "That's all, stop editing":
define( 'WP_REDIS_PATH', '/var/run/redis/redis.sock' );
define( 'WP_REDIS_SCHEME', 'unix' );
```
**Status:** [ ] Pending
---
### TASK-003
**Subject:** Remove W3TC and install Redis Object Cache
**Active form:** Replacing W3TC with Redis Object Cache
**Description:**
Remove W3TC plugin dir and its drop-ins (advanced-cache.php, object-cache.php). Install Redis Object Cache plugin (Till Kruss) if not already present.
**Command reference:**
```sh
rm -rf /var/www/sibiuindependent.ro/wp-content/plugins/w3-total-cache
rm -f /var/www/sibiuindependent.ro/wp-content/advanced-cache.php
rm -f /var/www/sibiuindependent.ro/wp-content/object-cache.php
# Check if Redis Object Cache already exists from dracula sync:
ls /var/www/sibiuindependent.ro/wp-content/plugins/redis-cache/
# If not present, install via WP-CLI:
wp --path=/var/www/sibiuindependent.ro --allow-root \
plugin install redis-cache --activate
```
**Status:** [ ] Pending
---
### TASK-004
**Subject:** Run pre-cutover checklist on zamolxis
**Active form:** Running pre-cutover checklist
**Description:**
Verify: site responds on port 80, DB connection works from zamolxis to decebal, Redis connected, PHP extensions present (imagick, redis, pdo_mysql, opcache, intl, soap, sodium), nginx fastcgi_cache working (MISS then HIT on second request).
**Command reference:**
```sh
# 1. Site responds
curl -sk -o /dev/null -w "%{http_code}" \
http://100.115.128.41/ \
-H "Host: sibiuindependent.ro"
# Expected: 200
# 2. DB connection
mysql -h 100.67.166.29 \
-u sql_sibiuindepen -p \
--get-server-public-key \
-e "SELECT COUNT(*) FROM wp_posts WHERE post_status='publish';"
# 3. Redis object cache status
wp --path=/var/www/sibiuindependent.ro --allow-root redis-cache status
# 4. PHP extensions
php85 -m | grep -E "imagick|redis|pdo_mysql|opcache|intl|soap|sodium"
# 5. nginx fastcgi_cache — first: MISS, second: HIT
curl -sI http://100.115.128.41/ -H "Host: sibiuindependent.ro" | grep X-Cache-Status
curl -sI http://100.115.128.41/ -H "Host: sibiuindependent.ro" | grep X-Cache-Status
```
**Status:** [ ] Pending
---
### TASK-005
**Subject:** Push final README update to repo
**Active form:** Updating repo
**Description:**
Update README with Phase 2/3 completion status and push to Gitea.
**Steps:**
1. Update Open Items checklist in README.md — mark Phase 2 tasks complete
2. Update Deployment Status table if applicable
3. `git add README.md && git commit -m "docs: mark Phase 2 complete"`
4. `git push`
**Status:** [ ] Pending
---
## Execution Order
| # | Task ID | Subject | Blocker |
|---|---|---|---|
| 1 | TASK-001 | rsync WP files | None — run first |
| 2 | TASK-002 | Update wp-config.php | TASK-001 (files must be present) |
| 3 | TASK-003 | Remove W3TC / install Redis Object Cache | TASK-001 (files must be present) |
| 4 | TASK-004 | Pre-cutover checklist | TASK-002, TASK-003 |
| 5 | TASK-005 | Push README update | TASK-004 (checklist must pass) |