Remove package.json, build.js, tests/*.mjs, .nvmrc, and the old website template. Update MAINTENANCE.md with Go CLI commands. Switch dependabot from npm to gomod. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
126 lines
3.5 KiB
Markdown
126 lines
3.5 KiB
Markdown
# 🔧 Maintenance Guide for Awesome Docker
|
|
|
|
This guide helps maintainers keep the awesome-docker list up-to-date and high-quality.
|
|
|
|
## 🤖 Automated Systems
|
|
|
|
### Weekly Health Reports
|
|
- **What**: Checks all GitHub repositories for activity, archived status, and maintenance
|
|
- **When**: Every Monday at 9 AM UTC
|
|
- **Where**: Creates/updates a GitHub issue with label `health-report`
|
|
- **Action**: Review the report and mark abandoned projects with `:skull:`
|
|
|
|
### Broken Links Detection
|
|
- **What**: Tests all links in README.md for availability
|
|
- **When**: Every Saturday at 2 AM UTC + on every PR
|
|
- **Where**: Creates/updates a GitHub issue with label `broken-links`
|
|
- **Action**: Fix or remove broken links, or add to exclusion list
|
|
|
|
### PR Validation
|
|
- **What**: Checks for duplicate links and basic validation
|
|
- **When**: On every pull request
|
|
- **Action**: Automated - contributors see results immediately
|
|
|
|
## 📋 Manual Maintenance Tasks
|
|
|
|
### Monthly Review (First Monday of the month)
|
|
1. Check health report issue for archived/stale projects
|
|
2. Mark archived projects with `:skull:` in README.md
|
|
3. Review projects with 2+ years of inactivity
|
|
4. Remove projects that are truly abandoned/broken
|
|
|
|
### Quarterly Deep Dive (Every 3 months)
|
|
1. Run: `./awesome-docker health` then `./awesome-docker report` for detailed report
|
|
2. Review project categories - are they still relevant?
|
|
3. Check for popular new Docker tools to add
|
|
4. Update documentation links if newer versions exist
|
|
|
|
### Annual Cleanup (January)
|
|
1. Remove all `:skull:` projects older than 1 year
|
|
2. Review CONTRIBUTING.md guidelines
|
|
3. Update year references in documentation
|
|
|
|
## 🛠️ Maintenance Commands
|
|
|
|
```bash
|
|
# Build the CLI
|
|
go build -o awesome-docker ./cmd/awesome-docker
|
|
|
|
# Lint README formatting (add --fix to auto-fix)
|
|
./awesome-docker lint
|
|
./awesome-docker lint --fix
|
|
|
|
# Check all links (requires GITHUB_TOKEN for GitHub repos)
|
|
./awesome-docker check
|
|
|
|
# PR validation (lint + external link check)
|
|
./awesome-docker validate
|
|
|
|
# Score repository health (requires GITHUB_TOKEN)
|
|
./awesome-docker health
|
|
|
|
# Generate health report from cache
|
|
./awesome-docker report
|
|
|
|
# Build the website
|
|
./awesome-docker build
|
|
|
|
# Run tests
|
|
go test ./...
|
|
```
|
|
|
|
## 📊 Quality Standards
|
|
|
|
### Adding New Projects
|
|
- Must have clear documentation (README with install/usage)
|
|
- Should have activity within last 18 months
|
|
- GitHub project preferred over website links
|
|
- Must be Docker/container-related
|
|
|
|
### Marking Projects as Abandoned
|
|
Use `:skull:` emoji when:
|
|
- Repository is archived on GitHub
|
|
- No commits for 2+ years
|
|
- Project explicitly states it's deprecated
|
|
- Maintainer confirms abandonment
|
|
|
|
### Removing Projects
|
|
Only remove (don't just mark `:skull:`):
|
|
- Broken/404 links that can't be fixed
|
|
- Duplicate entries
|
|
- Spam or malicious projects
|
|
- Projects that never met quality standards
|
|
|
|
## 🚨 Emergency Procedures
|
|
|
|
### Critical Broken Links
|
|
If important resources are down:
|
|
1. Check if they moved (update URL)
|
|
2. Search for alternatives
|
|
3. Check Internet Archive for mirrors
|
|
4. Temporarily comment out until resolved
|
|
|
|
### Spam Pull Requests
|
|
1. Close immediately
|
|
2. Mark as spam
|
|
3. Block user if repeated offense
|
|
4. Don't engage in comments
|
|
|
|
## 📈 Metrics to Track
|
|
|
|
- Total projects: ~731 GitHub repos
|
|
- Health status: aim for <5% archived
|
|
- Link availability: aim for >98% working
|
|
- PR merge time: aim for <7 days
|
|
- Weekly contributor engagement
|
|
|
|
## 🤝 Getting Help
|
|
|
|
- Open a discussion in GitHub Discussions
|
|
- Check AGENTS.md for AI assistant guidelines
|
|
- Review CONTRIBUTING.md for contributor info
|
|
|
|
---
|
|
|
|
*Last updated: 2025-10-01*
|