-
Notifications
You must be signed in to change notification settings - Fork 108
runtime/lava: add tree-based priority support #3038
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
broonie
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The commit log mentions the allocation of priorities to the trees but the changes don't actually do that, they look up the priorities from the config. That's good and sensible but it'd probably be good to have the actual config update here as an end to end example of things working and to help with testing on staging.
Thanks, Broonie, for the feedback. The patch is also linked to another PR: kernelci/kernelci-pipeline#1407, should have linked it in this PR. This includes the config changes. I just triggered a staging run to see how it behaves. Let me know if I am missing anything or if priorities need adjusting. |
|
Ah, didn't see that other PR - I checked for already merged stuff but didn't think to check pending PRs. |
81435c0 to
f72b179
Compare
Add 4-level priority system for LAVA job queue ordering:
- highest (80): manual submissions for bisection/debugging
- high (60): critical trees (mainline, stable, stable-rc)
- medium (40): important trees (next, stable-rt, kselftest)
- low (20): other trees (default)
Human submissions (submitter != SERVICE_PIPELINE) get highest
priority by default, but can optionally specify priority via
node['data']['priority'] using string ('high'/'medium'/'low')
or numeric values (clamped to 0-100).
Pipeline submissions use tree_priority from build configs.
Add SERVICE_PIPELINE class constant to replace hardcoded string.
Add priority field to BuildConfig class for tree priority support.
Priorities are scaled to each lab's configured range before
submission to accommodate different LAVA lab configurations.
Signed-off-by: Ben Copeland <[email protected]>
f72b179 to
9454844
Compare
nuclearcat
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As we discussed in Discord - this PR are well tested, so merging right now.
Add 4-level priority system for LAVA job queue ordering:
Human submissions (submitter != SERVICE_PIPELINE) get highest priority by default, but can optionally specify priority via node['data']['priority'] using string ('high'/'medium'/'low') or numeric values.
Pipeline submissions use tree_priority from build configs.
Add SERVICE_PIPELINE class constant to replace hardcoded string.
Priorities are scaled to each lab's configured range before submission to accommodate different LAVA lab configurations.