管道中没有调用RunListener和QueueListener?

时间:2016-09-06 21:24:54

标签: jenkins jenkins-plugins jenkins-pipeline

我正在尝试编写一个在Jenkins管道中侦听节点执行的插件。管道将有这样的代码:

stage ('production deploy') {
    input 'enter change ticket #'...
    node('prod') {
       // production deploy code here
    }
}

在分配节点时,或在节点上运行任何任务之前,我想验证变更管理票证是否已被批准。对于Freestyle作业,我可以使用QueueListener或RunListener,但在运行管道时都不会调用这些作业。

我无法将此代码放在管道脚本中,因为任何可以编辑管道脚本的人都可以删除验证。

我之前是否可以挂接任何其他侦听器,或者只是在管道中分配节点之后?

1 个答案:

答案 0 :(得分:0)

在我之前的自由式构建实现中,我已经覆盖了setUpEnvironment方法。我没有意识到在管道运行中没有调用它 - 这是有道理的。然后我在RunListener中实现了onStarted,然后我成功地进入了我的代码。只是我的困惑。