Mac Jenkins+fir 搭建

原创 2016年08月30日 15:28:53

阐述

最近在准备产品新版本开发的预备工作,网上看了很多产品方案,感觉一个成熟的产品必然是产品-测试-产品循环,因此寻找了很多关于CI环境搭建方面的资料,最终还是觉得Jenkins+fir这套方案适合公司目前的情况。故将搭建过程记录下来,供大家参考。


步骤

1. 安装Java环境

Jenkins平台需要对应的Java环境,请下载对应版本的Java环境包

下载地址: http://www.java.com/zh_CN/download/mac_download.jsp


2. 下载Jenkins

下载Jenkins最新版本的安装包(注意查看对应的Java版本)
Jenkins官网: https://jenkins.io


3. 安装Jenkins
一直选择(下一步)Next,不需要设置


4. 初始配置 Jenkins
a. 浏览器输入 http://localhost:8080
(注: 如端口冲突,请修改端口)

修改端口方法(命令行): 

$  defaults write /Library/Preferences/org.jenkins-ci httpPort xxxx

(xxxx 为你要修改的端口号)

b. 按照提示,找到密码,输入下方的输入框



c. 找到 /Users/Shared/Jenkins/Home/ 这个目录下,这个目录虽然是共享目录,但是有权限的,非Jenkins用户/secrets/目录是没有读写权限的。

故需要进行操作:  右键 - 显示简介 - 修改权限


d. 打开 initialAdminPassword 文件,复制并黏贴密码



e. 选择 Install suggested plugins (当然也可自己选择对应插件进行安装)


安装截图


如有安装失败的,在失败之后,重启浏览器多次,即可跳过失败的插件安装步骤(失败的插件需要在Jenkins中手动安装)



f. 账户创建(安装失败多次重启浏览器后也会到这个界面)



这样Jenkins就初步安装完成



5. Jenkins 插件安装


a. 通过插件名搜索,选择并安装



b. 自己下载插件,手动安装

插件集合下载地址: https://wiki.jenkins-ci.org/display/JENKINS/Plugins



注意:

需要安装的插件有 (可通过第一种方式)
GitLab 插件
- GitLab Plugin
- GItLab Hook Plugin

Xcode 插件
- Xcode integration

Keychains 插件
- Keychains and Provisioning Profiles Management

打包后续动作插件
- Post-Build Script Plug-in



6. 配置发布证书

a. 进入有关操作界面,如下图



b. 在下图中,上传 /Users/管理员用户名/Library/keychains/login.keychain 文件,并上传有关程序的 Provisioning Profiles 文件(证书p12不需要上传)



c. 在下方输入要使用的证书的名称



d. 设置 Provisioning Profiles 拷贝目的地路径

请输入 /Users/Shared/Jenkins/Library/MobileDevice/Provisioning Profiles/




7. 配置fir插件
按照网址中介绍的fir配置步骤进行配置: http://blog.fir.im/jenkins/



8. 创建一个新项目




初步设置有关内容







Poll SCM (poll source code management) 轮询源码管理 需要设置源码的路径才能起到轮询的效果。一般设置为类似结果: 0/5 每5分钟轮询一次 Build periodically (定时build) 一般设置为类似: 00 20 * 每天 20点执行定时build 。当然两者的设置都是一样可以通用的。

格式是:
分钟(0-59) 小时(0-23) 日期(1-31) 月(1-12) 周几(0-7,0和7都是周日) 更加详细的设置看这里

若 Code Signing Identity第一次不能选择,请Save一下,再次进入设置界面




其中:

APP_NAME 为项目名称
JENKINS_SVN_NAME 为此Jenkins项目名称
CODE_SIGN_DISTRIBUTION 为打包使用的证书名称


附上代码

APP_NAME="WizardIsBoy"
JENKINS_SVN_NAME="WizardIsBoy"
CODE_SIGN_DISTRIBUTION="Apple Development IOS Push Services: com.caxaAS.WizardIsBoy"


