Background
The release process has grown to include multiple artifacts and destinations:
- crates.io: redisctl, redis-cloud, redis-enterprise, redisctl-config libraries
- GitHub Releases: Binary artifacts for multiple platforms
- Homebrew: Formula updates
- Docker Hub: Container images
- PyPI: Python bindings (new)
The v0.7.6 release partially failed (Python bindings failed on macOS x86_64 due to pyo3 linking issues), indicating we need a comprehensive review.
Audit Scope
Workflow Files to Review
release-plz.yml - Release PR automation
release.yml - Main release (crates.io, GitHub releases, binaries)
docker.yml - Docker image publishing
python-publish.yml - Python bindings release
Questions to Answer
- What is the complete release flow from PR merge to all artifacts?
- What are the dependencies between workflows?
- What happens when one part fails (like Python bindings)?
- Should Python bindings failure block the main release?
- Are there race conditions or ordering issues?
- Is the Homebrew formula update working correctly?
Known Issues
- v0.7.6 tag exists but no GitHub release was created
- Python bindings failed on macOS x86_64 (pyo3 linking)
- Need to verify crates.io publish succeeded for v0.7.6
Deliverable
Create a release process documentation file (e.g., docs/RELEASE_PROCESS.md or in mkdocs) that explains:
- Overview - High-level flow diagram or description
- Triggers - What kicks off each workflow and when
- Workflow Details - Step-by-step for each workflow
- Artifacts Produced - What gets published where
- Dependencies - Order of operations, what depends on what
- Failure Modes - What happens when X fails, how to recover
- Manual Steps - Anything that requires human intervention
- Troubleshooting - Common issues and fixes
- Verification - How to confirm a release succeeded
This document should serve as the reference when things break.
Tasks
Related
Background
The release process has grown to include multiple artifacts and destinations:
The v0.7.6 release partially failed (Python bindings failed on macOS x86_64 due to pyo3 linking issues), indicating we need a comprehensive review.
Audit Scope
Workflow Files to Review
release-plz.yml- Release PR automationrelease.yml- Main release (crates.io, GitHub releases, binaries)docker.yml- Docker image publishingpython-publish.yml- Python bindings releaseQuestions to Answer
Known Issues
Deliverable
Create a release process documentation file (e.g.,
docs/RELEASE_PROCESS.mdor in mkdocs) that explains:This document should serve as the reference when things break.
Tasks
Related
fix/python-linux-cross-compile- Python cross-compilation fixes