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 |