LUCI-Scheduler: support for arbitrary regex in branches to poll |
||||||||
Issue descriptionCurrenly, only refglobs are supported: https://github.com/luci/luci-go/blob/4ec47573b3c7ab6fe3f01f190ab35228f7351374/scheduler/appengine/messages/cron.proto#L171, but V8 uses full regex as it was supported by Buildbot. Related issue 836232 for Milo service also discusses creating a service shared by both Milo/LUCI-scheduler and ChromiumDash to add needed APIs unless they are already available in Gitiles.
,
Apr 25 2018
Supporting arbitrary regex today is not feasible because this would require fetching **all** refs of the repo first, which will soon cause OOM even on V8 repo. However, we could try some things: Short term, (0) add flag to gitiles `refs` API to skip all refs/changes/**. This would buy us a lot of time. Medium term, perhaps we can try this: (1) add paging to `refs` gitiles API. But it's not quite clear what the cursor and ordering would be. (2) add regex parameter to gitiles `refs` call itself.
,
Apr 25 2018
,
Apr 25 2018
,
Apr 25 2018
I guess we can also support filtering by (prefix, regexp for suffix) tuples? Then v8 config will look like [('refs/branch-heads/', '\d+\.\d+'), ('refs/heads/', '\d+\.\d+.\d+')], and this still can be done efficiently (since it just a post-filtering after already supported globs).
,
Apr 26 2018
I've had that idea as well, but didn't suggest it because it feels somehow exposing the implementation details in the API. OTH, it may be the a feasible short-term solution.
,
May 25 2018
,
May 30 2018
The following revision refers to this bug: https://chromium.googlesource.com/infra/luci/luci-go.git/+/f6d1cbcf1c60a5e12855d72c404c87f0579d1182 commit f6d1cbcf1c60a5e12855d72c404c87f0579d1182 Author: Sergiy Byelozyorov <sergiyb@chromium.org> Date: Wed May 30 11:15:57 2018 Add support for regexp ref specification in scheduler R=hinoka@chromium.org, nodir@chromium.org, tandrii@chromium.org Bug: 836742 Change-Id: Iab798e163ce8a2a7972ff8694f493a29819282fc Reviewed-on: https://chromium-review.googlesource.com/1071123 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org> [modify] https://crrev.com/f6d1cbcf1c60a5e12855d72c404c87f0579d1182/scheduler/appengine/messages/config.pb.go [modify] https://crrev.com/f6d1cbcf1c60a5e12855d72c404c87f0579d1182/scheduler/appengine/messages/config.proto [modify] https://crrev.com/f6d1cbcf1c60a5e12855d72c404c87f0579d1182/scheduler/appengine/task/gitiles/gitiles.go [modify] https://crrev.com/f6d1cbcf1c60a5e12855d72c404c87f0579d1182/scheduler/appengine/task/gitiles/gitiles_test.go
,
May 30 2018
The following revision refers to this bug: https://chromium.googlesource.com/infra/experimental/+/2a32dfb4bc4ac43d456e2cff764a119f9950e259 commit 2a32dfb4bc4ac43d456e2cff764a119f9950e259 Author: Andrii Shyshkalov <tandrii@chromium.org> Date: Wed May 30 23:28:31 2018 Update scheduler config to use regex. TBR=sergiyb@chromium.org Bug: 836742 Change-Id: Ic29dd1c42647b5d880b7c5205969105351c4aedf Reviewed-on: https://chromium-review.googlesource.com/1080210 Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org> [modify] https://crrev.com/2a32dfb4bc4ac43d456e2cff764a119f9950e259/luci-scheduler-dev.cfg
,
Jun 6 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/chromite/+/933b0357bcbcfd1ec309149436766007b0f0154a commit 933b0357bcbcfd1ec309149436766007b0f0154a Author: Sergiy Byelozyorov <sergiyb@chromium.org> Date: Wed Jun 06 14:45:27 2018 Replace glob usage with regexp as globs are being deprecated R=dgarrett@chromium.org, tandrii@chromium.org No-Tree-Checks: true Bug: 836742 Change-Id: I5ce951a65cfb6ca826e9109b66cb56050c4e5c89 Reviewed-on: https://chromium-review.googlesource.com/1084092 Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org> Reviewed-by: Don Garrett <dgarrett@chromium.org> Tested-by: Don Garrett <dgarrett@chromium.org> Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> [modify] https://crrev.com/933b0357bcbcfd1ec309149436766007b0f0154a/luci-scheduler.cfg
,
Jun 6 2018
Regexp support has been added. Glob support has been deprecated and removed in https://crrev.com/c/1078731.
,
Jun 6 2018
The following revision refers to this bug: https://chromium.googlesource.com/infra/luci/luci-go.git/+/92189680ae0d3f9c29f5c6c67cc84c2bd1f50641 commit 92189680ae0d3f9c29f5c6c67cc84c2bd1f50641 Author: Sergiy Byelozyorov <sergiyb@chromium.org> Date: Wed Jun 06 19:50:03 2018 Deprecate globs in scheduler configs Bug: 836742 Change-Id: If6f7382d885dd6254087556d39e1644f7657b00c Reviewed-on: https://chromium-review.googlesource.com/1078731 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Andrii Shyshkalov <tandrii@chromium.org> [modify] https://crrev.com/92189680ae0d3f9c29f5c6c67cc84c2bd1f50641/scheduler/appengine/messages/config.pb.go [modify] https://crrev.com/92189680ae0d3f9c29f5c6c67cc84c2bd1f50641/scheduler/appengine/messages/config.proto [modify] https://crrev.com/92189680ae0d3f9c29f5c6c67cc84c2bd1f50641/scheduler/appengine/task/gitiles/gitiles.go [modify] https://crrev.com/92189680ae0d3f9c29f5c6c67cc84c2bd1f50641/scheduler/appengine/task/gitiles/gitiles_test.go
,
Jun 7 2018
Releasing now...
,
Jun 7 2018
Released 3200-3fef15f |
||||||||
►
Sign in to add a comment |
||||||||
Comment 1 by serg...@chromium.org
, Apr 25 2018