kjellander 38b6dbc793 Autoroller: Support for rolling individual DEPS entries.
Add functionality for automatic rolling of individual DEPS
entries. This will make it possible to move away from the
links created by setup_links.py to real DEPS entries.

There are two kinds of such deps we intend to use:
1. Third party dependencies used by both WebRTC and Chromium:
  those are rolled to the same revision as the Chromium DEPS file of the revision passed
  to the script
2. Chromium sub-directories needed for WebRTC (mainly for //build and BUILD.gn
   files of third_party deps): those are rolled to the HEAD revision
Notice that the latter kind could be rolled ahead of the chromium_revision,
but generally these should be close (and if it passes the bots, we don't really mind).

The new functionality can coexist with the old one, to
enable a smooth transition (not everything needs to change at once).

Some of the updating logic was inspired by
https://cs.chromium.org/chromium/build/scripts/slave/recipes/v8/auto_roll_v8_deps.py

Add extensive tests for the logic of figuring out deps changes,
including mocking git ls-remote call to keep the tests hermetic.

BUG=webrtc:5006
NOTRY=True

Review-Url: https://codereview.webrtc.org/2570603003
Cr-Commit-Position: refs/heads/master@{#15570}
2016-12-13 11:35:28 +00:00
..
2014-12-11 07:57:22 +00:00
2016-12-09 07:39:25 +00:00