We need to improve our code validation using GHA to check, validate, test, and build our project before any new PR is merged into the master branch.
I have a suggestion to run the build/test action only if:
- The code is well formatted (using sbt-java-formatter);
- The code is binary compatible with the previous versions (using MiMa).
Other suggestions to consider as acceptable to merge are:
- Build must be completed successfully (no exceptions, nor even by admins);
- All the tests must pass successfully (no exceptions, nor even by admins);
- At least one review by an admin before the merge is available;
- Add a label (such as
approved or merge-when-gtg) to the PR;
- We could use Mergify to set these rules to have an automatic way to merge PR.
Last but not least, about the merge strategy, I would prefer rebase/squad instead of merge to maintain the project with a linear history of change.
Does anyone have a different opinion? (cc @marcosinigaglia)
We need to improve our code validation using GHA to check, validate, test, and build our project before any new PR is merged into the
masterbranch.I have a suggestion to run the build/test action only if:
Other suggestions to consider as acceptable to merge are:
approvedormerge-when-gtg) to the PR;Last but not least, about the merge strategy, I would prefer
rebase/squadinstead ofmergeto maintain the project with a linear history of change.Does anyone have a different opinion? (cc @marcosinigaglia)