| Index: luci_hacks/README.md
|
| diff --git a/luci_hacks/README.md b/luci_hacks/README.md
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..b2aa8c04a8cde411d1faec6fa1c620566378de05
|
| --- /dev/null
|
| +++ b/luci_hacks/README.md
|
| @@ -0,0 +1,35 @@
|
| +LUCI Hacks - A set of shims used to provide an iterable end-to-end demo.
|
| +
|
| +The main goal of Luci Hakcs is to be able to use iterate on Milo as if it was
|
| +displaying real data. These are a couple of hacks used to get LUCI running from
|
| +"git cl try --luci" to displaying a page on Milo. These include:
|
| +
|
| +luci_recipe_run.py:
|
| +* Downloading a depot_tools tarball onto swarming from Google Storage to bootstrap gclient.
|
| +** LUCI shouldn't require depot_tools or gclient.
|
| +* Running gclient on a swarming slave to bootstrap a full build+infra checkout.
|
| +** M1: This should check out the recipes repo instead.
|
| +** M2: The recipes repo should have been already isolated.
|
| +* Seeding properties by emitting annotation in stdout so that Milo can pick it
|
| + up
|
| +* Running annotated_run.py from a fake build directory "build/slave/bot/build"
|
| +
|
| +trigger_luci_job.py:
|
| +* Master/Builder -> Recipe + Platform mapping is hardcoded into this file. This
|
| + is information that is otherwise encoded into master.cfg/slaves.cfg.
|
| +** Actually I lied, we just assume linux right now.
|
| +** M1: This information should be encoded into the recipe via luci.cfg
|
| +* Swarming client is checked out via "git clone <swarming repo>"
|
| +* Swarming server is hard coded into the file. This info should also be pulled
|
| + out from luci.cfg
|
| +* Triggering is done directly to swarming. Once Swarming is able to pull from
|
| + DM we can send jobs to DM instead of swarming.
|
| +
|
| +
|
| +Misc:
|
| +* This just runs the full recipe on the bot. Yes, including bot_update.
|
| +** In the future this would be probably an isolated checkout?
|
| +** This also includes having git_cache either set up a local cache, or download
|
| + the bootstrap zip file on every invocation. In reality there isn't a huge
|
| + time penalty for doing this, but at scale it does incur a non-trival amount of
|
| + unnecessary bandwidth.
|
|
|