don*_*eyx 2 jenkins jenkins-pipeline
我有一个詹金斯管道正在运行“作业”作为其阶段之一。我想知道,有没有一种方法可以查看管道中构建作业的日志,而无需单击作业并查看控制台输出。这只会让您更容易地看到失败,而无需多次点击。
是的,有一种方法可以做到这一点,不幸的是它看起来没有记录:
返回build
一个类型的对象,您可以使用该对象通过RunWrapper
访问该对象。不幸的是,该类不可序列化,因此您需要将调用封装在方法中。Run
getRawBuild()
Run
@NonCPS
值得一提的是,它getRawBuild()
无法在沙箱中运行。为了使用它,您必须禁用 Groovy Sandbox 或在某些全局共享库中编写包装器。
import org.jenkinsci.plugins.workflow.support.steps.build.RunWrapper
@NonCPS
String getLogFromRunWrapper(RunWrapper runWrapper, int logLines) {
runWrapper.getRawBuild().getLog(logLines).join('\n')
}
RunWrapper buildInfo = build job: 'TestJob'
echo "Log of test job:"
echo getLogFromRunWrapper(buildInfo, 2000)
Run Code Online (Sandbox Code Playgroud)
您需要调整日志行数以根据您的需要进行检索。当然,只有当您决定等到子作业完成时,它才能正常工作。
也可以看看:
http://javadoc.jenkins.io/hudson/model/Run.html
归档时间: |
|
查看次数: |
3734 次 |
最近记录: |