iOS持续集成Jenkins + git + cocopods+

2019-07-27  本文已影响0人  nadou23

1.首先推荐用命令行安装jenkins 因为用安装包安装可能会在打包阶段会有权限问题。
如果没有安装brew,请先安装

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

由于jenkins需要java环境,所以需要安装java ,至少java5版本以上

brew cask install java

最后上面都有安装,就可以安装jenkins

brew install jenkins

安装成功后,启动方法有两种:
第一种:

sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist

第一种安装过程中若提示org.jenkins-ci.plist 文件未找到手动创建即可

sudo touch /Library/LaunchDaemons/org.jenkins-ci.plist

再cd到org.jenkins-ci.plist文件进行内容编辑(2.186需要根据你安装的Jenkins版本进行更改)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>Jenkins</string>
<key>ProgramArguments</key>
<array>
<string>/usr/bin/java</string>
<string>-jar</string>
<string>/usr/local/Cellar/jenkins/2.186/libexec/jenkins.war</string>
</array>
<key>OnDemand</key>
<false/>
<key>RunAtLoad</key>
<true/>
<key>UserName</key>
<string>admin</string>
</dict>
</plist>

第二种:

Jenkins

2.运行并使用Jenkins
如果浏览器没有自动打开,可以通过这个
(http://localhost:8080/)打开
如果首次能出现如下网页,就说明你真正安装成功

4248528-b0bd425ae47e43ce.png
输入对应目录下的密码,就可以进入安装插件流程
662374-094874167b638c59.png
如果出现提示:该jenkins实例似乎已离线
1235834-20180723182750635-283997720.png
打开链接(http://localhost:8080/pluginManager/advanced
)打开配置页面,把其中的https改为http,然后提交(submmit),重新打开Jenkins
20181025171101993.png

如果出现一直处于加载状态,请耐心等待,当然也可以多刷新几次页面,安装默认插件过程中,报如果提示缺少cloudbees-folder的,可以前往这里下载其插件cloudbees-folder
然后拷贝到下图位置

58622a922485c.png
如果出现下图,说明插件正在安装
662374-68017ebd29bea476.png
接下来就是漫长的等待,如果中途等不耐烦,刷新页面,可能会提示重新安装,不过不影响安装结果,点重新就可以。
可能安装完了很多插件都没安装成功,如图
662374-8d9318127a6607fe.png
不管它先,点击继续,就进入登陆账号页面,你可以创建账号,也可以点击continue as admin
662374-d05dc4decff1f9a0.png
显示ready页面,就说明jenkins启动成功了。
662374-b084a13d336d98b8.png

3.安装插件
3.1iOS的常用插件基本是:

Xcode integration
Git client plugin
Git plugin
PostBuildScript Plugin

其中postbuildscript是构建后,提交到fir时,需要用到
3.2插件安装方法
jenkins首页—>系统管理—>管理插件—>可选插件—>过滤搜索—>直接安装


662374-489f7fe2b29bd1d0.png 662374-709e4943723a0580.png

这里就可以先把之前没有安装成功的插件再次安装,最好是安装失败的插件安装成功了,再安装ios项目需要的几个插件
4.jenkins项目的配置使用
4.1新建项目:Jenkins首页—>新建
(1)General:根据需要选择
a)项目名称(Enter an itemname;类型:构建一个自由网格的软件项目)
b)项目描述


662374-fb286a86069a12a6.png
屏幕快照 2019-07-27 上午11.43.34.png

4.2.源码管理
这部分主要是从哪获取代码,SVN或者GIT,我的项目用了GIT
情况1:Git(路径、帐号、密码)
情况2:Subversion(路径、帐号、密码)
情况3:None(使用本地项目)


屏幕快照 2019-07-27 上午11.49.47.png
4.3构建触发器:根据需要选择(可不选)
662374-ae542d99321b67fb.png
4.4构建环境
我没做处理
4.5因为是xcode10,只能使用脚本进行,而又由于项目用了cocopods进行第三方管理,所以需要先添加pod update的脚本,再加构建项目编译打包脚本。
屏幕快照 2019-07-27 下午12.07.05.png

这里说下${WORKSPACE}这个环境变量:
代表的是:/Users/用户名/.jenkins/workspace
具体的构建脚本

#bin/bsah - l
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
cd $WORKSPACE/xxxxx
/usr/local/bin/pod update --verbose --no-repo-update
#!/bin/bash -l
SHCEME=xxxxx
CONFIGURATION=Debug
WORKSPACE_PATH=${WORKSPACE}/xxxx.xcworkspace
#PROFILE_NAME=“xxxxx”
#CODE_SIGN="iPhone Developer: xxxxx (xxxxx)"
EXPORT_OPTIONS=${WORKSPACE}/ExportOptions.plist
ArchivePath=${WORKSPACE}/build/xxxxx.xcarchive
PacktName=${WORKSPACE}/build/xxxxx.ipa
#CODE_SIGN_IDENTITY="$CODE_SIGN" PROVISIONING_PROFILE_SPECIFIER="$PROFILE_NAME"
#xcodebuild clean -project xxxxx.xcodeproj -scheme $SHCEME -configuration $CONFIGURATION -alltargets
xcodebuild archive -workspace ${WORKSPACE_PATH} -scheme ${SHCEME} -configuration ${CONFIGURATION} -sdk iphoneos -archivePath ${ArchivePath}
xcodebuild -exportArchive -archivePath ${ArchivePath} -exportPath ${PacktName} -exportOptionsPlist ${EXPORT_OPTIONS}

重点在于ExportOptions.plist是要自己放在指定目录里的,否则就会报错。xxxxx是项目名或者证书名

4.6.构建后操作
上传fir:
有两种方法:
4.6.1可以直接上传fir插件fir-plugin到jenkins插件
然后就构建后操作就多了个upload to fir.im


屏幕快照 2019-07-27 下午12.34.52.png
屏幕快照 2019-07-27 下午12.35.25.png

5.点击保存,然后点击构建就可以了。可以点击下图,查看后台进度,尤其是报错时,可以查看具体报错


屏幕快照 2019-07-27 下午12.39.44.png
上一篇下一篇

猜你喜欢

热点阅读