这是一个构建IOS应用程序的好工具,该插件为您的构建创建MacOs代理。
它可以储存你在Jenkins上的钥匙链文件并发送到MacOs节点。必威国际有限公司
表的内容
特性
- 允许配置一个Mac作为Jenkins奴隶必威国际有限公司
- 在一台Mac上运行多个版本
- 将每个建筑彼此隔离开来
- 在mac的云上运行构建
- 配置环境变量
- 把钥匙链文件作为詹金斯的凭证必威国际有限公司
- 在节点文件系统上注入keychain
- 准备构建环境
- 清除每次构建后创建的所有文件
这个插件已经针对macOS 10.14 Mojave和macOS 10.15 Catalina进行了测试,尽管理论上它应该可以与旧版本一起使用,只要它支持sysadminctl命令。
需求
必威国际有限公司
必须在全局安全设置中启用“入站代理的TCP端口”。
如果没有,WebSocket必须得到Jenkins的支持并在代理中被激活(参见必威国际有限公司网络套接字)
MacOS
配置更改后重新启动MacOs
为所有用户启用SSH
进入System Preferences -> Sharing,并启用Remote Login for All users:
SSH配置
在/etc/ssh/sshd_config文件中,根据需要取消注释并更新参数maxauthries、MaxSessions、ClientAliveInterval和ClientAliveCountMax的值。
10个Jenkins和1个Mac的配置示例,允许10个用户:必威国际有限公司
- MaxAuthTries 10
- MaxSessions 100
- ClientAliveInterval 30
- ClientAliveCountMax 150
有关sshd_config的更多信息,请参阅官方文档
配置Jenkins用户必威国际有限公司
在Mac上创建一个具有管理员权限的用户。它将是你的Mac插件全局配置的连接用户。
在/etc/sudoers中添加sudo NOPASSWD到该用户:请参阅如何在没有密码的情况下配置sudo
为了最大化安全性,你只能为插件使用的"chmod"和"sysadminctl"命令配置:
[USERNAME] ALL = NOPASSWD: /usr/sbin/sysadminctl - adduser mac-??????????密码 ??????????, /usr/sbin/sysadminctl -deleteUser mac -??????????/bin/chmod - r 700 /Users/mac-??????????/
插件配置
全局配置
在je必威国际有限公司nkins全局配置中,添加一个新的Mac云:
配置Mac Cloud的字段:
选择JNLP作为连接器并引用Jenkins URL。必威国际有限公司这个URL必须可以被外部访问,localhost不工作。
添加一个新的Mac主机,并填写字段中的属性:
同一Mac主机上同时构建的数量取决于属性“Max users”。你配置的Mac主机越多,你就可以在多台机器上同时构建更多的主机。该插件的测试限制为每台Mac主机7个用户。
目前支持的凭据是User和Password。把你的mac账号sudo NOPASSWORD配置(参见配置Jenkins用户)。必威国际有限公司
请参阅你们代理商的标签。选择JNLP作为连接器并引用Jenkins URL。必威国际有限公司这个URL必须可以被外部访问,localhost不工作。
在项目配置中,指标签:
钥匙链管理
从v1.1.0开始,您可以将密钥链文件存储到Jenkins中,并将其注入Jenkins Mac代理。为此,请选中“上载密钥链文件”:必威国际有限公司
添加一个新的Secret文件凭据。更喜欢将其存储为系统凭据,以不允许任何项目直接使用它:
在JNLP连接之前,密钥链将通过~/Library/Keychains/目录中的SCP发送到Mac代理。
环境变量
从v1.1.0开始,您就可以在Mac主机上设置环境变量。这些变量将在Node上设置,并且可以在构建中访问。
试生产的命令
从v1.3.0开始,您可以在代理启动之前设置传递给用户的命令。该字段是一个多行字符串,每一行都匹配一个命令执行。在Mac上运行带有此字段的脚本是可能的。
网络套接字
从v1.3.1开始,Mac代理支持WebSocket.
该选项可在Mac云设置:
日志配置
您可以定义一个自定义LOGGER,将插件的每个输出记录在相同的位置。要做到这一点,进入Jenkins配置中的系统日志:必威国际有限公司
配置插件的Logger:
保存配置。
执行
配置完成后,当您运行带有Mac Cloud标签的作业时,它将在您设置为主机的Mac上创建一个jenkins代理,并在其上运行构建。必威国际有限公司
你可以在詹金斯的主页上看到:必威国际有限公司
团队
产品负责人:Cloudehard
开发人员:mat1e
接触
任何问题吗?你可以在上面问git的房间或者打开一个问题詹金斯的吉拉必威国际有限公司.