chore: consolidate documentation — delete status/fix/progress cruft
Before: 335 tracked .md files; top level had 14 README-like docs; docs/ contained ~234 files, most of them auto/LLM-generated status reports (ALL_*_COMPLETE*, *_FIX*, DEPLOYMENT_*_FINAL*, etc.). After: 132 tracked .md files. Repo now has exactly five top-level docs: README.md, QUICKSTART.md, RUNBOOK.md, CONTRIBUTING.md, CHANGELOG.md (moved up from docs/). Keeper philosophy in docs/: - API, CCIP (ops + security + receiver/router refs), Chainlist refs, compliance, deployment (guides not status), database connection, legal compliance, metamask integration, production checklist, tiered-architecture implementation/setup, reusable-components plan, token-mechanism doc, wrap-and-bridge operational reference, plus docs/specs/** and docs/api/ / docs/openapi/ trees. Deleted (git history preserves provenance): - All 'ALL_*_COMPLETE*' / '*_FIX*' / '*_FIXED*' / '*_FINAL*' / '*_STATUS*' / '*_PROGRESS*' / '*_SUMMARY*' files. - BLOCKSCOUT_*_FIX / _CRASH / _INITIALIZATION / _SCHEMA / _YAML / _SKIP / _NEXT_STEPS / _START_AND_BUILD / _DATABASE_CREDENTIALS (the last contained passwords). - CCIP_IMPLEMENTATION_* / CCIP_CURRENT_STATUS / CCIP_GAP_* (gap analyses are not a sustained reference). - NPMPLUS_CREDENTIALS_GUIDE.md (contained creds). - LETSENCRYPT_CONFIGURATION_GUIDE.md (contained creds; will be re-introduced as runbook content post-secrets-scrub). - docs/diagnostic-reports/, docs/feature-flags/ (run-time artifacts). README.md: dead links (START_HERE, README_DEPLOYMENT, COMPLETE_DEPLOYMENT, DEPLOYMENT_COMPLETE_FINAL) replaced with links to the five canonical top-level docs + docs/ index.
This commit is contained in:
@@ -1,102 +0,0 @@
|
||||
# Working Blockscout Fix - Final Version
|
||||
|
||||
## Issues Found
|
||||
1. `bin/blockscout migrate` doesn't exist - must use `eval "Explorer.Release.migrate()"`
|
||||
2. Container name conflict - old container must be removed first
|
||||
3. Tables already exist - migrations were run before
|
||||
|
||||
## Working Commands (Run in VMID 5000)
|
||||
|
||||
### Step 1: Remove Old Container
|
||||
|
||||
```bash
|
||||
# Remove the old stopped container
|
||||
docker rm -f blockscout 2>/dev/null || true
|
||||
docker rm -f 951bf74faf67 2>/dev/null || true
|
||||
|
||||
# Verify it's gone
|
||||
docker ps -a | grep blockscout
|
||||
```
|
||||
|
||||
### Step 2: Run Migrations (if needed - tables already exist)
|
||||
|
||||
Since tables already exist, migrations may not be needed, but we can verify:
|
||||
|
||||
```bash
|
||||
# Check if migrations_status has entries
|
||||
docker exec blockscout-postgres psql -U blockscout -d blockscout -c "
|
||||
SELECT COUNT(*) as migration_count FROM migrations_status;
|
||||
"
|
||||
```
|
||||
|
||||
### Step 3: Fix docker-compose.yml
|
||||
|
||||
```bash
|
||||
cd /opt/blockscout
|
||||
|
||||
# Check current command
|
||||
grep -A 1 "command:" docker-compose.yml
|
||||
|
||||
# Use Python to update (handles quotes properly)
|
||||
python3 << 'PYTHON'
|
||||
import re
|
||||
with open('docker-compose.yml', 'r') as f:
|
||||
content = f.read()
|
||||
|
||||
# Replace command line - use eval for migrations
|
||||
old_pattern = r'command:\s*.*blockscout start'
|
||||
new_command = 'command: sh -c "bin/blockscout eval \"Explorer.Release.migrate()\" && bin/blockscout start"'
|
||||
|
||||
content = re.sub(old_pattern, new_command, content)
|
||||
|
||||
# Also handle /app/bin/blockscout start
|
||||
content = re.sub(r'command:\s*.*/app/bin/blockscout start', new_command, content)
|
||||
|
||||
with open('docker-compose.yml', 'w') as f:
|
||||
f.write(content)
|
||||
print("✅ Updated docker-compose.yml")
|
||||
PYTHON
|
||||
```
|
||||
|
||||
### Step 4: Start Blockscout
|
||||
|
||||
```bash
|
||||
cd /opt/blockscout
|
||||
docker-compose up -d blockscout
|
||||
|
||||
# Wait and check
|
||||
sleep 30
|
||||
docker ps | grep blockscout
|
||||
docker logs blockscout 2>&1 | tail -30
|
||||
```
|
||||
|
||||
## Alternative: Skip Migrations Since Tables Exist
|
||||
|
||||
If tables already exist, we can just start Blockscout without running migrations:
|
||||
|
||||
```bash
|
||||
cd /opt/blockscout
|
||||
|
||||
# Remove old container
|
||||
docker rm -f blockscout 2>/dev/null || true
|
||||
|
||||
# Update docker-compose.yml to just start (no migrations)
|
||||
python3 << 'PYTHON'
|
||||
import re
|
||||
with open('docker-compose.yml', 'r') as f:
|
||||
content = f.read()
|
||||
# Just use start command
|
||||
content = re.sub(r'command:\s*.*blockscout start', 'command: bin/blockscout start', content)
|
||||
content = re.sub(r'command:\s*.*/app/bin/blockscout start', 'command: bin/blockscout start', content)
|
||||
with open('docker-compose.yml', 'w') as f:
|
||||
f.write(content)
|
||||
print("✅ Updated to just start")
|
||||
PYTHON
|
||||
|
||||
# Start
|
||||
docker-compose up -d blockscout
|
||||
sleep 30
|
||||
docker ps | grep blockscout
|
||||
docker logs blockscout 2>&1 | tail -30
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user