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

platform automerge only when Renovate checks passing #27633

Open
rarkins opened this issue Feb 29, 2024 · 0 comments
Open

platform automerge only when Renovate checks passing #27633

rarkins opened this issue Feb 29, 2024 · 0 comments
Labels
core:automerge Relating to Renovate's automerge capabilities priority-4-low Low priority, unlikely to be done unless it becomes important to more people type:feature Feature (new functionality)

Comments

@rarkins
Copy link
Collaborator

rarkins commented Feb 29, 2024

Describe the proposed change(s).

Today, platformAutomerge=true means Renovate enables platform automerge at PR creation time. This is meant to mean "automerge this once required checks pass". However some projects have insufficient checks and the platform can automerge even if Renovate has posted failing checks such as renovate/artifacts.

It is proposed to modify platform automerge behavior so that:

  • It's only enabled at PR creation time if all renovate checks pass
  • If it was enabled at PR creation time, and at a later time then Renovate checks are not passing, then platform automerge should be disabled
  • If platform automerge for a PR is disabled (either due to non-passing checks previously, or was not configured at the time) and then later it's enabled in config and with passing checks, then Renovate should enable it

Pseudo logic:

  1. Suppress enabling platform automerge at PR creation time if any Renovate checks are non-passing
  2. Record in PR body debug data whether we enabled or not platform Automerge (if platformAutomerge=true). No additional data if platformAutomerge=false
  3. If in future platformAutomerge=true, checks are passing, and the PR debug data is missing platformAutomerge settings or has its state to false, then set platform automerge and update PR body debug data to state true
  4. If in future platformAutomerge != true, or checks are not passing, and PR debug data indicates state is true, then we should disable PR platform automerge

We want to prevent the scenario where we enable platform automerge, then a user disables it, and then Renovate keeps re-enabling it. This scenario should be prevented by point 3 above, because in such a scenario the existing PR debug data for platform automerge will remain as state=true to remind us that we enabled it previously

@rarkins rarkins added type:feature Feature (new functionality) priority-4-low Low priority, unlikely to be done unless it becomes important to more people core:automerge Relating to Renovate's automerge capabilities labels Feb 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core:automerge Relating to Renovate's automerge capabilities priority-4-low Low priority, unlikely to be done unless it becomes important to more people type:feature Feature (new functionality)
Projects
None yet
Development

No branches or pull requests

1 participant