docs: add two-node deployment architecture with git-based sync
Added deployment architecture section describing: - localhost node (primary/development) - aitbc1 node (secondary, accessed via SSH) - Git-based code synchronization workflow (via Gitea) - Explicit prohibition of SCP for code updates - SSH key setup instructions - Automated sync script example - Benefits of git-based deployment
This commit is contained in:
@@ -544,6 +544,69 @@ aitbc env switch <environment> # Switch environment (dev/staging/prod)
|
|||||||
- ✅ **Performance benchmarks** and security validation
|
- ✅ **Performance benchmarks** and security validation
|
||||||
|
|
||||||
### **Phase 1: Test Network Deployment (IMMEDIATE)**
|
### **Phase 1: Test Network Deployment (IMMEDIATE)**
|
||||||
|
|
||||||
|
#### **Deployment Architecture: Two-Node Setup**
|
||||||
|
|
||||||
|
**Node Configuration:**
|
||||||
|
- **localhost**: AITBC server (development/primary node)
|
||||||
|
- **aitbc1**: AITBC server (secondary node, accessed via SSH)
|
||||||
|
|
||||||
|
**Code Synchronization Strategy (Git-Based)**
|
||||||
|
|
||||||
|
⚠️ **IMPORTANT**: aitbc1 node must update codebase via Gitea Git operations (push/pull), NOT via SCP
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# === LOCALHOST NODE (Development/Primary) ===
|
||||||
|
# 1. Make changes on localhost
|
||||||
|
|
||||||
|
# 2. Commit and push to Gitea
|
||||||
|
git add .
|
||||||
|
git commit -m "feat: implement mesh network phase X"
|
||||||
|
git push origin main
|
||||||
|
|
||||||
|
# 3. SSH to aitbc1 node to trigger update
|
||||||
|
ssh aitbc1
|
||||||
|
|
||||||
|
# === AITBC1 NODE (Secondary) ===
|
||||||
|
# 4. Pull latest code from Gitea (DO NOT USE SCP)
|
||||||
|
cd /opt/aitbc
|
||||||
|
git pull origin main
|
||||||
|
|
||||||
|
# 5. Restart services
|
||||||
|
./scripts/plan/01_consensus_setup.sh
|
||||||
|
# ... other phase scripts
|
||||||
|
```
|
||||||
|
|
||||||
|
**Git-Based Workflow Benefits:**
|
||||||
|
- ✅ Version control and history tracking
|
||||||
|
- ✅ Rollback capability via git reset
|
||||||
|
- ✅ Conflict resolution through git merge
|
||||||
|
- ✅ Audit trail of all changes
|
||||||
|
- ✅ No manual file copying (SCP) which can cause inconsistencies
|
||||||
|
|
||||||
|
**SSH Access Setup:**
|
||||||
|
```bash
|
||||||
|
# From localhost to aitbc1
|
||||||
|
ssh-copy-id user@aitbc1 # Setup key-based auth
|
||||||
|
|
||||||
|
# Test connection
|
||||||
|
ssh aitbc1 "cd /opt/aitbc && git status"
|
||||||
|
```
|
||||||
|
|
||||||
|
**Automated Sync Script (Optional):**
|
||||||
|
```bash
|
||||||
|
#!/bin/bash
|
||||||
|
# /opt/aitbc/scripts/sync-aitbc1.sh
|
||||||
|
|
||||||
|
# Push changes from localhost
|
||||||
|
git push origin main
|
||||||
|
|
||||||
|
# SSH to aitbc1 and pull
|
||||||
|
ssh aitbc1 "cd /opt/aitbc && git pull origin main && ./scripts/restart-services.sh"
|
||||||
|
```
|
||||||
|
|
||||||
|
#### **Phase 1 Implementation**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Execute complete implementation
|
# Execute complete implementation
|
||||||
cd /opt/aitbc/scripts/plan
|
cd /opt/aitbc/scripts/plan
|
||||||
|
|||||||
Reference in New Issue
Block a user