Comments (3)
Thanks for the initial thoughts on how to support this in Policy Bot! I don't think there's any existing functionality for this because, as you noted, Policy Bot currently only evaluates pull requests, not branches.
Given some initial research on the merge queue feature, I think the best way to support this is to have Policy Bot listen for the merge_group
webhook event. I think that handler will do something like:
- Check for a policy file on the
base_ref
from the webhook payload - If a policy exists, unconditionally post a success status on the
head_sha
I don't think we actually need to evaluate the policy, if GitHub is the only thing that can generate merge_group
events and push to the special merge queue branches. I think we can assume that if Policy Bot is a required check, GitHub verified it was passing before adding the PR to the queue, and so anything that exists in the queue must be approved.
from policy-bot.
I don't think we actually need to evaluate the policy, if GitHub is the only thing that can generate
merge_group
events and push to the special merge queue branches. I think we can assume that if Policy Bot is a required check, GitHub verified it was passing before adding the PR to the queue, and so anything that exists in the queue must be approved.
This is my understanding as well, and was sort of what I was hoping for because if it's supported first party by Policy Bot, consumers have very little (nothing?) to do (beyond maybe some additional optional configuration, like disabling this functionality if desired) to adopt merge queue 😄
from policy-bot.
To set expectations, I don't think we will implement this until the merge queue feature is available in a GitHub Enterprise Server release and we can test in our primary environment. That said, if you or anyone else would like to submit a PR implementing the merge_group
handler before then, I'm happy to review it or provide advice.
from policy-bot.
Related Issues (20)
- Allow '=' as comparison operator HOT 1
- Misleading documentation about file path regular expressions HOT 1
- AppID ENV Variable not respected HOT 2
- Confusing behavior with skipped checks. HOT 5
- Add feature to use request more reviewers than required count in case of random-users HOT 1
- [Question] Approval by teams agregator
- Declarative Testing of Policies HOT 5
- Certain merges can lead to ignored commits during evaluation
- Request for Advice on Using Policy Bot in Open Source Projects for Testing, Approving, Merging of PRs HOT 3
- If no rule matches can policy-bot not set a failed status on the PR? HOT 1
- Unable to run policy-bot behind a reverse-prxoy HOT 3
- `common.IsActor()` does not actually use `ctx` and can be simplified.
- Condition for not having specific label(s) HOT 6
- has_successful_status causes review requests while PR has draft status HOT 5
- Status check clarification HOT 2
- Feature Request: Predicate to skip rule if a file was changed HOT 6
- Feature Request: Option to count skipped jobs in has_successful_status HOT 2
- Clarify why users are "disqualified" when approval is ignored
- Create new production Release 🚀 HOT 1
- Connecting lines broken when hiding skipped rules with errors
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from policy-bot.