iOS的自动打包 【 Xcode + git + jenkins 】
iOS的自动更新git代码、打包。
mac10.12 + Xcode8.3.1 + git + jenkins
大体思路:
a。安装jdk、jenkins
b。配置git的ssh
c。设置jenkins的用户密码
d。添加jenkins的job
一:安装Jenkins环境
需要先安装JDK,再安装Jenkins。因为Jenkins是在Java环境中运行的。
JDK下载路径:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
jenkins下载路径:https://jenkins.io/index.html
安装完毕后,需要认证,直接去相应的文件夹下拷贝Jenkins的密码即可。
创建用户。
登录过后,会让选择安装插件,我通常是选择安装所有插件。
然后再安装我们用到的插件:系统管理->安装插件
Xcode插件:XcodePlugin-Installationguide
git插件:Git+Plugin
确保电脑安装了XCode。
二:配置git的SSH
场景:jenkins需要连接到git下载最新的代码,并且git会认证来访人员,jenkins提供了两种认证方法,第一种是git账号密码(经测试不好使,可能是我们本地git服务器做了别的配置),第二种是ssh认证(经测试好使)。所以我们选择了第二种方法。
第一步:生成ssh
ssh-****** -t rsa -C "aaa@qq.com"
运行过
# Creates a new ssh key using the provided email
Generating public/private rsa key pair.
Enter file in which to save the key (/your_home_path/.ssh/id_rsa):
询问是否要输入保存的路径,直接按回车。
这时候会生成两个文件:id_rsa、id_rsa.pub。
id_rsa:私钥
id_rsa.pub:公钥
第二步:拷贝SSH公钥到git项目中
pbcopy < ~/.ssh/id_rsa.pub
三:设置jenkins的用户密码
修改密码为:000
四:添加jenkins的job
1.创建job。
2.配置git仓库地址
选择Git,
Repository RUL:git的仓库地址
Credentials:账号证书,点击Add,打开了下边的页面
Kind:SSH Username with private key
Private Key:选择Enter directly,并在key里输入 SSH的秘钥,在命令行中输入:
pbcopy < ~/.ssh/id_rsa
点击 Add。
这时候git路径和SSH就配置好了,应该如下图所示
3.
配置上边的内容后,点击 -> 保存 -> 立即构建,这时并不能成功,目的是把工程文件clone到Jenkins的目录下,然后单独运行工程,生成证书而已。
a. 注销现在的用户,切换到Jenkins的用户下(本例中Jenkins密码是:000)。
b. 导入工程需要的 p12、Provision证书。
c. 进入/Users/Shared/Jenkins/Home/workspace 的工程目录下,运行工程,并archive工程,以便生成本工程用的证书。archive生成 hoc包、developer包等。
d. 然后注销Jenkins用户,切换到普通用户。
4. 普通账户用用Safari进入Jenkins后,点击项目->配置,继续下边的配置: 构建触发器、构建环境,不做修改。
5.构建选择Xcode
Configuration:Release、Debug等,查看方法,进入工程文件做在的目录,打开命令行,输入下面命令,即可查看。
xcodebuild -list
6. Pack application, build and sign .ipa?
7. Code signing & OS X keychain options
Development Team ID:团队ID,Keychain找到开发者证书 iPhone Distribution: **** (329***),括号内的就是Team ID
Keychain path:${HOME}/Library/Keychains/login.keychain-db,注意我用的macos是10.12.5,系统把login.keychain修改为了login.keychain-db
Keychain passwrod:注意,是我们在 《三:设置jenkins的用户密码》中设置的用户登录密码,即:000
8. Advanced Xcode build options
Xcode Schema File:是工程的Schema
Xcode Project Directory:工程在Jenkins下的目录,例如:${JENKINS_HOME}/workspace/trunk/TestD
Xcode Project File:工程文件,例如:${JENKINS_HOME}/workspace/trunk/TestD.xcodeproj
Build output directory:${JENKINS_HOME}/jobs/${JOB_NAME}/workspace/build
配置完后,点击保存,然后点击 立即构建 ,就会生成.ipa包了。