Skip to content
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

Inspect failed modules in /tests/overview #1335

Merged
merged 1 commit into from May 24, 2017

Conversation

mudler
Copy link
Member

@mudler mudler commented May 22, 2017

Add query parameter 'failed_modules' on /tests/overview yielding only jobs where the supplied modules have failures (including soft failures)
failed_modules
The parameter can be set in the UI, or directly from the url:
/tests/overview?distri=sle&version=12-SP2&build=1629&groupid=25&arch=aarch64&result=failed&failed_modules=install_and_reboot,shutdown
(in the image there was only a failure with shutdown and not with install_and_reboot)

Not sure if soft-failures should be listed as well, so in this implementation are showed.
@okurz can you also shed some light on AC3? (not very sure what's the suggested behavior) aside from that i think i've covered the other ACs

Would be also maybe a good idea to be able to filter also with different states per-module?
Progress related issue: Poo#12448

@codecov
Copy link

codecov bot commented May 22, 2017

Codecov Report

Merging #1335 into master will increase coverage by 0.11%.
The diff coverage is 100%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #1335      +/-   ##
==========================================
+ Coverage   87.01%   87.13%   +0.11%     
==========================================
  Files         101      101              
  Lines        7392     7398       +6     
==========================================
+ Hits         6432     6446      +14     
+ Misses        960      952       -8
Impacted Files Coverage Δ
lib/OpenQA/WebAPI/Controller/Test.pm 99.29% <100%> (ø) ⬆️
lib/OpenQA/Schema/ResultSet/Jobs.pm 96.92% <100%> (+1.08%) ⬆️
lib/OpenQA/WebAPI/Controller/Running.pm 80.32% <0%> (+4.91%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 5c05c24...753668f. Read the comment docs.

@okurz
Copy link
Member

okurz commented May 22, 2017

cool! I will take a look into the code implementation later.

reg. AC3: Take a look at https://openqa.opensuse.org/tests/overview?distri=opensuse&groupid=1&version=Tumbleweed&arch=x86_64&test=extra_tests_in_textmode . In there you see "crash java openvswitch +5" so either "crash", "java" or "openvswitch" should show up in case you use your new filter feature but as well should the other 5 failing modules be. In this case that is e.g. rabbitmq and details as can be seen in the jobs details https://openqa.opensuse.org/tests/407072

@mudler
Copy link
Member Author

mudler commented May 22, 2017

great!
Thanks for clarifing, then (if i got it straight) i think AC3 is covered as well, since it filters out independently the specified modules wrt the failed ones

{
'modules.name' => {-in => $args{failed_modules}},
'modules.result' =>
{-in => [OpenQA::Schema::Result::Jobs::FAILED, OpenQA::Schema::Result::Jobs::SOFTFAILED]},
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For soft failed jobs we don't show the modules on the tests overview page so how would it look like when trying to filter for softfailed module "foo". Will it just show orange bubbles without any modules next to it? When in doubt, just don't do anything about softfailed, only handle failed.

@@ -89,6 +89,12 @@
<input type="text" class="form-control" name="arch" placeholder="any" id="filter-arch">
</div>
<div class="form-group">
<strong>Failed modules</strong>
<input name="failed_modules" type="text" id="filter-failed_modules" placeholder="shutdown,install_and_reboot">
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would not write specific examples in the placeholder but a generic description, e.g. as in L89 "any". How about "failed modules, comma separated, e.g. mod1,mod2"? or just the examples as you gave them but with a prepended 'e.g.'

<strong>Failed modules</strong>
<input name="failed_modules" type="text" id="filter-failed_modules" placeholder="shutdown,install_and_reboot">
<%= help_popover('Help for the <em>Failed Modules</em> filter' => '
<p>Shows only the jobs that failed the specified modules</p>') %>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s/jobs that failed the specified modules/jobs that failed in the specified modules/

Add query parameter 'failed_modules' on /tests/overview yielding only jobs where the module has failed
@mudler
Copy link
Member Author

mudler commented May 23, 2017

Think i've fixed all your reviews now.. done :o)

@okurz
Copy link
Member

okurz commented May 23, 2017

LGTM

@coolo coolo merged commit 4ff0b17 into os-autoinst:master May 24, 2017
@mudler mudler deleted the upstream_failed_modules branch August 14, 2017 14:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants