#!/bin/bash # 项目状态检查脚本 # 扫描仓库并显示项目状态、部署情况、文档完整性等 echo "╔════════════════════════════════════════════════════════════════╗" echo "║ K3s Monorepo - 项目状态 ║" echo "╚════════════════════════════════════════════════════════════════╝" echo "" # 检查已部署的应用 echo "📦 已部署应用:" echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" if command -v kubectl &> /dev/null; then kubectl get deployments -A 2>/dev/null | grep -E "(php-test|go01|wordpress|registry|n8n|gitea)" | \ awk '{printf " ✅ %-25s %-15s %s/%s replicas\n", $2, $1, $4, $3}' || echo " ⚠️ 无法获取部署信息" else echo " ⚠️ kubectl 未安装,无法检查部署状态" fi echo "" echo "📱 应用项目:" echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" # 检查每个应用目录 for dir in php-test go01 rails/*/ www; do if [ -d "$dir" ]; then name=$(basename "$dir") readme="" dockerfile="" k8s="" [ -f "$dir/README.md" ] && readme="📄" || readme=" " [ -f "$dir/Dockerfile" ] && dockerfile="🐳" || dockerfile=" " [ -d "$dir/k8s" ] || [ -f "$dir/k8s-deployment.yaml" ] && k8s="☸️ " || k8s=" " printf " %-30s %s %s %s\n" "$name" "$readme" "$dockerfile" "$k8s" fi done echo "" echo "🏗️ 基础设施服务:" echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" for dir in k3s/*/; do if [ -d "$dir" ]; then name=$(basename "$dir") yaml_count=$(find "$dir" -name "*.yaml" 2>/dev/null | wc -l) printf " %-30s %2d YAML 文件\n" "$name" "$yaml_count" fi done echo "" echo "🛠️ 平台工具:" echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" for dir in traefik kuboard proxy; do if [ -d "$dir" ]; then yaml_count=$(find "$dir" -name "*.yaml" 2>/dev/null | wc -l) printf " %-30s %2d YAML 文件\n" "$dir" "$yaml_count" fi done echo "" echo "📊 统计信息:" echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" total_yaml=$(find . -name "*.yaml" -type f 2>/dev/null | wc -l) total_md=$(find . -name "*.md" -type f 2>/dev/null | wc -l) total_sh=$(find . -name "*.sh" -type f 2>/dev/null | wc -l) total_dockerfile=$(find . -name "Dockerfile" -type f 2>/dev/null | wc -l) echo " YAML 配置文件: $total_yaml" echo " Markdown 文档: $total_md" echo " Shell 脚本: $total_sh" echo " Dockerfile: $total_dockerfile" echo "" echo "💡 提示:" echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" echo " 📄 = 有 README 文档" echo " 🐳 = 有 Dockerfile" echo " ☸️ = 有 Kubernetes 配置" echo "" echo " 查看详细信息: cat PROJECT-INDEX.md" echo " 查看目录结构: ./scripts/project-tree.sh" echo " 查看集群状态: make status" echo ""