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-keygen -t rsa -C "your_email@example.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):

询问是否要输入保存的路径,直接按回车。


接下来要输入两次密码。密码为:123456


这时候会生成两个文件: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包了。



Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