Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1588895

Summary: Make the installation error detection more reliable
Product: [Retired] Beaker Reporter: Roman Joost <rjoost>
Component: generalAssignee: beaker-dev-list
Status: CLOSED WONTFIX QA Contact: tools-bugs <tools-bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 25   
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-10-21 14:12:55 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Roman Joost 2018-06-08 03:44:18 UTC
Description of problem:

Beaker detects errors by scraping the log files and searching for anaconda error patterns. While this is useful if we know certain patterns, it can be unreliable if errors don't follow this pattern and the job is then finally killed by the watchdog.

This bug is to find ways to make the error detection more reliable.

Version-Release number of selected component (if applicable):
25

Comment 1 Roman Joost 2018-06-08 03:46:27 UTC
I've found:

%traceback and %onerror in the latest pyanaconda documentation, yet it seems to be a new feature which doesn't seem to be available with Fedora28. RHEL 7 seems to be shipping[1] with this feature, but my attempts to reproduce it failed so far.

[1] - https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/installation_guide/sect-kickstart-syntax#sect-kickstart-onerror

Comment 2 Roman Joost 2018-06-08 03:49:42 UTC
My attempts so far was using a hacked up proxy which accepts an additional endpoint and the job is created with a ks_appends:

      <ks_appends>
        <ks_append><![CDATA[
%post --erroronfail
#!/bin/bash
return 1
%end

%onerror --log=/dev/console
set -xe
fetch - http://beaker-server-lc.beaker:8000/install_failure/32
%end
        ]]></ks_append>
      </ks_appends>

in which it simply does a curl request to the end point. Yet it was never called, even tho anaconda errored:

      
================================================================================      
      
  
       
      
  
      

================================================================================      

Error 

      
  
      
      
  
      
 There was an error running the kickstart script at line 370.  This is a fatal 
 error and installation will be aborted.  The details of this error are: 
  
 /tmp/ks-script-3K8nSz: line 2: return: can only `return' from a function or 
 sourced script 
      
  
      
      
  
      
Press enter to exit.