Files
awesome-docker/.github/MAINTENANCE.md
Julien Bisconti 5b46451014 Modernization (thanks to AI) (#1187)
* -  Removed 3 broken links (labex.io, hashnode.com entries)
-  Fixed rust-lang.org redirect issue
-  Added problematic domains to exclusion list (YouTube playlists, aquasec, cloudsmith)
-  Updated all npm dependencies to latest versions

-  **health_check.mjs** - Comprehensive repository health checker
  - Detects archived repositories
  - Identifies stale projects (2+ years inactive)
  - Flags inactive projects (1-2 years)
  - Generates detailed health reports
  - Run with: `npm run health-check`

-  **test_all.mjs** - Now detects archived repositories
  - Added `isArchived` field to GraphQL query
  - Warns about archived repos that should be marked `💀`
  - Non-blocking warnings (doesn't fail builds)

- Runs every Monday at 9 AM UTC
- Checks all 731+ GitHub repositories for health
- Auto-creates/updates GitHub issue with findings
- Labels: `health-report`, `maintenance`
- Manual trigger available

- Runs every Saturday at 2 AM UTC
- Tests all external links
- Auto-creates issue when links break
- Auto-closes issue when all links fixed
- Labels: `broken-links`, `bug`

- Already checks for duplicates
- Now also checks for archived repos
- Validates link format and availability

-  **MAINTENANCE.md** - Complete guide for maintainers
  - Monthly, quarterly, and annual tasks
  - Emergency procedures
  - Quality standards
  - Metrics to track

-  **AGENTS.md** - Updated with new commands
  - Added health-check command
  - Noted GITHUB_TOKEN requirements
  - Added alphabetical sorting guideline

- **Total Links**: 883 (731 GitHub repos + 152 external)
- **Working Links**: >99% (after fixes)
- **Abandoned Projects**: 15 marked with `💀`
- **Automated Checks**: 3 workflows running

- **Automatic detection** of abandoned/archived projects
- **Weekly monitoring** ensures issues are caught early
- **Proactive alerts** via GitHub issues

- No more manual link checking (automated weekly)
- Archived repos detected automatically
- Contributors get instant PR feedback

- Health metrics tracked over time
- Clear standards documented
- Easy onboarding for new maintainers

- Monday: Health report generated and posted
- Saturday: Link validation runs

- Review health report issue
- Mark any newly archived projects with `💀`

- Run full health check: `npm run health-check`
- Review inactive projects (1-2 years)
- Consider removing very old abandoned projects

- Deep cleanup of `💀` projects
- Update documentation
- Review categories and organization

1. **Auto-PR for Archived Repos**: Bot could auto-create PRs to mark archived repos
2. **Contribution Stats**: Track and display top contributors
3. **Category Health**: Per-category health metrics
4. **Dependency Updates**: Dependabot for npm packages
5. **Star Trending**: Track which projects are gaining popularity

- `tests/health_check.mjs` - Health checker script
- `.github/workflows/health_report.yml` - Weekly health workflow
- `.github/workflows/broken_links.yml` - Link validation workflow
- `.github/MAINTENANCE.md` - Maintainer guide
- `AGENTS.md` - AI agent guidelines

- `README.md` - Removed 3 broken links, fixed 1 redirect
- `tests/test_all.mjs` - Added archive detection
- `tests/exclude_in_test.json` - Added problematic domains
- `package.json` - Added health-check script
- `package-lock.json` - Updated dependencies

Before: Manual maintenance, broken links accumulate, outdated projects linger
After: **Automated health monitoring, proactive issue detection, systematic maintenance**

The list is now **self-maintaining** with minimal human oversight required.

---

*Generated: 2025-10-01*

* update github actions

* remove dead links

* set timeout

* Add badges
2025-10-02 15:03:59 +02:00

117 lines
3.2 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: `npm run health-check` 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
4. Check Node.js version requirements
## 🛠️ Maintenance Commands
```bash
# Test all links (requires GITHUB_TOKEN)
npm test
# Test PR changes only
npm run test-pr
# Generate health report (requires GITHUB_TOKEN)
npm run health-check
# Build the website
npm run build
# Update dependencies
npm update
```
## 📊 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*