-
Notifications
You must be signed in to change notification settings - Fork 50
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
New match feature (new) #1422
New match feature (new) #1422
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #1422 +/- ##
==========================================
+ Coverage 45.19% 45.24% +0.04%
==========================================
Files 367 367
Lines 39119 39125 +6
Branches 6613 6616 +3
==========================================
+ Hits 17681 17701 +20
+ Misses 20764 20751 -13
+ Partials 674 673 -1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
Minor: reformat config
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.
Great change that will help us a lot, especially with the re-runs in the lab!
I tested it locally using the following launcher:
[test plan]
unit = com.canonical.certification::sru
forced = yes
[test selection]
match = com.canonical.certification::benchmarks/disk/hdparm-read_name
It launched the SRU test plan, but only selected the stuff in bootstrap and the Disk benchmark test to be run (benchmarks/disk/hdparm-read_name
is a template id). I also modified the match
section to check that it worked properly with job ids and regexes. All good!
Tiny things here and there (see inline) that you might want to modify, but otherwise this can land.
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.
Thanks!
Description
Re-running an entire test plan is very time consuming, sometimes we have to do it to only fix a handful of jobs and this stresses our lab and makes us waste time. One solution on the Checkbox side is to have a new configuration that allows us to run a few specific tests.
Similarly to how exclude= works, we should add a new section to the [test selection] configuration that does the opposite of exclude. Namely: Given a bootstrapped testplan run all tests that match the
match
or that the matching tests depend onIf this is the dependency graph, where the arrow means: depends on (namely H depends on G)
When the following match constraint is applied:
The following jobs will be run:
The following wont be run:
Resolved issues
Fixes: CHECKBOX-1525
Documentation
Documentation added in the reference section along with other sections. No section was added to the tutorial as I feel this is a more "advanced" topic
Tests
New metabox tests and unit tests added