我想使用Jenkins "PRQA“插件,它似乎没有从管道使用它的选项。该插件将运行静态代码分析并发布结果。在我的例子中,它需要一些已经在流水线作业中完成的准备工作。正因为如此,我希望将作业包含到该流水线中,但是在同一个执行器上,将流水线准备的数据作为某种内联作业步骤。
我已经尝试为PRQA-Plugin-Step创建了一个作业,并使用流水线中的构建步骤来执行该作业。但是这会尝试在一个新的executor上启动作业(并停止,因为我只有一个executor)。
pipeline {
agent any
stages {
stage('Build') {
steps {
echo 'Prepare'
}
}
stage('SCA') {
steps {
//Run this without using a new executor with the Environment that exists now
build 'PRQA_Job'
}
}
}
}在与当前工作目录相同的执行器上运行作业的正确方法是什么。
发布于 2020-07-22 17:06:22
使用指定的build 'PRQA_Job',不可能在同一个执行器上运行第二个作业(1个作业=1个执行器),因为主作业只是等待触发的作业完成。但您可以在具有多个执行器的同一代理上运行另一个作业,以便从主作业到达工作区。
对于测试角色,请在两个作业中指定代理名称:agent 'agent_name_here'
发布于 2020-07-22 17:26:50
如果你想对一个没有本地管道支持的插件使用插件功能,你可以尝试使用Jenkins pipeline的"step: General Build step“特性。您可以使用作业配置窗口中链接的管道语法向导来生成所需的管道说明。
如果插件没有出现在Jenkins的"step: General Build step“部分,你可以使用单独的Job。要将所有需要的文件/数据复制到第二个Job中,您将需要使用Jenkins的Archive Artifact/Copy Artifact功能来保存来自Pipeline构建的文件。
有关如何起诉存档工件/复制工件的更多信息,请参见https://plugins.jenkins.io/copyartifact/和https://www.jenkins.io/doc/pipeline/tour/tests-and-artifacts/
https://stackoverflow.com/questions/63027462
复制相似问题