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 是一个可扩展的持续集成引擎 ,主要用于持续、自动构建测试项目和监控一些定时执行任务。一句话简单说就是:程序员修改好了代码提交上...
  • kiss881101
  • kiss881101
  • 2016-03-20 15:57:29
  • 2602

iOS 持续集成- Jenkins+iOS+fir+蒲公英 搭建持续集成环境

今天用Jenkins+iOS+fir+蒲公英 搭建持续集成环境,把过程记录一下。
  • jeikerxiao
  • jeikerxiao
  • 2016-06-13 15:54:18
  • 4380

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

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

Mac OSX搭建Jenkins持续集成环境

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

Mac下Jenkins安装(一)

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

iOS 持续集成- Mac下命令启动和关闭Jenkins

Mac下命令启动Jenkins
  • jeikerxiao
  • jeikerxiao
  • 2016-06-22 10:30:50
  • 5694

Mac中jenkins的使用

  • 2016年08月23日 11:43
  • 4.46MB
  • 下载

Mac环境下搭建jenkins持续化集成平台

Mac环境下搭建jenkins持续化集成平台 1. Jenkins环境安装 在官网下载Jenkins, 地址是: http://jenkins-ci.org/content/thank-you-d...
  • lixuewen123
  • lixuewen123
  • 2015-03-21 16:22:59
  • 1669

Mac中Jenkins自动打包上传fir的配置流程(从零开始)二

二.配置Jenkins1.初始化 安装完成后,打开浏览器,输入 http://localhost:8080 会出现下图的重设初始密码的界面 找到/Users/Shared/Jenkins/H...
  • zzzzllll19
  • zzzzllll19
  • 2017-06-11 18:06:35
  • 950

Mac环境中Jenkins自动打包上传fir的配置流程(从零开始)三

三。新建项目点击Jenkins首页的新建 Enter an item name 构建一个自由风格的软件项目 点击OK 1.项目名称和描述 2.源码管理 3.配置构建触发器 这里面五个对应...
  • zzzzllll19
  • zzzzllll19
  • 2017-06-11 18:48:53
  • 689
收藏助手
不良信息举报
您举报文章:Mac Jenkins+fir 搭建
举报原因:
原因补充:

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