Jenkins配置代理节点时遇到的坑和解决办法
需求:服务器太满了,需要找个比较空闲的机器分担一下,看上了同网络的某开会用的笔记本,把这个本本利用起来能跑一个算一个。
但配置起来并不容易,遇到的问题有些网上也几乎找不到答案。这里记录一下能救一个是一个:
一、mvn不是内部或外部命令:
一直以为代理节点就是提供一个算力,没想到所有的配置都要重新弄一遍(除了不用搭建Jenkins)。Jenkins主节点理论上就是发命令到代理节点上,命令里面如何有配置参数什么的,都会优先使用主节点上的配置,所以很容易命令就跑不下去了,这里有两个解决办法:
1、安装和配置完全弄成跟主节点的一模一样,配置里面的路径、参数名等都弄成一模一样。当然这个是比较傻的解决方案。
2、利用节点的特殊配置,在下面这里找到:
可以配置节点特殊的路径,或者环境变量等。
二、Agent无法连接到主机:
一开始用“中文”来给节点命名,怎么都连不上,后来改成英文就可以了。
三、通过Send files or execute commands over SSH插件发送文件到远程服务器且执行命令时报错:ERROR: Exception when publishing, exception message [argument "outputFile" is null]
并且Agent的运行日志里会打印:
Exception when publishing, exception message [argument "outputFile" is null]
原因是我之前手贱在system的全局配置里面勾选了下面这个(Avoid sending files that have not changed):
去掉勾选就没问题了。
猜测可能是环境和路径不一致,导致先去匹配文件是否有被修改过时出错。不过不管怎样,这个配置会导致节点失败是怎么都想不到的。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!