Skip to content

Latest commit

 

History

History
192 lines (155 loc) · 5.92 KB

File metadata and controls

192 lines (155 loc) · 5.92 KB

Project Organization Summary

📚 Navigation: Main README | Documentation Index | Git Cleanup

This document summarizes the file organization and cleanup performed on the project.

Related Documentation:

🔄 Recent Reorganization (January 2026)

Root Directory Cleanup

  • ✅ Moved .cursorrules to .vscode/
  • ✅ Moved epyc.code-workspace to .vscode/
  • ✅ Moved n8n-backup-20250814-1732.tar.gz to backups/n8n/
  • ✅ Removed orphaned values.yaml file
  • ✅ Removed temporary couchdb_metrics.txt file
  • ✅ Removed Divi.zip (obsolete WordPress theme)
  • ✅ Cleaned up old Terraform state backups
  • ✅ Removed all .DS_Store files throughout repository

Directory Renaming

  • ✅ Renamed kubernetes/nfty/ to kubernetes/ntfy/ (correct spelling)
  • ✅ Updated namespace references in ntfy manifests
  • ✅ Updated all script references to use new path

Directory Consolidation

  • ✅ Consolidated kubernetes/ethosenv/ into kubernetes/ethosenv-k8s/
  • ✅ Removed legacy Docker Compose files from ethosenv

New Directory Structure

  • ✅ Created .vscode/ for IDE configuration files
  • ✅ Created backups/n8n/ for n8n backup archives

📁 Files Organized

Scripts → scripts/

  • check-services.sh - Health monitoring script
  • fix-nfs-connectivity.sh - NFS diagnostics
  • migrate-to-local-storage.sh - Storage migration utility
  • remove-airflow.sh - Airflow cleanup script
  • setup-letsencrypt.sh - SSL certificate automation
  • setup-reverse-proxy.sh - Nginx proxy setup
  • test-all-domains.sh - Connectivity testing
  • organize-*.sh - Project organization scripts
  • validate-kubernetes.sh - Kubernetes validation

Documentation → docs/

  • REVERSE-PROXY-SETUP.md - Complete proxy setup guide

Configuration → config/

  • nginx/nginx-reverse-proxy.conf - Main nginx configuration
  • nginx/ssl-params.conf - SSL/TLS parameters
  • nginx/security-headers.conf - Security headers

Kubernetes Manifests → kubernetes/

  • metallb-fix.yaml - MetalLB configuration
  • nfs-provisioner.yaml - NFS storage provisioner
  • traefik-service.yaml - Traefik service configuration

Templates → templates/

  • cloud-init-userdata.tftpl - VM initialization template

📚 Documentation Added

Directory READMEs

  • scripts/README.md - Complete scripts documentation
  • docs/README.md - Documentation index
  • config/README.md - Configuration guide

Updated Main README

  • ✅ Updated project structure diagram
  • ✅ Added quick start section
  • ✅ Added cross-references to organized documentation

🔧 Script Updates

Path Corrections

  • ✅ Updated setup-reverse-proxy.sh to reference new config file locations
  • ✅ All scripts now work from their new locations

🗑️ Cleanup Completed

Removed from Root Directory

  • ✅ All utility scripts moved to scripts/
  • ✅ All configuration files moved to config/
  • ✅ All documentation moved to docs/
  • ✅ All Kubernetes manifests moved to kubernetes/
  • ✅ Template files moved to templates/

Files Remaining in Root (Appropriate)

  • main.tf - Terraform root configuration
  • variables.tf - Terraform variables
  • outputs.tf - Terraform outputs
  • terraform.tfvars - Variable values
  • nok8s.tfvars - Non-Kubernetes variable values
  • kubeconfig.yaml - Kubernetes configuration
  • README.md - Main project documentation
  • .gitignore - Git ignore rules
  • .terraform.lock.hcl - Terraform lock file
  • terraform.tfstate - Terraform state
  • terraform.tfstate.backup - Single state backup
  • ssh_config - SSH configuration

📂 Current Directory Structure

.
├── .vscode/                    # IDE configuration (NEW)
│   ├── .cursorrules
│   └── epyc.code-workspace
├── backups/
│   ├── ethosenv/
│   ├── n8n/                    # NEW - n8n backup archives
│   └── wordpress/
├── kubernetes/
│   ├── ntfy/                   # RENAMED from nfty
│   ├── ethosenv-k8s/           # PRIMARY (consolidated)
│   └── ...
├── main.tf
├── variables.tf
├── outputs.tf
├── README.md
├── .gitignore
├── kubeconfig.yaml
└── ssh_config

🎯 Benefits of Organization

Improved Maintainability

  • Clear separation of concerns
  • Easy to find specific files
  • Logical grouping of related files

Better Documentation

  • Comprehensive READMEs for each directory
  • Clear usage instructions
  • Cross-referenced documentation

Enhanced Usability

  • Scripts are properly documented
  • Configuration files are organized
  • Easy onboarding for new users

Professional Structure

  • Industry-standard directory layout
  • Clean root directory
  • Proper file categorization

🔄 Usage After Organization

Running Scripts

# From project root
./scripts/test-all-domains.sh
./scripts/setup-reverse-proxy.sh

Accessing Documentation

# View script documentation
cat scripts/README.md

# View setup guide
cat docs/REVERSE-PROXY-SETUP.md

Using Configuration Files

# Copy nginx configs
sudo cp config/nginx/*.conf /etc/nginx/sites-available/

IDE Configuration

IDE configuration files are now in .vscode/:

# Open workspace in VS Code
code .vscode/epyc.code-workspace

Kubernetes ntfy Service

The ntfy notification service is now at the correct path:

# Deploy ntfy
kubectl apply -f kubernetes/ntfy/

This organization makes the project more professional, maintainable, and user-friendly while preserving all functionality.