feat: add Task #82 - Decommission Plane Project Management
Created task documentation for removing Plane from TX1 Dallas server. Context: - Plane v2.4.2 was successfully deployed with 5 projects, labels, members - Gitea↔Plane sync via n8n had webhook loop issues (crash) - Team switched to Gitea's built-in Kanban project boards - Plane adds unnecessary complexity for minimal benefit Task deliverables: - Stop/remove Plane Docker containers on TX1 - Remove Nginx config for tasks.firefrostgaming.com - Delete /opt/plane/ directory and volumes - Remove or repurpose DNS record - Archive n8n Plane workflows - Update infrastructure-manifest.md Documentation includes: - Complete decommissioning steps with commands - Verification checklist - Context on why Plane didn't fit workflow - What replaces it (Gitea Projects) Priority: Tier 5 (Infrastructure Cleanup) Time estimate: 30 minutes Added to docs/core/tasks.md as Task #82 Created docs/tasks/plane-decommissioning/README.md Session: March 26, 2026 Chronicler: #41
This commit is contained in:
@@ -2452,3 +2452,34 @@ Multi-step form that guides Chroniclers through writing memorials following FFG-
|
||||
|
||||
---
|
||||
|
||||
## 🔧 TIER 5: INFRASTRUCTURE CLEANUP
|
||||
|
||||
Maintenance tasks for keeping infrastructure lean and efficient.
|
||||
|
||||
---
|
||||
|
||||
### 82. Decommission Plane Project Management
|
||||
**Time:** 30 minutes
|
||||
**Status:** 🟡 PENDING
|
||||
**Priority:** Tier 5 — Infrastructure Cleanup
|
||||
**Documentation:** `docs/tasks/plane-decommissioning/`
|
||||
|
||||
Remove Plane project management system from TX1 Dallas. Plane worked technically but didn't fit workflow. Team switched to Gitea's built-in Kanban project boards instead.
|
||||
|
||||
**Key Deliverables:**
|
||||
- Stop and remove Plane Docker containers on TX1
|
||||
- Remove Nginx configuration for tasks.firefrostgaming.com
|
||||
- Delete /opt/plane/ directory and volumes
|
||||
- Remove or repurpose DNS record (tasks.firefrostgaming.com)
|
||||
- Archive n8n Plane workflows
|
||||
- Update infrastructure-manifest.md to remove Plane
|
||||
|
||||
**Dependencies:**
|
||||
- Confirm Gitea Kanban projects are working (already in use)
|
||||
- Backup Plane data if needed (optional)
|
||||
|
||||
**Context:**
|
||||
Plane v2.4.2 was deployed with 5 projects, member invites, and Fire/Frost labels. Gitea↔Plane sync via n8n had webhook loop issues. Gitea Projects proved simpler and more aligned with team workflow.
|
||||
|
||||
---
|
||||
|
||||
|
||||
179
docs/tasks/plane-decommissioning/README.md
Normal file
179
docs/tasks/plane-decommissioning/README.md
Normal file
@@ -0,0 +1,179 @@
|
||||
# Task #82: Decommission Plane Project Management
|
||||
|
||||
**Created:** March 26, 2026
|
||||
**Status:** 🟡 PENDING
|
||||
**Priority:** Medium
|
||||
**Time Estimate:** 30 minutes
|
||||
**Assigned To:** Next Chronicler
|
||||
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
Remove Plane project management system from TX1 Dallas server. Plane was successfully deployed but did not fit Firefrost's workflow. Team switched to Gitea's built-in Kanban project boards instead.
|
||||
|
||||
**Decision Context:**
|
||||
- Plane worked technically (5 projects created, members invited, labels configured)
|
||||
- Gitea↔Plane sync via n8n had issues (webhook loop crash)
|
||||
- Gitea Kanban projects proved to be better fit for team workflow
|
||||
- Plane adds unnecessary complexity and resource usage
|
||||
|
||||
---
|
||||
|
||||
## What Was Plane?
|
||||
|
||||
**Deployment Details:**
|
||||
- **Location:** TX1 Dallas (38.68.14.26)
|
||||
- **URL:** tasks.firefrostgaming.com
|
||||
- **Port:** 8090 (proxied via Nginx)
|
||||
- **Version:** Plane v2.4.2 (self-hosted)
|
||||
- **Installation Path:** `/opt/plane/`
|
||||
|
||||
**What Was Created:**
|
||||
- 5 projects: Infrastructure, Community, Content, Builds, Operations
|
||||
- 14 labels in Fire/Frost brand colors
|
||||
- Meg and Holly invited as members
|
||||
- Workspace: `firefrost-tasks`
|
||||
|
||||
**Integration Attempts:**
|
||||
- n8n workflow: Gitea issue → Plane task (working)
|
||||
- n8n workflow: Plane → Gitea (webhook loop, deactivated)
|
||||
|
||||
---
|
||||
|
||||
## Decommissioning Steps
|
||||
|
||||
### Step 1: Stop Plane Services
|
||||
|
||||
SSH to TX1:
|
||||
```bash
|
||||
ssh root@38.68.14.26
|
||||
cd /opt/plane
|
||||
docker-compose ps
|
||||
docker-compose down
|
||||
```
|
||||
|
||||
### Step 2: Remove Nginx Configuration
|
||||
|
||||
```bash
|
||||
rm /etc/nginx/sites-enabled/plane
|
||||
rm /etc/nginx/sites-available/plane
|
||||
nginx -t && systemctl reload nginx
|
||||
```
|
||||
|
||||
### Step 3: Backup Data (Optional)
|
||||
|
||||
If you want to preserve Plane data before deletion:
|
||||
```bash
|
||||
cd /opt/plane
|
||||
tar -czf /root/plane-backup-$(date +%Y%m%d).tar.gz volumes/
|
||||
```
|
||||
|
||||
### Step 4: Remove Plane Installation
|
||||
|
||||
**CAUTION:** This permanently deletes all Plane data.
|
||||
|
||||
```bash
|
||||
cd /opt/plane
|
||||
docker-compose down -v # Removes containers AND volumes
|
||||
cd /opt
|
||||
rm -rf plane/
|
||||
```
|
||||
|
||||
### Step 5: Remove DNS Record
|
||||
|
||||
**Option A:** Remove `tasks.firefrostgaming.com` DNS A record entirely
|
||||
|
||||
**Option B:** Repurpose subdomain for something else (decide before removing)
|
||||
|
||||
### Step 6: Remove n8n Workflows
|
||||
|
||||
Check n8n for Plane-related workflows:
|
||||
- "Gitea Issue → Plane Task" (was working, now obsolete)
|
||||
- "Plane Task → Gitea Issue" (was deactivated due to webhook loop)
|
||||
|
||||
Delete or archive these workflows.
|
||||
|
||||
---
|
||||
|
||||
## Documentation Updates
|
||||
|
||||
Update these files after decommissioning:
|
||||
|
||||
1. **docs/core/infrastructure-manifest.md**
|
||||
- Remove Plane from TX1 service list
|
||||
- Update port 8090 status to "available"
|
||||
|
||||
2. **docs/core/tasks.md**
|
||||
- Mark this task as COMPLETE
|
||||
- Remove any Plane-related tasks
|
||||
|
||||
3. **SESSION-HANDOFF-NEXT.md**
|
||||
- Remove Plane references from pending items
|
||||
|
||||
4. **docs/tasks/gitea-plane-integration/**
|
||||
- Mark directory as ABANDONED
|
||||
- Add README explaining why integration was abandoned
|
||||
|
||||
---
|
||||
|
||||
## Verification
|
||||
|
||||
After decommissioning, verify:
|
||||
|
||||
- [ ] `docker ps` on TX1 shows no Plane containers
|
||||
- [ ] `https://tasks.firefrostgaming.com` returns connection error (or redirects if repurposed)
|
||||
- [ ] Port 8090 freed up: `netstat -tulpn | grep 8090` returns nothing
|
||||
- [ ] `/opt/plane/` directory removed
|
||||
- [ ] Nginx config removed: `ls /etc/nginx/sites-*/ | grep plane` returns nothing
|
||||
- [ ] n8n workflows archived or deleted
|
||||
- [ ] Documentation updated
|
||||
|
||||
---
|
||||
|
||||
## Why Plane Didn't Fit
|
||||
|
||||
**Technical Success:**
|
||||
- Deployment worked
|
||||
- Projects created successfully
|
||||
- Member invites sent
|
||||
- Labels configured
|
||||
|
||||
**Workflow Mismatch:**
|
||||
- Gitea's built-in Kanban boards proved simpler
|
||||
- n8n sync integration was fragile (webhook loops)
|
||||
- Added complexity without clear benefit
|
||||
- Team already comfortable with Gitea workflow
|
||||
|
||||
**Decision:** Simplify stack, use Gitea Projects exclusively.
|
||||
|
||||
---
|
||||
|
||||
## What Replaces Plane?
|
||||
|
||||
**Gitea Projects (Kanban Boards):**
|
||||
- Native to our existing Git workflow
|
||||
- No additional infrastructure
|
||||
- No sync complexity
|
||||
- Familiar interface for team
|
||||
- Integrated with issues/PRs
|
||||
|
||||
---
|
||||
|
||||
## Related Tasks
|
||||
|
||||
- Task #54: n8n Workflow Documentation (update to remove Plane workflows)
|
||||
- None currently (Plane was isolated experiment)
|
||||
|
||||
---
|
||||
|
||||
## Notes
|
||||
|
||||
- Plane data is not mission-critical (project tracking can be recreated in Gitea)
|
||||
- No external dependencies to notify (internal tool only)
|
||||
- DNS change may take 24-48 hours to propagate
|
||||
- Consider what to do with `tasks.firefrostgaming.com` subdomain
|
||||
|
||||
---
|
||||
|
||||
**Standard:** This task follows FFG-STD-002 (Task Documentation Standard)
|
||||
Reference in New Issue
Block a user