[CI/CD翻译]为Jenkins设置一个Mac从机

498 阅读2分钟

原文地址:medium.com/@caseyg1204…

原文作者:medium.com/@caseyg1204

发布时间:2015年4月3日-3分钟阅读

Jenkins是现场持续集成的最突出的解决方案。它可以在大多数平台上运行,包括OSX。由于它可以在mac上运行,你可以用它来为iOS应用设置持续集成策略。你有可能不希望你的核心Jenkins实例运行在Mac上,幸运的是Jenkins让你设置从属程序来运行任务。

在Jenkins中添加从机

首先你需要在Jenkins中添加从机。

管理Jenkins -> 管理节点 -> 新节点

给它一个名字,并选择哑巴从机

点击OK

image.png

输入/Users/jenkins/build/作为远程根目录 点击保存

image.png

Mac的基本设置

创建一个名为jenkins的用户

进入Jenkins -> 管理Jenkins -> 管理节点 点击你刚创建的节点

点击 "启动",以从属身份连接到Jenkins。

image.png

你可能需要安装Java,如果你安装了,会有一个弹出窗口。

就这样,你可以使用OSX进行Jenkins的构建。

以服务形式运行Jenkins Slave

我们的目标是让OSX在启动时作为Jenkins连接并保持连接。

安装Java开发工具包

你将需要这个来从命令行连接到Jenkins。

我使用的是这里的版本,但你可能想去谷歌看看最新的版本是什么。

创建plist

这是这个过程中最复杂的一步。创建一个名为com.jenkins.ci.plist的新文件并添加以下内容。

用你的Jenkins机器的地址替换http://192.168.1.151:8080 。注意,这个例子没有使用Jenkins的认证。如果你的设置使用认证(很可能使用),你将需要在plist中添加额外的参数。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"
    "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.jenkins.ci</string>
    <key>UserName</key>
    <string>jenkins</string>
    <key>SessionCreate</key>
    <true/>
    <key>ProgramArguments</key>
    <array>         
        <string>java</string>
        <string>-Djava.awt.headless=true</string>
        <string>-jar</string>
        <string>/Users/jenkins/Desktop/slave.jar</string>
        <string>-jnlpUrl</string>
        <string>http://192.168.1.151:8080/computer/mac_vm/slave-agent.jnlp</string>
    </array>
    <key>KeepAlive</key>
    <true/>
    <key>StandardOutPath</key>
    <string>/Users/jenkins/Desktop/stdout.log</string>
    <key>StandardErrorPath</key>
    <string>/Users/jenkins/Desktop/error.log</string>
</dict>
</plist>

移动到LaunchDaemons

将此文件移至 /Library/LaunchDaemons 你会被提示进行认证

改变文件权限

现在你需要改变文件的权限,以便它能被root正确处理。

sudo chown root com.jenkins.ci.plist
sudo chmod 644 com.jenkins.ci.plist

这就是了。现在你的OSX机器只要开机就会作为从机连接到Jenkins。


原文发表于www.parsed.io


通过www.DeepL.com/Translator(免费版)翻译