LArSoft

Logo

Software for Liquid Argon time projection chambers

View My GitHub Profile

Overview of the pull request testing and approval workflow

Committing code to the LArSoft repositories requires that developers initiate a pull request (PR) on GitHub against the appropriate LArSoft repositories. That action triggers a testing and approval workflow, the final step of which is a merge of the proposed change to the requested branch. The purpose of the testing and approval workflow is:

The workflow, depicted in the diagram below, is carried out by combination of “Level 1” and “Level 2” managers, the Continuous Integration (CI) system, and a set of “bot” scripts that take actions based on comments posted to PRs on GitHub by the Level 1 and Level 2 managers, or jobs running on CI system. The basic procedure is the following:

Note that the initial manager comment to perform build checks is not included in this diagram. We envision that the first code checks and build attempts will be started automatically upon posting the PR. The diagram reflects that procedure.

GitHub_messaging_sequence.png