Roll Swarming Client from 0b6fede61157 to 30db2780db99

2024-05-24 Roll luci-go from 2a37f16e348f to 1f2f924b0a5a (1 revision)
2024-05-24 Device Manager: update DeviceEvent to use DUT ID over hostname
2024-05-24 recovery: Add retry to chameleond config download
2024-05-24 [fleetcost] Fix reversed condition in delete-ci
2024-05-24 [fleetcost] Add repopulate-cache command-line command
2024-05-24 suite_manager: implement gRPC server with stubs
2024-05-24 device-manager: update proto marshaling to use protojson
2024-05-24 Keep all information for the git message
2024-05-24 shivas: update add machine with json to have one less layer of nesting
2024-05-24 [recipe_autoroller] Add hashtag to recipe rolls
2024-05-24 3pp: disable tests when crossbuild protobuf
2024-05-24 [golangbuild] fix subrepo experiment commit in perf mode
2024-05-24 [golangbuild] log raw JSON from Go tests
2024-05-24 Roll luci-go from f17f95b3e8e8 to 2a37f16e348f (1 revision)
2024-05-24 Roll chromiumos/config from 63154e790be1 to 222c43ec45cf (1 revision)
2024-05-24 Roll luci-go from 76abfa9e18ab to f17f95b3e8e8 (1 revision)
2024-05-24 Roll luci-go from e2a3c2a625c9 to 76abfa9e18ab (1 revision)
2024-05-24 [fleetcost] Implement repopulate-cache RPC
2024-05-24 [recipes] Migrate away from deprecated post_process checks
2024-05-24 Roll chromiumos/config from da8eda5975aa to 63154e790be1 (1 revision)
2024-05-24 siso: Drop use_remoteexec=true and reproxy config check
2024-05-24 siso: print duration in ideanalysis
2024-05-24 Roll luci-go from 6c9268f44ee1 to e2a3c2a625c9 (3 revisions)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
Please CC, on the revert to ensure that a human
is aware of the problem.

To file a bug in Swarming Client:
To file a bug in luci-py:

To report a problem with the AutoRoller itself, please file a bug:

Documentation for the AutoRoller is here:

Change-Id: Id424dbb8e8984908188feae445a2e03be8251a05
Commit-Queue: chromium-autoroll <>
Bot-Commit: chromium-autoroll <>
1 file changed
tree: 1b5c64af5f317df2821565af432046da6860f84b
  1. appengine/
  2. build/
  3. client/
  4. .gitallowed
  5. .gitattributes
  6. .gitignore
  7. .style.yapf
  8. .vpython
  9. .vpython3
  10. .yapfignore
  12. codereview.settings
  15. DEPS
  17. OWNERS
  19. pylintrc


LUCI is an ensemble of services that work together to run large scale CI (continuous integration) infrastructure to get results in O(1). It is used by the Chromium project.

See appengine/ for the services provided.


A complete CI toolkit:

  • Strict separation between task distribution and file distribution.
    • Swarming distributes tasks across an army (thousands) of Swarming bots.
    • Isolate server distributes 10s of thousands of files per task.
  • Federated authentication and ACL.
  • git based configuration data propagation.
  • Automatic Google Compute Engine VM recycling.
  • Windows, OSX and Linux (Ubuntu), used with Android, iOS, ChromeOS.
  • Written in python 2.7 along Go tools.
  • Used by the Chromium infrastructure and other teams.


  1. Install Google AppEngine SDK.
  2. git clone

Code layout


  • Branch master constains the latest code.
  • Branch stable contains the stable code.


  • Sign the Google CLA.
  • See the coding style.
  • Make sure your and are configured in git config.

Run the following to setup the code review tool and create your first review:

git clone $HOME/src/depot_tools
export PATH="$PATH:$HOME/src/depot_tools"
cd luci-py
git checkout -b work origin/master

# hack hack

git commit -a -m "This is awesome\"
# This will ask for your Google Account credentials.
git cl upload -s
# Wait for LGTM over email.
# Check the commit queue box in codereview website.
# Wait for the change to be tested and landed automatically.

Use git cl help and git cl help <cmd> for more details.


The preferred style is PEP8 with two-space indent; that is, the Chromium Python style, except functions use lowercase_with_underscores. Use yapf (git cl format) to autoformat new code.


This project is licensed under Apache v2.0 license. See LICENSE for details.