jenkins agent的创建
如何在Mac上新建Jenkins agent节点进行iOS打包(二)
在后面,我们使用jenkins是使用的master&agent的工作模式,我们刚刚的master并不帮我们做项目的build,它只负责各个master工作的分配,以及一些环境变量的配置,真正执行build工作的就是agent
首先点击 “系统管理”-> “管理节点”-> “新建节点”,进入到新建节点界面
以下是一些比较重要的选项的说明
这里特别需要详细说明的就是credentials这一项,因为我们这里是用的是通过ssh方式启动agent,ssh方式连接需要用到ssh-keys,那么这里的ssh-keys就属于这里credential的一部分
接下来我们先做创建credential的准备工作,来创建新的ssh-keys
创建ssh-keys
在连接到master后,在终端中输入ssh-****** -t rsa -C “[email protected]” -b 4096
根据提示生成公钥和私钥,公钥和私钥会保存在~/.ssh目录下,如底下的id_rsa就是私钥,id_rsa.pub便是公钥
然后复制私钥
创建credential
点击”add”来添加credential
将刚刚复制的私钥输入到private key区域
然后复制公钥
然后就是添加公钥,添加公钥需要在agent上添加,这里我们使用的是一台mac
进入agent机器对应用户的~/.ssh目录下,vim authorized_keys,将刚才复制的公钥粘贴到其中,然后保存
在选择好了我们刚刚创建的credential后,我们需要记住agent的IP地址,填入到Host这一栏中
需要注意是的是,如果agent没有固定ip的话,如果agent机器连接网络后被分配了新的ip,name我们需要在节点管理界面中更改host地址
然后就可以启动agent了,点击”relaunch agent”按钮
我们第一次点击的时候会发现启动失败,因为我们还需要点击左侧的Trust SSH HOST Key,点击进去确认后,再次点击relaunch agent
这时候agent就启动成功
至此,一个agent已经创建并启动成功了,那么之后就可以在Master上给agent分配工作了。
需要注意的是,agent上只有配置了相应的工作环境,master给它分配的任务才能执行成功,比如要执行ios的打包任务,那么agent必须是一台mac,而且装有xcode,并且安装了证书。如果执行android打包任务,那么相应的android打包环境也必须配置好,否则打包就会失败。