Roll Swarming Client from 37c852f31ebd to b4a46a81d14e

https://chromium.googlesource.com/infra/infra.git/+log/37c852f31ebd..b4a46a81d14e

2025-06-13 bmyersmorgan@google.com [typing-extensions] Update typing-extensions to 4.13.2
2025-06-13 jwata@google.com siso: Update README for external readers
2025-06-13 ukai@google.com siso: log restat unchanged mtime update
2025-06-13 ukai@google.com upgraded github.com/cloudflare/circl v1.4.0 => v1.6.1
2025-06-13 cdelagarza@google.com cloud-run: beefing up test-finder instance
2025-06-13 varunsrivastav@google.com Fail gracefully
2025-06-12 bmyersmorgan@google.com [certifi] Update certifi to 2025.4.26
2025-06-12 abergman@google.com ctpv2: fix passing extra TF args as "driverArg:".
2025-06-12 bmyersmorgan@google.com [trio-websocket] Update trio-websocket to 0.12.2
2025-06-12 chromium-autoroll@skia-public.iam.gserviceaccount.com Roll luci-go from 47b10d6dde19 to f47491050108 (1 revision)
2025-06-12 swarming-tasks@owners-cleanup-prod.google.com.iam.gserviceaccount.com [owners] Remove justinsuen@google.com from go/src/infra/appengine/crosskylabadmin/OWNERS
2025-06-12 swarming-tasks@owners-cleanup-prod.google.com.iam.gserviceaccount.com [owners] Remove justinsuen@google.com from go/src/infra/cmd/crosfleet/internal/vm/OWNERS
2025-06-12 pietroscutta@google.com Moving all scripts to the same location
2025-06-12 klimkowicz@google.com satlab: add support for custom target type
2025-06-12 pietroscutta@google.com Proto definitions
2025-06-12 chromium-autoroll@skia-public.iam.gserviceaccount.com Roll luci-go from a510ae233b70 to 47b10d6dde19 (1 revision)
2025-06-12 recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com Roll recipe dependencies (trivial).
2025-06-12 chromium-autoroll@skia-public.iam.gserviceaccount.com Roll luci-py from 4562958eeeb8 to 1b42e3decd4e (1 revision)
2025-06-12 richardwa@google.com codesearch: Split create_and_upload_kythe_index_pack into two
2025-06-12 chromium-autoroll@skia-public.iam.gserviceaccount.com Roll luci-go from 6148d14741e0 to a510ae233b70 (2 revisions)
2025-06-12 chromium-autoroll@skia-public.iam.gserviceaccount.com Roll luci-go from f5445d183ed9 to 6148d14741e0 (1 revision)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swarming-luci-py
Please CC iannucci@google.com,peepsi-tod-team@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Swarming Client: https://bugs.chromium.org/p/chromium/issues/list?q=component%3AInfra%3EPlatform
To file a bug in luci-py: https://bugs.chromium.org/p/chromium/issues/list?q=component%3AInfra%3EPlatform%3ESwarming

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Tbr: iannucci@google.com
Change-Id: Ieff7472e6500f05be0716e27e43c095bde31d5c0
Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-py/+/6641783
Bot-Commit: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
1 file changed
tree: 4d4b992555ce8cc5cf8c0f7ebee8ed772d4def81
  1. appengine/
  2. build/
  3. client/
  4. .gitallowed
  5. .gitattributes
  6. .gitignore
  7. .gitmodules
  8. .style.yapf
  9. .vpython
  10. .vpython3
  11. .yapfignore
  12. AUTHORS
  13. codereview.settings
  14. CODING_STYLE.md
  15. CONTRIBUTORS
  16. DEPS
  17. LICENSE
  18. OWNERS
  19. PRESUBMIT.py
  20. pylintrc
  21. README.md
  22. WATCHLISTS
README.md

LUCI

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.

Overview

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.

Installing

  1. Install Google AppEngine SDK.
  2. git clone https://chromium.googlesource.com/infra/luci/luci-py

Code layout

Versioning

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

Contributing

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

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

git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git $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\nR=joe@example.com"
# 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.

Style

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.

License

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