diff options
author | bungeman <bungeman@google.com> | 2016-04-14 09:23:41 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-04-14 09:23:41 -0700 |
commit | ccb0de64f38d05522353fcdcbd51a063c1d29b08 (patch) | |
tree | 446562e6c505cf5e9bf24c4d70e6218054f31110 /site/dev/chrome | |
parent | 872ea29357439f05b1f6995dd300fc054733e607 (diff) |
Add doc instructions for multi-repo Chromium trybots.
NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=1865153003
Review URL: https://codereview.chromium.org/1865153003
Diffstat (limited to 'site/dev/chrome')
-rw-r--r-- | site/dev/chrome/multi_repo_trybots.md | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/site/dev/chrome/multi_repo_trybots.md b/site/dev/chrome/multi_repo_trybots.md new file mode 100644 index 0000000000..9f3cfaa8f0 --- /dev/null +++ b/site/dev/chrome/multi_repo_trybots.md @@ -0,0 +1,70 @@ +Multiple repo Chromium trybots +============================== + +When a proposed Skia change will require a change in Chromium or Blink it is +often helpful to locally create the Chromium and Blink changes and test with the +proposed Skia change. This often happens with Skia API changes and changes +which affect Blink layout tests. While simple to do locally, this explains how +to do so on the Chromium trybots. + +The basic idea is to make your Chromium and Blink change in the usual way, but +then pull in other changes by modifying the \<chromium>/src/DEPS file. + + +Rietveld +-------- +If the the patch to be applied is to a project already in Chromium (like Skia) +and the patch is already in Rietveld, then add the following to +\<chromium>/src/DEPS in the 'hooks' array just before the 'gyp' hook. + + { + 'name': 'apply_custom_patch', + 'pattern': '.', + 'action': ['apply_issue', + '--root_dir', 'src/third_party/skia', + '--issue', '1873923002', + '--patchset', '160001', + '--server', 'https://codereview.chromium.org', + '--force', + '--ignore_deps', + '-v', + '-v', + '--no-auth', + '--blacklist', 'DEPS' + ], + }, + +An example of this being used can be seen at +https://crrev.com/1877673002/#ps120001 . + + +External changes not in rietveld +-------------------------------- +If the patch is to files where the above is not possible, then it is still +possible to patch the files manually by adding the following to +\<chromium>/src/DEPS in the 'hooks' array just before the 'gyp' hook. + + { + 'name': 'apply_custom_patch', + 'pattern': '.', + 'action': ['python', + '-c', 'from distutils.dir_util import copy_tree; copy_tree("src/patch/", "src/");' + ], + }, + +Then, copy all 'out of tree' files into \<chromium>/src/patch/, using the same +directory structure used by Chromium. When 'gclient runhooks' is run, the files +in \<chromium>/src/patch/ will be copied to and overwrite corresponding files in +\<chromium>/src/. For example, if changing \<skia>/include/core/SkPath.h, place +a copy of the modified SkPath.h at +\<chromium>/src/patch/third_party/skia/include/core/SkPath.h. + +An example of this being used can be seen at +https://crrev.com/1866773002/#ps20001 . + + +Try the patch +------------- +After committing these \<chromium>/src/DEPS and \<chromium>/src/patch/ changes +locally, 'git cl upload' can be used in the usual way. Be sure to add +'COMMIT=false' to the issue description to avoid accidentally checking it in. |