Recommended actions for approve, update, merge workflow

We have an public project ( https://github.com/odpi/egeria ) where our PR verification is currently taking around 35-45 mins in Azure pipelines. On the free tier so only 10 executors, and tests are multi platform, so quite constrained.

A PR must be up to date before merging

We also have quite an active community - the last month was 440 commits over 116 PRs

A noticeable number of these are dependabot (git official)

Currently merging is painful. it’s a competition to update your PR, and click merge once the build is complete, and if you miss try again. this wastes time

I wonder if anyone could recommend actions that might allow for PRs with certain tags, and/or approvals to be ‘queued’ for auto merging . Since most contributors are in Europe currently specifying a time period could work, though perhaps in future a better algorithm which looked at other build activity would be better

That action would need to

  • monitor the tags/approval
  • update with a merge commit or rebase as needed (for dependabot specifically rebase would be appropriate)
  • execute the merge (and try again if missed)

Any other suggestions on improving the workflow (beyond discussion between the contributors on the manual workflow aspecs)

Seperately we’re investigating maven->gradle and seeing much better build times which mitigates the issue somewhat - though the above is still valid, and we’d actually like more PR tests not less…

The docs repo has auto-merge actions, maybe there’s something to learn from them:

1 Like

@planetf1,

You also can find some actions to auto-merge PR from the GitHub Marketplace (see here).
For example: