Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Checkbox to enable automerge per PR #3172

Closed
abraham opened this issue Feb 4, 2019 · 15 comments
Closed

Checkbox to enable automerge per PR #3172

abraham opened this issue Feb 4, 2019 · 15 comments
Labels
core:automerge Relating to Renovate's automerge capabilities priority-3-medium Default priority, "should be done" but isn't prioritised ahead of others status:requirements Full requirements are not yet known, so implementation should not be started

Comments

@abraham
Copy link

abraham commented Feb 4, 2019

What would you like Renovate to be able to do?

Automerge specific PRs after status checks pass.

Describe the solution you'd like

A checkbox similar to the "check to rebase" feature except checking the box will enable automerge for this specific PR.

Describe alternatives you've considered

There is enabling automarege for everything but I usually want to avoid that for non-devDependencies. This could also be handled by GitHub if they were to implement automerge as a feature.

Additional context

#1355 looks related.

Something like this:

screenshot from 2019-02-04 14-05-07

@rarkins
Copy link
Collaborator

rarkins commented Feb 4, 2019

@abraham one challenge is that people with permission to edit a PR body (i.e. collaborators) may not have permissions to write to master. But this feature were opt-in - i.e. someone with master permission would need to enable it via config - then do you think that would suit you?

@abraham
Copy link
Author

abraham commented Feb 4, 2019

Interesting I hadn't thought of that. I mean the obvious solution is to parse the diffs of the issue text and make sure the author of the diff that change that checks the bos has write permissions. (I'm kidding).

#1355 might just be the all around better solution. Even if a comment isn't as elegant as a checkbox.

@rarkins
Copy link
Collaborator

rarkins commented Mar 8, 2019

Proposal:

  • Add a new automergeCheckbox option, which defaults to false
  • If automergeCheckbox is true, the add a check box below rebase which allows to automerge
  • If checked, automerge if the branch is green and unedited. Don't "undo" the check on a run, even if automerge is not possible

This way admins of a repo can still choose to enable this feature, and we don't have to worry about checking permissions.

Alternatively, here's how we could check permissions: https://developer.github.com/v3/repos/collaborators/#review-a-users-permission-level

But this only shows us that a user has write or admin permissions, not necessarily who can write to master. Maybe we could default to allowing only admins to check the box but have a config option to also allow all writers to automerge.

@rarkins rarkins added the priority-3-medium Default priority, "should be done" but isn't prioritised ahead of others label Mar 8, 2019
@abraham
Copy link
Author

abraham commented Mar 23, 2019

That would work for me.

@abraham abraham changed the title Checkbox to enable automerge per pR Checkbox to enable automerge per PR Mar 24, 2019
@fastman
Copy link
Contributor

fastman commented Jul 24, 2020

I think those tickets are about the same thing:

This was referenced Jul 24, 2020
@geraintwhite
Copy link
Contributor

Would the automerge checkbox be reset if the branch is updated with a new version of a package?

@rarkins
Copy link
Collaborator

rarkins commented Dec 2, 2020

Would the automerge checkbox be reset if the branch is updated with a new version of a package?

Yes, it should be reset

@azu
Copy link
Contributor

azu commented Dec 16, 2020

Merge using comments #1355

It may be a different context, but #1355 is closed by this issue, and I comment here.

dependabot has this feature.
We can comment @dependabot merge and dependabot merge it.

Merge via comment is useful for me.
GitHub/GitLab supports commenting via email and I can merge the dependabot's PR from email client like gmail.

UseCase: renovatebot/dependabot create same Pull Request to multiple repositories at the same time.
It is hard that open each PRs and clicks the merge button.
Instead of it, I can just reply @dependabot merge from email client.

image

The checkbox approach may not cover this case.
However, renovatebot can define an auto-merge rule, and This may be an edge case.

@rarkins
Copy link
Collaborator

rarkins commented Dec 16, 2020

@azu I have reopened #1355 with your comment

@azu
Copy link
Contributor

azu commented Dec 17, 2020

@rarkins Thanks for reopening.

FYI: GitHub has released auto-merge as a beta.
This feature sounds similar to this solution.

@rarkins rarkins added the status:requirements Full requirements are not yet known, so implementation should not be started label Jan 12, 2021
@rarkins rarkins added the core:automerge Relating to Renovate's automerge capabilities label May 31, 2021
@TWiStErRob
Copy link
Contributor

TWiStErRob commented Sep 17, 2022

I was about to raise a feature request: "Disable auto-merge when label exists"

Right now there's no way to stop Renovate from auto-merging, except by pushing a commit or closing the PR, but sometimes I want to prevent merges easily upon receiving the email that Renovate raised a PR.

This solution is way better, would be nice to see it through, as it would allow my use-case right from the PR description while I'm looking at it. One tap on my phone, and Renovate will wait until I get home and fix something (e.g.: CI would pass, but I realize something would break based on release notes).

Is there anything I can do right now to control autoMerge without changing config?

@abraham
Copy link
Author

abraham commented Sep 17, 2022

My original feature request is resolved with GitHub's built in auto-merge feature.

@abraham abraham closed this as completed Sep 17, 2022
@TWiStErRob
Copy link
Contributor

TWiStErRob commented Sep 17, 2022

Ugh, so should I raise a separate one? Because that checkbox can be toggle off too, not just on, so it would solve a wider problem. Note that there are some tickets duplicated against this one... (that's how I got here) @rarkins any idea what to do here?

Edit: actually, re-reading the spec it would've worked the way I was thinking...

@rarkins
Copy link
Collaborator

rarkins commented Sep 17, 2022

I'm happy to reopen this but not sure @abraham can unsubscribe himself from his own issue if so?

@viceice
Copy link
Member

viceice commented Sep 17, 2022

I'm happy to reopen this but not sure @abraham can unsubscribe himself from his own issue if so?

yes, you can unsubscribe from any issue

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Oct 18, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
core:automerge Relating to Renovate's automerge capabilities priority-3-medium Default priority, "should be done" but isn't prioritised ahead of others status:requirements Full requirements are not yet known, so implementation should not be started
Projects
None yet
Development

No branches or pull requests

7 participants