Cut releases across all platforms
releasecommandsetup L2★1,619
dustinkirkland/byobu ↗What it does
Execute multi-platform software release pipeline (RC and final)
Best for
Multi-platform Debian-based software releases requiring coordinated PPA, PyPI, Homebrew, and GitHub synchronization with RC iteration.
Inputs
- · Mode flag: "rc" or "final"
- · Base version from debian/changelog
- · DEBEMAIL, DEBFULLNAME, GPGKEY from ~/.bashrc
Outputs
- · PPA uploads with correct version schemes
- · PyPI RC or final release tags
- · Debian experimental/Ubuntu dev uploads
- · Homebrew tap updates (final only)
- · GitHub release tags
Requires
- · dput (Debian package upload)
- · debsign (package signing)
- · git
- · docker
- · python3
- · gh (GitHub CLI)
- · Launchpad API
- · PyPI
Preconditions
- · byobu/trustmux repository cloned
- · GPG key configured in ~/.bashrc
- · Correct DEBEMAIL (kirkland@ubuntu.com) set
- · Homebrew tap repo cloned (final mode)
- · dput and debsign installed
Failure modes
- · Wrong DEBEMAIL → ftp-master silently rejects upload
- · Missing dput/debsign → commands unavailable
- · Version collision → Launchpad API query finds duplicates
- · Bad GPG key → signing fails
Trust signals
- · Phase 1-2: Pre-flight identity and tool verification
- · Phase 3: Explicit Launchpad version-query to avoid collisions
- · DEBEMAIL validation prevents silent ftp-master rejection
- · Version schemes use dpkg ordering to guarantee RC < final