bumpx is a Go-based CLI tool that automates version propagation of the internal developer SDK across all internal Spring Boot microservices for dev teams.
Whenever the platform engineering team publishes a new version of internal SDK, bumpx:
- 🔍 Identifies all consumer repos using the SDK
- ✍️ Updates the version in their
pom.xml - 🌀 Commits and pushes to a new branch
- 📨 Opens pull requests
- 🔔 Sends a Slack summary notification
The platform-sdk releases version 5.3.3.
Instead of asking 70+ teams to update their SDK versions manually, bumpx does it automatically — opening PRs and notifying the team via Slack.
- ✅ Parses and modifies
pom.xmlwith new SDK version - ✅ Supports
--mode devand--mode live:dev: Sends Slack messages to #internal-tools-alerts channellive: Sends messages to the #dev-platform channel
- ✅ Supports direct
<version>and property-based versioning - ✅ Opens GitHub PRs for each repo
- ✅ Avoids duplication — skips if branch or PR already exists
- ✅ Slack summary with clickable PR links
- ✅ Cleans up all local state after execution
- ✅ CLI-driven, CI-friendly, written in Go
- ✅ Go 1.20+
- ✅ GitHub personal access token (
GITHUB_TOKEN) - ✅ Slack incoming webhook URL (
SLACK_WEBHOOK_URL) - ✅ Git access to all internal microservices
- ✅ Binaries are pre-built for Apple Silicon (
darwin/arm64)
export GITHUB_TOKEN=ghp_...
export SLACK_WEBHOOK_URL=https://hooks.slack.com/services/...
go run main.go --version [platform-sdk-version]To build and publish the latest bumpx binary, just run:
make all