2017-02-20 63 views
0

如何使用dsl脚本在jenkins中发布生成的valgrind结果。我可以做publishers.archiveArtifacts/publishers.archiveJunit,但我无法为valgrind做同样的事情。如何使用jenkins dsl脚本发布valgrind结果

继我试过的事情,但得到了以下异常

job.publishers { 
configure { node -> 
    node << 'org.jenkinsci.plugins.valgrind.ValgrindPublisher' { 
    } 
} 
} 

javaposse.jobdsl.dsl.helpers.publisher.PublisherContext.configure() is applicable for argument types: 
(builders.JobBuilder$_create_job_closure6_closure19) values 
[[email protected]] 

回答

0

Configure Block仅在job上下文中可用,但不是在publishers方面:

job('example-1') { 
    configure { node -> 
    node/publishers << 'org.jenkinsci.plugins.valgrind.ValgrindPublisher' { 
     // options 
    } 
    } 
} 

作为替代方案,你可以使用Automatically Generated DSL

job(String name) { 
    publishers { 
    valgrindPublisher { 
     pattern(String value) 
     failThresholdInvalidReadWrite(String value) 
     failThresholdDefinitelyLost(String value) 
     failThresholdTotal(String value) 
     unstableThresholdInvalidReadWrite(String value) 
     unstableThresholdDefinitelyLost(String value) 
     unstableThresholdTotal(String value) 
     publishResultsForAbortedBuilds(boolean value) 
     publishResultsForFailedBuilds(boolean value) 
     failBuildOnMissingReports(boolean value) 
     failBuildOnInvalidReports(boolean value) 
    } 
    } 
} 
+0

我试过了d oing这个发布者{configure {node - > node <<'org.jenkinsci.plugins.valgrind.ValgrindPublisher'{}}}}但是dsl抛出一个错误 – Shiva

+0

我更新了答案。 – daspilker