elastic / elastic/logstash

Release Management: create post-release version bump workflow

Open
#17,060 0 comments 0 reactions 0 assignees View on GitHub
automation enhancement status:needs-triage
Dominant language
Java
Stars
14.9k
Forks
3.5k
Avg merge
19h 14m
Merged PRs (30d)
63

Description

When releasing Logstash, one of the post-release tasks is to bump the Logstash core version so that subsequent snapshot builds and DRA artifacts include the _next_ version for the branch (e.g., when `8.17.2` was released today, we updated the version on the `8.17` branch to `8.17.3`, causing the next snapshot build to be `8.17.3-SNAPSHOT`).

We should have a workflow to handle this bit _for_ us.

The task, as paraphrased for the `8.17.2` release example above, is:

> ~~~ sh
> # check out a new branch based on our release branch
> git checkout origin/8.17
> cp Gemfile.template Gemfile
> rake version:set[8.17.3]
> ~~~

Notably:
- the person doing the work of releasing `X.Y.Z` needs to check out branch `X.Y` and set the version to `X.Y.(Z+1)`.
- We want this job to be idempotent (that is: if run multiple times we don't want it to bump the version multiple times).

Therefore, the job should have the version _being released_ as its input. From the version being released, we can derive both the branch name and the version we are bumping _to_.

Since this is a pre-requisite for kicking off fresh staging and DRA-artifact builds so that they can get the new version, it would be nice to also trigger those.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.