| OLD | NEW |
| (Empty) |
| 1 Commit queue master process scripts. | |
| 2 | |
| 3 This script requires privileged access to be able to impersonate svn | |
| 4 credentials. When it detects it's not run on the main server, it will run in | |
| 5 'dry run' mode where it has no effect; it doesn't modify issues on rietveld or | |
| 6 commit patches. | |
| 7 | |
| 8 | |
| 9 Design overview: | |
| 10 | |
| 11 The commit queue process runs a tight loop that does 2 things in parallel: | |
| 12 - Scans for new reviews on a rietveld instance with commit bit (c+) set and | |
| 13 enqueue these to the commit queue. | |
| 14 - Manages the pending entries in the commit queue by testing each item | |
| 15 independently and committing as soon as all the signals for a specific review | |
| 16 are green. | |
| 17 | |
| 18 The life of a pending commit is: | |
| 19 - If any of the following steps fail; mark the review c-, remove from the queue | |
| 20 and add a comment on the review. | |
| 21 - Run presubmit scripts and make sure there is a LGTM from a valid reviewer. | |
| 22 - Send the patch to the try server on relevant builders and run relevant | |
| 23 tests. | |
| 24 - Wait for all try jobs completes and be green. | |
| 25 - Sync local checkout to HEAD. | |
| 26 - Apply the patch. | |
| 27 - Commit as the user. | |
| 28 | |
| 29 Each verification step is done through a Verifier plug-in. Every Verifier is a | |
| 30 single python file in verifications/. | |
| OLD | NEW |