Mac

ID:mac

构建状态必威国际有限公司詹金斯插件安装覆盖状态DepShield徽章请登录https://gitter.im/jenkinsci/mac-必威国际有限公司plugin加入我们的聊天

这是一个构建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的房间或者打开一个问题詹金斯的吉拉必威国际有限公司