• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

elastic / cloudbeat / 29008956499
76%

Build:
DEFAULT BRANCH: main
Ran 09 Jul 2026 09:55AM UTC
Jobs 1
Files 245
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

09 Jul 2026 09:20AM UTC coverage: 76.106%. Remained the same
29008956499

push

github

web-flow
fix: make minor version bump fully idempotent on retrigger (#7276)

## Summary

When Nina retriggered [unified-release-centralized-version-bump
#35](https://buildkite.com/elastic/unified-release-centralized-version-bump/builds/35)
yesterday after our `9.5.0` minor bump had already succeeded,
[cloudbeat-version-bump
#36](https://buildkite.com/elastic/cloudbeat-version-bump/builds/36)
re-ran `bump-minor.sh` with the same env vars (`WORKFLOW=minor
BRANCH=9.5 NEW_VERSION=9.5.0`). By then `main` was at `9.6.0` (from
merged #7268), and the `sed` inside `update_version_beat`
unconditionally rewrote `version.go` back to `9.5.0`, opening the
now-closed **#7275** — a PR proposing to downgrade `main` (verified:
`defaultBeatVersion` and 4 ARM `defaultValue` fields all flipped `9.6.0`
-> `9.5.0`).

The existing `no_new_commits` guard couldn't tell the difference between
"advance forward" and "regress backward" — it only asks "did anything
change vs main?" — so the regression commits passed the check and got
pushed.

This PR closes that gap and a related one in `post-minor-merge.sh`, with
defense in depth so no future retrigger can produce a bad PR or a
wrong-content release branch.

## Fix — three layers

### 1. Top-level guard in
[`bump-minor.sh`](/Users/gsarantid/Elastic/cloudbeat/.buildkite/scripts/release/bump-minor.sh)

If `main` is already at `next_minor_version(NEW_VERSION)` (e.g. `main` =
`9.6.0` while `NEW_VERSION` = `9.5.0`), the entire minor bump has
completed. Exit `0` before touching any files.

### 2. Hardened shared helpers in
[`common.sh`](/Users/gsarantid/Elastic/cloudbeat/.buildkite/scripts/release/common.sh)

New `is_downgrade()` helper using `sort -V` (so `9.10.0 > 9.9.0` sorts
correctly). `update_version_beat` and `update_arm_templates` now call it
before writing: if the current value is already `>=` the target, they
refuse and log a clear message. Belt-and-suspenders — even if a future
caller forgets the top-level guard, no downgrade can esca... (continued)

10205 of 13409 relevant lines covered (76.11%)

15.9 hits per line

Jobs
ID Job ID Ran Files Coverage
1 29008956499.1 09 Jul 2026 09:55AM UTC 245
76.11
GitHub Action Run
Source Files on build 29008956499
  • Tree
  • List 245
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • e3cc831b on github
  • Prev Build on gh-readonly-queue/main/pr-7199-ce13ca3866febfa7042be9c621ce9ee74dbf22be (#28968491133)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc