commit | 111e3f2a7adf60b4f52a122c0fa23d27a79c7d82 | [log] [tgz] |
---|---|---|
author | Vadim Shtayura <vadimsh@chromium.org> | Thu Mar 14 02:43:24 2019 |
committer | Commit Bot <commit-bot@chromium.org> | Thu Mar 14 02:43:24 2019 |
tree | 49bea21aa324cbb36ba7499355bf9ce065d074b5 | |
parent | 442d8f59d830702e8acf42d6a6f71c11534a7db2 [diff] |
[lucicfg] Implement 'defaults' in lucicfg.rule(...). It will allow to provide "global" (to an exec'ing module) defaults for rules, as an alternative to deepening the call stack of custom rule wrappers in the user scripts. Usage: def _rule(ctx, stuff=None): stuff = stuff or ctx.defaults.stuff.get() ... rule = lucicfg.rule(impl = _rule, defaults = { 'stuff': lucicfg.var(), }) # In some user script. module.rule.defaults.stuff.set('my stuff') module.rule() R=tandrii@chromium.org BUG=833946 Change-Id: If45f987246adb38d228efdb7978af42400ccddf3 Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-go/+/1522033 Commit-Queue: Vadim Shtayura <vadimsh@chromium.org> Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org>
LUCI Go code is meant to be worked on from an Chromium infra.git checkout, which enforces packages versions and Go toolchain version. First get fetch via depot_tools.git then run:
fetch infra cd infra/go eval `./env.py` cd src/go.chromium.org/luci
Contributing uses the same flow as Chromium contributions.