-
Notifications
You must be signed in to change notification settings - Fork 176
Description
Coming from opensearch-project/.github#368
TL;DR
- While working on [PROPOSAL] Automate merging of branch version bump PRs opensearch-build#5501 that aims at auto-merging pull requests for version increment PRs for releases, it was observed that the only check "required" by all the plugin repositories is "code review by codeowners". If the PR is approved, the auto-merge feature of GitHub considers it good to go and merges the pull requests.
- Rather than creating a custom CI validation check, we are utilizing GitHub's built-in "required checks" feature in repository settings to enforce CI passing as a merge requirement.
- This approach ensures better code quality through automated validation and reduces potential issues during distribution integration testing.
Action Item:
Please add a comment to this issue with a comprehensive list of all workflows that should pass before a PR is eligible for merging.
Note that without the required checks passing, developers will not be able to merge the pull requests no matter what.
The comment should include a detailed breakdown of individual checks within each workflow, highlighting their granularity. For example, specify checks for different operating systems (e.g., Linux, Windows, macOS) and Java/node versions (e.g. 21, 24). For instance, setting only the Linux build with Java 24 a required check, rather than enforcing all possible matrix combinations.
This granular approach will allow developers to tailor the required checks to their project's needs, balancing thorough validation with practical development workflows.
Check out any PR on core repositories or check out the to see what the contributor experience would look like.
Who will be able to bypass the required check:
Only the organization admins.
We have an issue open to also add maintainers in the by-pass list. Please add your thoughts if required.
What if the workflows are different for different branches?
The required checks are set in the RULESET/branches tab of github repository settings. These settings can be enabled as default (applies to all branches) or pattern specific branches.
Check it out in your fork (settings > rules > rulesets > New rule > Require status checks to pass > Add checks)
What if the required workflow is not longer valid (example linux jdk-24 changed to linux jdk-25) ?
In that case, please tag @opensearch-project/admin in the Pull Request making the change and the required checks will be updated in the repo settings.
Check list
- Added a comment to this issue with the list of all the "required" CI checks that needs to pass before a PR is eligible to be merged.
- Checks have been enabled (Will be take care by opensearch-project/admin)
- Verified that checks are working as expected
Please let me know if you have any questions. Thanks!
Metadata
Metadata
Assignees
Labels
Type
Projects
Status