...
GitHub Actions recommended
Pull request checks
DCO
Unit tests
Integration tests
- Scans (more comprehensive scans can be nightly)
- Release actions
Test coverage reporting
See Automated Pipelines task force - https://github.com/hyperledger/toc/issues/44
GitHub
Use .github/settings.yml so that repository settings can be managed and tracked via pull requests
Recommended initial repository settings, e.g. Repository options, Branch protection rules
Rebase merging is preferred over Merge commits and Squash merging to keep commit history clean (assuming contributors squash/amend their own pull requests)
Although there are often multiple paths to achieve an outcome in git and GitHub, there is value in defining a suggested path, both for the benefit of new GitHub users, and for the sake of project consistency.
Examples - amending commits versus squashing commits, Mergifyio for simplifying cherry picks and backports.
Example guidance - https://hyperledger-fabric.readthedocs.io/en/latest/github/github.html