opensearch-project / opensearch-project/flow-framework

Auto-merge version increment PRs

Open
#1,144 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
62
Forks
66
Avg merge
3d 20h
Merged PRs (30d)
20

Description

Coming from https://github.com/opensearch-project/opensearch-build/issues/5501

TL;DR

To address delays in merging version increment PRs, a new auto-merge feature will be implemented along with automatic re-running of failed checks. Component owners are required to verify their dependencies in the 3.1.0 manifests by May 23, 2024. The auto-merge feature will only be enabled for version increment PRs ensuring proper oversight of version updates while streamlining the release process.

Background

We currently have automation that creates version increment PRs when core engines (OpenSearch and OpenSearch-Dashboards) update their versions. You can see these automations here:

Current Challenge

We've noticed that these version increment PRs often remain unmerged until release managers need to follow up, which can delay the release process.

Proposed Solution

To streamline this process, we're implementing below features:

  1. Auto-merge capability for version increment PRs
    • We will be enabling auto-merge feature for version increment PRs.
    • All checks and requirements need to be met in order to merge the PR along with reviews from code-owners. See important note below.
  2. Automatic and timely re-running of failed checks
    • Re-run failed CI checks in timely manner to see if the dependent artifacts are present.
    • The dependent components will be processed prior to running the CI check for current component.
  3. Enable codeowners reviews for all pull request.
    • Even though all checks are passed, all pull requests needs to be reviewed before merging. Enabling this would ensure than code owners are notified about the pull requests.

Action Item

As a part of this effort, we need to verify the component dependencies listed in the 3.1.0 manifests by May 23, 2024. This review ensures smooth automation of the version increment process:

Please review and confirm:

  1. Your component's dependencies are correctly listed
  2. The dependency order is accurate
  3. No missing dependencies are identified
Important Note

Enabling auto-merge at the repository level is a selective feature:

  • It does NOT automatically enable for all PRs
  • Only maintainers and users with write access can enable auto-merge for specific PRs
  • For more details, see the GitHub documentation on auto-merge

This change will help expedite the release process while maintaining proper oversight of version updates.
Please close this issue once the above action items are completed.

Thank you!

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with .github/workflows/os-increment-plugin-versions.yml and .github/workflows/osd-increment-plugin-versions.yml, then inspect the 3.1.0 manifests named in the issue. Trace how version increment PRs are created and how checks and code-owner reviews are handled. Done means eligible version increment PRs can auto-merge after required reviews and checks, failed checks are rerun, and component dependencies are verified.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions
Domain
ci-cd, devops, release
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.