如何配置Jenkins节点仅接受通过标签指定该节点的任务?
限制专用Mac Mini节点仅接受明确指定的任务
针对你这种多分支流水线的场景,要让那台负责安装包签名的Mac Mini只承接明确指定它的任务,按以下方式操作即可:
- 给这台Mac Mini设置唯一专属标签,比如
mac-sign-exclusive,确保该标签不会被其他节点使用,也不会被无关流水线任务引用。 - 进入该节点的配置页面,在「限制项目运行的节点」配置项中,选择「标签表达式」并填入刚才设置的专属标签。这一步会锁定节点,仅匹配该标签的任务才能被调度到这里。
- 在多分支流水线DSL脚本里,仅在安装包签名的逻辑块中明确指定该专属标签调用节点:
node(label: 'mac-sign-exclusive') { // 执行安装包签名相关操作 sh 'your-signing-command.sh' } - 检查所有分支的流水线脚本,确保其他不需要签名的任务块不会使用这个专属标签,避免误占用节点资源。
多分支流水线的任务名称是动态生成的,用任务名称限制灵活性不足,通过专属标签精准匹配是更适配这种场景的方案。
内容的提问来源于stack exchange,提问作者Reto Höhener
相关产品推荐
相关产品推荐

