配置局域网IP访问
系统管理->系统设置 找到Jenkins Location,Jenkins URL 改为自己的IP地址 http://你电脑的IP地址:8080
使用brew安装jenkins会避免很多其他安装方式产生的用户权限问题,但是会将httpListenAddress默认设置为127.0.0.1,这样我们虽然可以在本地用localhost:8080访问,但是本机和局域网均无法用ip访问。解决办法为修改两个路径下的plist配置。并重启
~/Library/LaunchAgents/homebrew.mxcl.jenkins.plist
/usr/local/opt/jenkins/homebrew.mxcl.jenkins.plist
将上面两个plist中的httpListenAddress后的ip地址,修改为本机IP或者0.0.0.0即可。
这样子别人就可以通过IP地址访问你电脑上部署的Jenkins,注册用户,访问Jenkins。管理员可以通过权限修改,限制用户权限。
全局环境配置
构建Job过程中,有遇到编码错误,还有Ruby环境路径等问题,可以搜索对应的安装方式,然后系统设置,系统管理找到全局属性,选择环境变量,然后对应的填写相关信息。Path 路径,在终端输入$echo $PATH
。
Jenkins 配置SSH
1.使用jenkins 拉取gitlab 代码时候,之前是使用用户名加密码,比较简单,之后使用SSH 方式,在gitlab 上添加了公钥,然后jenkins 上添加私钥,没问题(这里我就不展开了,网上很多)。如果报用户权限问题无法访问gitlab,之后查询是需要创建jenkins 用户,使用jenkins用户生成私钥公钥,jenkins 用户只有安装pkg 安装包才会生成。
- 打开终端为名为jenkins的用户设置一个密码
sudo dscl . passwd /Users/jenkins YourPassword
- 切换到jenkins用户,并以jenkins用户身份生成ssh key
su jenkins
ssh-keygen -t rsa -C "你的邮箱标识" -f ~/.ssh/jenkins
- 把公钥放到git的服务器 jenkins.pub 公钥 jenkins 私钥放到jenkins 上
我遇到个更奇葩的情况,添加PATH 路径以后私钥失效
stderr: /Users/Shared/Jenkins/tmp/ssh9730162614154708229.sh: line 6: ssh: command not found
fatal: Could not read from remote repository.
echo $PATH ,路径中间添加冒号:分割,才解决。
Jenkins 配置邮件分发
先到 系统管理->插件管理 搜索 Email Extension Plugin 如果首次安装Jenkins 时候选择了推荐插件安装,应该该插件就已经安装过了。
然后系统管理->系统设置 ->Jenkins Location 填写邮箱地址
系统设置 —>邮件通知 填写相关信息,我这边是用的腾讯企业邮箱
先找到邮箱对应的参数
系统设置 —>Extended E-mail Notification 这个是更详细的发送邮件模板配置
邮箱配置跟上面一致,主要配置一下发送邮件内容模板
模板信息:转自 环境部署(八):jenkins配置邮件通知
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志</title>
</head>
<body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4"
offset="0">
<table width="95%" cellpadding="0" cellspacing="0" style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
<tr>
本邮件由系统自动发出,无需回复!<br/>
各位同事,大家好,以下为${PROJECT_NAME }项目构建信息</br>
<td><font color="#CC0000">构建结果 - ${BUILD_STATUS}</font></td>
</tr>
<tr>
<td><br />
<b><font color="#0B610B">构建信息</font></b>
<hr size="2" width="100%" align="center" /></td>
</tr>
<tr>
<td>
<ul>
<li>项目名称 : ${PROJECT_NAME}</li>
<li>构建编号 : 第${BUILD_NUMBER}次构建</li>
<li>触发原因: ${CAUSE}</li>
<li>构建状态: ${BUILD_STATUS}</li>
<li>构建日志: <a href="${BUILD_URL}console">${BUILD_URL}console</a></li>
<li>构建 Url : <a href="${BUILD_URL}">${BUILD_URL}</a></li>
<li>工作目录 : <a href="${PROJECT_URL}ws">${PROJECT_URL}ws</a></li>
<li>项目 Url : <a href="${PROJECT_URL}">${PROJECT_URL}</a></li>
</ul>
<h4><font color="#0B610B">失败用例</font></h4>
<hr size="2" width="100%" />
$FAILED_TESTS<br/>
<h4><font color="#0B610B">最近提交(${SVN_REVISION})</font></h4>
<hr size="2" width="100%" />
<ul>
${CHANGES_SINCE_LAST_SUCCESS, reverse=true, format="%c", changesFormat="<li>%d [%a] %m</li>"}
</ul>
详细提交: <a href="${PROJECT_URL}changes">${PROJECT_URL}changes</a><br/>
</td>
配置触发发送邮件条件
到项目job 里面配置,增加构建后操作
配置完成就可以构建一下然后调试发送邮件情况。
fir.im 上传ipa 包插件的配置
首先选择 Manage Jenkins(系统管理) -> Manage Plugins(插件管理)->高级->上传插件,插件下载地址。
上传成功后到 Job 配置中,增加构建后操作步骤
fir.im Jenkins插件官方文档
Publish Over FTP 插件
还是先到插件管理中下载安装,这里就不多啰嗦了,配置也很简单,到系统管理->系统配置,找到Publish over FTP,配置很简单。
然后到对应的Job配置中,增加构建后步骤。
相关文章:
持续化集成(一):Jenkins安装
持续化集成(二):Jenkins 常用配置
持续化集成(三):Jenkins + Fastlane 打包
参考文档: