我如何告诉詹金斯在特定的奴隶上运行特定的项目?

我已经设置了一个Jenkins主节点和一个我要用于暂存应用程序的从节点。但是我不知道如何配置项目以在我创建的从属节点上运行。

评论

stackoverflow.com/questions/9214501 / ...

#1 楼

设置作业配置中的“限制可以运行此作业的位置”复选框,然后指定从站的名称。

如果以后添加更多从属,则可以为每个从属设置标签并在作业配置中指定标签。

请参阅此参考文档:


https://wiki.jenkins-ci.org/display/JENKINS/Distributed+builds


评论


谢谢。我花了很长时间才找到答案。它应该已经添加到此页面wiki.jenkins-ci.org/display/JENKINS/Distributed+builds

– Surasin Tancharoen
2015年6月4日13:56

#2 楼

如果您正在运行管道作业,则首先要向从节点(或现在看来叫作代理的代理)添加标签(例如“从”)。作业运行的标签:如果只希望作业在此特定从属服务器上运行,请不要重复使用标签。当然,标签不必是“奴隶”。
更新:
在脚本化的管道中,如果您的节点名为“我的节点”,则也可以执行以下操作:
pipeline {
    agent {label 'slave'}
    stages {
        ...
    }
}

如果仅希望代码块在该特定节点上运行,这很有用。但是,使用标签更加灵活,并且可以更轻松地添加节点以共享工作量。

评论


这很难找到,脚本语法的文档正逐渐倾向于声明式,我还不能迁移,所以谢谢!

– Mitchell Currie
18 Mar 6 '18 at 5:37

#3 楼

如果要使用Node / Label作为参数,请安装NodeLabel参数插件

评论


请注意,如果为作业选择“节点”参数,并且要从Groovy调用它,则需要创建一个特殊参数:params + = new org.jvnet.jenkins.plugins.nodelabelparameter.LabelParameterValue('testServer',testServerLabel) ; (而不是通常的StringParameterValue)。

– Nux
19年6月7日14:49



@Nux我不确定,因为“危机已引起危机”,但是我假设看到您的评论为我省去了数小时的头痛。谢谢!

– aakoch
19年11月20日在16:12