Closed clemensutschig closed 4 years ago
@metmajer fyi.
hi! airflow now also has sonarqube (#174), I will provide jUnit fix also solved OOM Killed issue in ds-rshiny ⚙️ -> #177
missing: fe-react seems suffering also and OOM Killed error but at provisioning stage. proposal: enable the pod with more memory (right now default resources are undefined <- not enough)
There is one general topic we have to talk about. Junit. We could do this centrally in the Shared lib.. where we collect results... or in every quickstarters build Phase.. thoughts??
this could just go here (@renedupont ) https://github.com/opendevstack/ods-jenkins-shared-library/blob/master/src/org/ods/OdsPipeline.groovy#L193
with allowEmptyResults
= true
@metmajer - fyi.
Preferably in a single location, so there’s one less thing to care about :-)
FYI @stitakis
@stitakis Here is the link to the junit plugin: https://jenkins.io/doc/pipeline/steps/junit/. You can use the allowEmptyResults
attribute safely inside the ODS shared lib. MRO addresses missing test results if they are needed but not provided.
the only challenge I see is to have twice junit results (because mro runs out of a different path) .. I need to play with this a little ... I remember seeing this ...
@clemensutschig we have once used the Junit Plugin in the MRO - not anymore
@metmajer - u sure?
:)
I think it's ok - we just have to play with it :) just to see if there are no side effects.. (and please leave as is :))
@clemensutschig @metmajer @renedupont to quickly test Clemens proposal of adding junit
to odsPipeline
, I've added following code to odsPipeline.stashTestResults(...)
in line 176:
junit ('build/test-results/test/*.xml', allowEmptyResults : true)
It failed because junit
is not a know method in the class. Here the error:
hudson.remoting.ProxyException: groovy.lang.MissingMethodException: No signature of method: org.ods.OdsPipeline.junit() is applicable for argument types: (java.util.LinkedHashMap, java.lang.String) values: [[allowEmptyResults:true], build/test-results/test/*.xml]
Possible solutions: wait(), find(), any(), dump(), print(java.lang.Object), print(java.io.PrintWriter)
Have you imported junit
to odsPipeline before? Do you know the import line?
@stitakis try doing it as follows:
junit (testResults: 'build/test-results/test/*.xml', allowEmptyResults : true)
script.junit .. done
@metmajer @clemensutschig @renedupont worked
script.junit (testResults: 'build/test-results/test/*.xml', allowEmptyResults : true)
In my test junit was called many time in the build script. Last time is in the odsPipeline as above. It seemed to not corrupt the displayed results in Jenkins
This PR #178 above fixed 2 issues: it adds sonarqube to flask qs it adds junit and copy test reports to standard test-report folder
Currently 2 known issues in QS:
npm i jest-junit@10.0.0
-> however its build pipeline fails on npm ci
added this script.junit etc. line to the shared lib like this:
script.junit (testResults: "${testLocation}/**/*.xml", allowEmptyResults : true)
see https://github.com/opendevstack/ods-jenkins-shared-library/pull/210/files#diff-9b926a359deb3f339e040516225f076eR188
Not sure if this completes this issue, if yes, please close.
and output is verified in SQ & jenkins log (e.g. Node.js currently fails with)