project_infoplist_path="/Users/Shared/Jenkins/Home/workspace/${JENKINS_SVN_NAME}/${APP_NAME}/Info.plist"
bundleShortVersion=$(/usr/libexec/PlistBuddy -c "print CFBundleShortVersionString" "${project_infoplist_path}")


bundleVersion=$(/usr/libexec/PlistBuddy -c "print CFBundleVersion" "${project_infoplist_path}")


DATE="$(date +%Y%m%d)"
IPANAME="${APP_NAME}_V${bundleShortVersion}_${DATE}.ipa"


IPA_PATH="$HOME/GGG/${IPANAME}"
echo ${IPA_PATH}
echo "${IPA_PATH}">> text.txt


echo "=================clean================="
xcodebuild -target "${APP_NAME}"  -configuration 'Release' clean


echo "+++++++++++++++++build+++++++++++++++++"
xcodebuild -target "${APP_NAME}" -sdk iphoneos -configuration 'Release' CODE_SIGN_IDENTITY="${CODE_SIGN_DISTRIBUTION}" SYMROOT='$(PWD)'


xcrun -sdk iphoneos PackageApplication "./Release-iphoneos/${APP_NAME}.app" -o ~/"${IPANAME}"






若 Ruby 出现问题则命令行输入以下命令,进行ruby重新安装
$  rvm get stable
$  rvm reinstall 2.0.0



参考资料:
1. http://gold.xitu.io/post/57b01d50128fe10055bbc6d5?utm_source=gold_browser_extension
2. http://stackoverflow.com/questions/20092600/error-loading-rubygems-plugin-openssl-bundle-loaderror
3. http://blog.fir.im/jenkins/




Jenkins+git+fir搭建持续集成环境(超详细搭建教程)

Jenkins+git+fir搭建持续集成环境(详) Jenkins 是一个可扩展的持续集成引擎 ,主要用于持续、自动构建测试项目和监控一些定时执行任务。一句话简单说就是:程序员修改好了代码提交上...

JenKins 自动化打包上传到服务器的fir 工具

fir.im Jenkins 插件使用方法 fir.im Jenkins 插件可以更快速地上传 apk/ipa 安装包到 fir.im. 安装 Jenkins 方法一:直接下载安装包  ...

Mac中jenkins的使用——自动构建

Mac中jenkins的使用   https://jenkins.io   Jenkins 是一个开源项目,提供了一种易于使用的持续集成系统,使开发者从繁杂的集成中解脱出来,专注于更为重要的业务逻辑实...

Mac OSX搭建Jenkins持续集成环境

为什么是用Mac而不是Linux服务器呢?因为自己的linux服务器配置太垃圾了。。。。如果你有linux服务器并且配置还可以,那么就用linux服务器吧,本篇文章以mac为例。至于什么是Jenkin...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

MAC上卸载Jenkins的方法

执行卸载命令 /Library/Application Support/Jenkins/Uninstall.command 或 依次执行下面的命令 sudo launchctl unload ...

Mac下Jenkins安装(一)

一.Jenkins是什么?他是一个开源的自动化服务器。由java和上百个插件组成,支持编译,测试,部署任意的自动化项目二.怎样安装Jenkins这里只介绍mac系统安装。1.从官网下载首页右侧有Nat...

Mac下使用命令行安装 jenkins 方法

首先说明不建议使用官网 dmg 形式的安装包,搭建环境什么的强烈建议使用 **命令行**。 1. 安装 brew   /usr/bin/ruby -e "$(curl -fsSL https://...
  • jiisd
  • jiisd
  • 2017年03月08日 18:45
  • 1810

iOS开发之Mac+jenkins+svn自动化构建

1.打开终端,管理员目录下: $ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/in...

Jenkins + Xcode + Fir.im 自动构建项目,并打包ipa上传(MAC)

Jenkins + Xcode + Fir.im 自动构建项目,并打包ipa上传(MAC)
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Mac Jenkins+fir 搭建
举报原因:
原因补充:

(最多只允许输入30个字)