406301d Wiki reporting: ignore overall job result for 'modules' condition

Authored and Committed by adamwill 4 years ago
    Wiki reporting: ignore overall job result for 'modules' condition
    
    When we implemented the 'modules' condition for wiki reporting,
    we used the logic that for a pass to be reported for the test
    case in question, *both* the overall openQA job must pass *and*
    the specified modules must pass. But now we have a problem: we
    implemented the workstation_core_applications test as a sort of
    bolt-on to the apps_startstop test, and the way we did that, the
    overall result for the apps_startstop job can be 'failed' but
    we still want to report a pass for workstation_core_applications
    (if all the core applications work but some other apps don't).
    
    So, this changes that logic so for the 'modules' condition, we
    consider it satisfied so long as the specified modules passed
    *regardless* of the overall job result. The other few things
    that use this condition should be fine with that. Unfortunately
    the implementation of this gets pretty ugly, but it works and it
    has tests. I even managed to make it theoretically possible to
    express "this test case is passed if these modules passed and
    some other test suite also passed" (combining 'modules' and
    'testsuites' conditionals), even though we don't actually use
    that at present.
    
    There is no ability to specify the old behaviour; we can work
    that in somehow later if we need it, but right now we don't so
    let's avoid the complexity...
    
    Signed-off-by: Adam Williamson <awilliam@redhat.com>
    
        
file modified
+55 -40
file modified
+19 -8