Create automated workflow for properly archiving inactive or deprecated repositories.
Details
Standardized process for archiving repositories with proper documentation and notification.
Workflow Location
.github/workflows/archive-repository.yml
Archival Process
-
Detection Phase
- Identify inactive repos (no commits in X months)
- Flag deprecated repositories
- Check for open issues/PRs
- Review dependency usage
-
Notification Phase
- Notify maintainers
- Post issue warning of archival
- Update README with deprecation notice
- Announce on discussions/channels
-
Preparation Phase
- Document reason for archival
- Add archive notice to README
- Update topics/tags
- Link to replacement (if any)
- Export issues to archive
- Backup repository data
-
Archival Phase
- Set repository to archived
- Update organization profile
- Remove from active project boards
- Update documentation references
- Redirect traffic (if applicable)
-
Cleanup Phase
- Remove webhooks
- Delete unused branches
- Archive artifacts
- Update dependencies elsewhere
Archival Checklist
Archive Notice Template
# ⚠️ ARCHIVED
This repository has been archived and is no longer maintained.
## Reason
[Explain why the repository is being archived]
## Alternative
[Link to replacement or alternative solution]
## History
- Created: [date]
- Last updated: [date]
- Archived: [date]
- Total contributors: [count]
- Total releases: [count]
## Archive Contents
All code and history remain available for reference but will not receive updates.
Automation Features
- Auto-detect stale repositories
- Generate archival proposal
- Create archival checklist issue
- Send notifications
- Update references automatically
- Generate archival report
Command Interface
# Check for archival candidates
python scripts/check-archival-candidates.py
# Prepare repository for archival
python scripts/prepare-archive.py --repo owner/repo
# Archive repository
python scripts/archive-repo.py --repo owner/repo --reason "deprecated"
# Restore archived repository
python scripts/restore-archive.py --repo owner/repo
Criteria for Archival
- No commits in 12+ months
- No releases in 18+ months
- Explicitly deprecated
- Superseded by another repo
- No longer aligned with org goals
- Unmaintained with no interested maintainers
Acceptance Criteria
Create automated workflow for properly archiving inactive or deprecated repositories.
Details
Standardized process for archiving repositories with proper documentation and notification.
Workflow Location
.github/workflows/archive-repository.ymlArchival Process
Detection Phase
Notification Phase
Preparation Phase
Archival Phase
Cleanup Phase
Archival Checklist
Archive Notice Template
Automation Features
Command Interface
Criteria for Archival
Acceptance Criteria