anaconda crash reporting: update needles, click Report again

Summary:
First off, this revises the anaconda crash handling needles a
bit. We ditch gtk3195 and update anaconda_error to reflect
current F24/Rawhide. We keep the old anaconda_error around for
now as anaconda_error-23, to handle crashes in the F23 two-week
Atomic nightlies. We also add an 'early' variant, which is for
when (I think) the installer crashes very early, before it's
loaded in GTK+ settings; when that happens, the dialog uses a
different font. The screenshot comes from a recent Rawhide test
that crashed.

We also restore the anaconda `post_fail_hook` code to click
the Report button when a crash happens. This was erroneously
removed in D637. Before the Report button is clicked, the
`anaconda-tb` file exists but the libreport stuff in `/var/tmp`
does not. By removing this, we lost the libreport bits from
the uploaded files, which makes it harder to report crashes. So
let's add it back.

Finally we fix the actual tarring and uploading of `/var/tmp`;
also in D637 this got broken because it was being tarred up in
whatever directory the commands happened to be running in, but
we were still trying to upload it from `/var/tmp`.

https://openqa.stg.fedoraproject.org/tests/8444 was run with
these changes, and has `/var/tmp` correctly uploaded.

Test Plan:
Run some test that crashes, make sure the crash
handling all works correctly.

Reviewers: jskladan, garretraziel

Reviewed By: garretraziel

Subscribers: tflink

Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D768
This commit is contained in:
Adam Williamson 2016-03-08 08:10:51 -08:00
parent 2c1890c52e
commit 0305c5fcd0
13 changed files with 76 additions and 13 deletions

View file

@ -11,9 +11,10 @@ use testapi;
sub post_fail_hook {
my $self = shift;
# if error dialog is shown, it created traceback file
# if error dialog is shown, click "report" - it then creates directory structure for ABRT
my $has_traceback = 0;
if (check_screen "anaconda_error", 10) {
assert_and_click "anaconda_error_report";
$has_traceback = 1;
}
@ -36,7 +37,7 @@ sub post_fail_hook {
}
# Upload all ABRT logs
script_run "tar czf var_tmp.tar.gz /var/tmp";
script_run "tar czf /var/tmp/var_tmp.tar.gz /var/tmp";
upload_logs "/var/tmp/var_tmp.tar.gz";
# Upload /var/log

View file

@ -1,17 +1,17 @@
{
"area": [
{
"xpos": 275,
"ypos": 319,
"width": 217,
"height": 19,
"type": "match"
}
],
"tags": [
"ENV-DISTRI-fedora",
"ENV-FLAVOR-server",
"anaconda_error"
],
"properties": [],
"area": [
{
"xpos": 275,
"height": 19,
"ypos": 322,
"width": 217,
"type": "match"
}
]
}
"properties": []
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

View file

@ -0,0 +1,17 @@
{
"area": [
{
"height": 19,
"type": "match",
"width": 262,
"xpos": 275,
"ypos": 324
}
],
"properties": [],
"tags": [
"ENV-DISTRI-fedora",
"ENV-FLAVOR-server",
"anaconda_error"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 KiB

After

Width:  |  Height:  |  Size: 118 KiB

View file

@ -0,0 +1,15 @@
{
"area": [
{
"height": 20,
"type": "match",
"width": 100,
"xpos": 570,
"ypos": 430
}
],
"tags": [
"ENV-DISTRI-fedora",
"anaconda_error_report"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

View file

@ -0,0 +1,15 @@
{
"area": [
{
"height": 25,
"type": "match",
"width": 100,
"xpos": 565,
"ypos": 425
}
],
"tags": [
"ENV-DISTRI-fedora",
"anaconda_error_report"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View file

@ -0,0 +1,15 @@
{
"area": [
{
"height": 25,
"type": "match",
"width": 100,
"xpos": 570,
"ypos": 425
}
],
"tags": [
"ENV-DISTRI-fedora",
"anaconda_error_report"
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 118 KiB