-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Milestone
Description
Create system for coordinating changes that affect multiple repositories simultaneously.
Details
Tool and workflow for planning, executing, and verifying changes across multiple repos.
System Components
- Change planning tool
- Execution orchestrator
- Verification system
- Rollback capability
- Audit logging
Use Cases
- Update shared dependencies
- Migrate to new CI/CD workflows
- Update GitHub Actions versions
- Change coding standards
- Rename default branches
- Update license files
- Migrate configuration formats
- Update documentation templates
Change Process
-
Planning Phase
- Define scope (which repos)
- Specify changes (files, patterns)
- Test on sample repos
- Review and approve plan
-
Execution Phase
- Create branches in all repos
- Apply changes automatically
- Run validation tests
- Create PRs for review
-
Verification Phase
- Check CI passes on all PRs
- Verify changes applied correctly
- Review diff for accuracy
- Collect approval status
-
Completion Phase
- Merge approved PRs
- Monitor for issues
- Generate completion report
- Archive change documentation
Configuration File
change-plans/plan-name.yml:
name: "Update CI workflow to v2"
description: "Migrate all repos to new test workflow"
target_repos:
- all
exclude:
- archived-repos
- template-repos
changes:
- file: ".github/workflows/test.yml"
action: replace
source: "templates/workflows/test-v2.yml"
- file: "package.json"
action: update_json
path: "scripts.test"
value: "jest --coverage"
validation:
- run: "npm test"
required: true
- check: "ci-passes"
required: true
rollback_plan:
- restore_from: "backup"Command Interface
# Plan a change
python scripts/cross-repo-change.py plan --config change.yml
# Preview (dry-run)
python scripts/cross-repo-change.py execute --config change.yml --dry-run
# Execute
python scripts/cross-repo-change.py execute --config change.yml
# Verify
python scripts/cross-repo-change.py verify --config change.yml
# Rollback
python scripts/cross-repo-change.py rollback --config change.ymlSafety Features
- Mandatory dry-run before execution
- Automatic backup before changes
- Per-repo validation before merge
- Easy rollback mechanism
- Change impact analysis
- Approval workflow for sensitive changes
Reporting
- Pre-change impact report
- Execution progress tracking
- Post-change verification report
- Success/failure summary
- Issues encountered log
Acceptance Criteria
- Planning tool generates valid plans
- Execution orchestrator reliable
- Changes applied correctly
- Validation catches errors
- PRs created properly
- Rollback works correctly
- Audit logging complete
- Documentation comprehensive
- Tested with complex changes
- No repos left in inconsistent state
Metadata
Metadata
Assignees
Type
Projects
Status
No status