...
Code Block | ||
---|---|---|
| ||
def call( def COMPLIANCE_REPO_CREDENTIALS, def COMPLIANCE_REPO_URL, def RULESDIR, def TESTSUITENAME, def CONTINUEONFAIL ) { try { // Perform a 'git checkout' of a remote repository which is NOT the repository from which this pipeline code was sourced # Git checkout COMPLIANCE_REPO_URL using COMPLIANCE_REPO_CREDENTIALS // Executes the 'mettleci compliance test' command to test your repository's DataStage jobs against your Compliance rules. // Note that 'mettleci compliance test' is mnotnot the same as 'mettleci compliance query' - See the documentation for more details. mettleci compliance test $RULESDIR # Compliance Test - ${TESTSUITENAME} $TESTSUITENAME } finally { // Whether the above is successfult or not... # Publish Unit Test resultsjunit astestResults "compliance_report_${TESTSUITENAME}.xml" // }Publish CCMT output as JUnit Test Results allowEmptyResults: true // Don't fail the build on missing test result files or empty test results skipPublishingChecks: true catch(e) { // #Don't Publishautomatically Unitpublish Testtest results as "compliance_report_${TESTSUITENAME}.xml" to Git skipMarkingBuildUnstable: (CONTINUEONFAIL) throw e // (Optionally) mark the build as #successful,even Propagateif errorthere forare downstreamtest errorfailures handlingreported } } |
Note that this Custom Step makes used of Jenkins' JUnit plugin.