Hi! I just set up a merge queue, but I can't seem ...
# how-do-i
w
Hi! I just set up a merge queue, but I can't seem to get it working. I followed the documentation for how to get it working properly with rulesets, but I am unable to set up optimizations, and nothing that says it's added to the queue shows up in the queue
p
(If applicable) To help us more clearly understand what you're trying to do, please provide additional details about: - Screenshots / debug logs / list of commands you've tried to run so far - Your workflow - Current state
w
I added the Merge Queue in Graphite App and followed the setup instructions. We have a ruleset on a branch called
v2
, which is our trunk right now. As the instructions recommended, I added Graphite App as a bypass actor, and I restricted updates to only bypass actors. When clicking "Merge" in Graphite App for a stack, it adds a comment with the time saying it was added to the queue, but when I go to the queue in the app it says there's nothing added. Then about 20 minutes later is says it's failed to merge.
p
Hi Will, the optimizations (batching CI) should be found by editing the MQ settings and toggling the CI settings toggle here Can you share a PR merging to main that should have hit the MQ? Seems like your recently merged all point to a trunk titled
v2
not
main
. Possible your github default branch. Can you share an example PR you set to merge into main that d
w
I can't click the CI settings on because it says permissions haven't been configured correctly, but the only text around this mentions branch protections, not rulesets
This is a PR at the top of a stack we attempted to put into the merge queue and it failed
p
aha~! Are you using rulesets by chance? This is a bug due to an incompatibility with only using rulesets at present. The workaround is to make a temporary classic branch protection rule for
Allow specified actors to bypass required pull requests
, then you can enable the CI settings in Graphite and then remove the classic branch protection rule subsequently.
w
Ok I will give that a try and see if things start working.
p
cool, just to note, if you have a ruleset that is blocking merge, it will not be apparent in the UI and still may fail, we do not have support for rulesets in full today, so it seems mergable to us because we cant see the ruleset but will silently fail. Might be helpful to share your ruleset since ther last failure i can see was failing a rule even though all BPRs were passing. or, change the ruleset into a tradiaional BPR and not use rulesets
w
Ok I got CI settings enabled. What should the ruleset be to ensure the merge queue is safe? I thought it was to restrict updates and allow bypass?
I wonder also if it's because we are trying to enable it for a specific branch
v2
not our
main
branch (since we are working on a new major version release)
p
if thats the only settings youre using then it should be fine, but those same settings can be done in the traditional branch protection rules
w
I think it has something to do with the fact that we're not on the
main
branch
Is there something special I need to do for it to work on a specific branch? I tried removing the ruleset and adding just the branch protection, but that is not recognized (and doesn't allow CI settings to be turned on). It's only if I allow bypass on
main
branch
p
very possible, the merge queue settings indicate main, but your merges are pointing at V2 like i had originally indicated. What is your default branch in github?
w
Oh I see you only support merge queues on the default branch. We'll have to wait to use it until we release
v2
then.