elastic / elastic/cloudbeat

Version Bump Automation Rollout

Open
#4,024 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
58
Forks
55
Avg merge
9h 9m
Merged PRs (30d)
424

Description

## Request

Following the updates in [#mission-control](https://elastic.slack.com/archives/C0JFN9HJL/p1770388488482519) regarding the Version Bump Automation rollout, [Version Bump PSI](https://docs.google.com/document/d/1VxKftPLqC3EtkxtjWpkbHqfP0Oen9142Piri-yviTVw/edit?tab=t.0#heading=h.kp79r9xemmj8), **Release-eng** is ready to begin the process of the version bump pipelines. We’ve outlined the roadmap below; to kick things off, we’ll need some specific details from your team now, followed by an implementation task in the coming weeks to finalize the automation.

Impacted Repositories:

- https://github.com/elastic/cloudbeat

## Phase 0: Dependency Mapping

- Goal: Identify repo-level dependencies to ensure the correct orchestration order.
- **Team Action**: For each repository your team owns within the DRA process, please list any upstream dependencies.
- Example: repo-b cannot bump until repo-a has completed its bump.

## Phase 1: Initial Pipeline Integration

- Goal: Establish the communication loop and baseline pipeline.
- Release-eng Action: We (release-eng) will submit a PR to your repo with a generalized Buildkite pipeline containing a manual block step and a DRA build check loop. We will include your provided slack channel name in the PR as well.
- **Team Action**: Provide the Slack channel name where your team would like to receive build notifications.

## Phase 2: Orchestration & Manual Pilot

- Goal: Test the orchestration logic using existing manual processes.
- The Workflow: On version-bump day, Release-eng will trigger the orchestrated pipelines. Your team will be pinged in the slack channel that was provided.
- **Team Action:** Once pinged, execute your existing (manual or automated) bump process, trigger the DRA snapshot/staging builds, and unblock the pipeline step once completed.

## Phase 3: Full Automation (Final Goal)

- Goal: Replace manual block steps with automated logic.
- **Team Action:** Create a follow-up PR to replace the Phase 1 "Block Step" with a fully automated version-bump implementation.
- Implementation options for the version-bump step include:
- New custom logic in this pipeline
- Reusing existing version-bump scripts
- Triggering an external GitHub Actions version-bump workflow from Buildkite

- Please ensure DRA snapshot and staging builds are triggered **after** the version-bump logic and **before** the [json-watcher-buildkite-plugin](https://github.com/elastic/json-watcher-buildkite-plugin) polling loop. This can be done in two ways:
- Explicitly: Add trigger steps in your version-bump pipeline to call the DRA build pipelines directly
- Implicitly: If your existing pipelines are already configured to trigger new builds automatically upon any commit to your release branches, no extra steps are needed

Summary of Immediate Asks

- To get started, please comment on this issue with:
- Upstream Dependencies: (e.g., "None" or "X depends on elasticsearch")
- Notification Slack Channel: (e.g. APM Server - #slackchannelhere)

## Impact
This is important to streamline the DRA version bump process

## Suggested Target Date
We (Release-eng) ask that your team completes phase 3 preferably by March 20th

## FAQ
This is a living document and is subject to change over time.

- https://docs.google.com/document/d/14FgV4dMF6Qz0N8yhYXEk147OE4W9UlZ5Ih7iAdlESL0/edit?tab=t.0

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.