Tom Anderson | e7001969 | 2019-02-06 01:38:04 | [diff] [blame] | 1 | This repository contains hashes of build tools used by Chromium and related |
| 2 | projects. The actual binaries are pulled from Google Storage, normally as part |
| 3 | of a gclient hook. |
| 4 | |
| 5 | The repository is separate so that the shared build tools can be shared between |
| 6 | the various Chromium-related projects without each one needing to maintain |
| 7 | their own versionining of each binary. |
| 8 | |
| 9 | ________________________________________ |
| 10 | UPDATING AND ROLLING BUILDTOOLS MANUALLY |
| 11 | |
| 12 | When you update buildtools, you should roll the new version into the Chromium |
| 13 | repository right away. Otherwise, the next person who makes a change will end |
| 14 | up rolling (and testing) your change. If there are any unresolved problems with |
| 15 | your change, the next person will be blocked. |
| 16 | |
| 17 | - From the buildtools directory, make a branch, edit and upload normally. |
| 18 | |
| 19 | - Get your change reviewed and landed. There are no trybots so landing will |
| 20 | be very fast. |
| 21 | |
| 22 | - Get the hash for the commit that commit-bot made. Make a new branch in |
| 23 | the Chromium repository and paste the hash into the line in //DEPS |
| 24 | labeled "buildtools_revision". |
| 25 | |
| 26 | - You can TBR changes to the DEPS file since the git hashes can't be reviewed |
| 27 | in any practical way. Submit that patch to the commit queue. |
| 28 | |
| 29 | - If this roll identifies a problem with your patch, fix it promptly. If you |
| 30 | are unable to fix it promptly, it's best to revert your buildtools patch |
| 31 | to avoid blocking other people that want to make changes. |
| 32 | |
| 33 | ________________________ |
| 34 | ADDING BINARIES MANUALLY |
| 35 | |
| 36 | One uploads new versions of the tools using the 'gsutil' binary from the |
| 37 | Google Storage SDK: |
| 38 | |
| 39 | https://developers.google.com/storage/docs/gsutil |
| 40 | |
| 41 | There is a checked-in version of gsutil as part of depot_tools. |
| 42 | |
| 43 | To initialize gsutil's credentials: |
| 44 | |
| 45 | python ~/depot_tools/third_party/gsutil/gsutil config |
| 46 | |
| 47 | That will give a URL which you should log into with your web browser. |
| 48 | |
| 49 | Copy the code back to the command line util. Ignore the project ID (it's OK |
| 50 | to just leave blank when prompted). |