Automated Testing of Pull Requests

Pull requests are tested on Cori and locally on a PPPL cluster. To pass, all targets must compile; all regression tests (kernels) must pass, and all unit tests must pass. A pull request that fails is not allowed to be merged.

All admins who want to merge a pull request must make sure that all requirements for merging are met. Do not override a merge block unless you are 100% aware of what you are about to merge.

Pull Request Status

Status window of a pull request on GitHub. All pull requests require at least one approving review before merging them, and they need to pass all checks (currently: compiling test, large file test). Once all requirements for merging are met, the lower box should display a green dot and say that the pull request can be merged.

Pull requests are also checked for large files. If large files (such as executables or data) are included in the pull request, the pull request is rejected. See the next paragraph “Large File Policy” for details.