Jenkins持续集成之iOS自动打包

序言

mac环境下安装Jenkins最好用命令安装,这样会减少很多不必要的权限问题. jenkins 属于 java 项目 依赖于 java,需要先安装 java jdk,具体安装方式请自行百度。

安装

使用 Homebrew 安装

这里只介绍使用homebrew命令安装方式 其他使用 pgk 安装包安装,使用 war 安装不做介绍也不推荐,Homebrew作为 macOS 下的包管理器使用起来异常的简单快捷方便。
通过下面的代码完成 Homebrew 的安装:

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

完成 Homebrew 安装。

可通过以下命令查看当前 Homebrew 管理的服务:

brew services list

使用 Hombrew 安装 jenkins,执行以下命令:

brew install jenkins

此步,Homebrew 会下载并安装自动完成所有依赖,包括 java。并会创建 ‘jenkins’ 命令。

同时,卸载 jenkins 的方式为:

brew uninstall jenkins

启动 jenkins 服务的方式为:

brew services start jenkins

使用此种方式启用 jenkins 服务支持后台运行,可以关闭终端工具。

也可以使用 jenkins 命令来启用 jenkins 服务。但此种方式不支持后台运行,关闭命令行工具,服务自动关闭。

另,常用命令还有:

重启 jenkins 服务的方式为:

brew services restart jenkins

停止 jenkins 服务的方式为:

brew services stop jenkins

通过此种方式安装,不会在系统中产生垃圾文件和多余的配置文件,所有的文件都是用 Homebrew 来管理,并且方便卸载。

此种方式强烈推荐。

另,也有如下方式操作 Jenkins 服务

http://localhost:8080/exit //停止服务

http://localhost:8080/restart //重启服务

http://localhost:8080/reload // 重新载入服务

配置 jenkins

完成 jenkins 安装以后,在浏览器种打开 localhost ,会进入配置 jenkins 页面。

Jenkins持续集成之iOS自动打包_第1张图片
image.png

按照提示,找到/Users/Shared/Jenkins/Home/ 这个目录下,打开 initialAdminPassword 文件,复制出密码并填入,点击继续,进入安装插件页面。


Jenkins持续集成之iOS自动打包_第2张图片
image.png

建议选择 Install suggested plugins。


Jenkins持续集成之iOS自动打包_第3张图片
image.png

等待插件安装完成后,jenkins 会重启,等待重启完成后,会进入创建用户页面。


Jenkins持续集成之iOS自动打包_第4张图片
image.png

填写用户信息后,保存即可。请务必记住用户名和密码信息,否则重置用户信息非常麻烦

安装插件

登录 http://localhost:8080 ,选择“系统管理”——“管理插件”,在“可选插件”中选中“GitLab Plugin”、“Gitlab Hook Plugin”、“Xcode integration"等常用插件,然后安装。

安装完成插件后,就可以新建项目了!

其他常用插件有:

Email Extension Plugin 该插件用于替换 Jenkins 自带的邮件发送,更加的强大。

Git Plugin 该插件允许使用GIT作为一个构建SCM(源代码控制管理系统)。

Post build task 该插件允许用户依据构建日志的输出执行一个shell/批处理任务。

Ruby Plugin 该插件允许用户在构建脚本中使用 Ruby。

Python Plugin 添加执行 Python 脚本作为Hudson的构建步骤。

Gradle Plugin 该插件允许Hudson调用Gradle构建脚本作为主体构建的步骤。

FTP-Publisher Plugin 该插件能上传项目构件和整个目录到一个FTP服务器。

Extended Choice Parameter plugin 该插件可以扩展参数化构建过程

Extended Choice Parameter Plug-In 该插件可以扩展参数化构建过程

Dynamic Extended Choice Parameter Plug-In 该插件可以扩展参数化构建过程

git parameter Plug-in 该插件可以扩展参数化构建过程

fir-plugin 该插件是 http://fir.im 分发平台提供的 jenkins 插件,用于上传安装包到 http://fir.im 平台

新建项目

点击新建,在新建项目页面输入项目名称,选择“构建一个自由风格的软件项目”,然后进入配置页面


Jenkins持续集成之iOS自动打包_第5张图片
image.png
Jenkins持续集成之iOS自动打包_第6张图片
image.png

在源码管理中 选择 Git ,填写仓库地址


Jenkins持续集成之iOS自动打包_第7张图片
image.png

如出现红色警告,说明 Jenkins 访问不了 Git 仓库,一般是因为没有权限导致。点击 Credentials 项的 Add ,在打开的 Jenkins Credentails Provider:Jenkins 页面,在 Username 和 Password 输入 Git 仓库的用户名和密码,完成添加。不必担心用户信息外泄,Jenkins 服务和所有配置都保存在本地。

还可以通过配置 Git SSH 的方式赋予 Jenkins 访问 Git 仓库的权限,按此方法较为麻烦,具体步骤略。

在 Branches to build 中设置 Branch Specifier 要构建的分支,默认为 master。

脚本构建
Jenkins持续集成之iOS自动打包_第8张图片
image.png

xcodeBuild打包脚本

xcodebuild archive -workspace $project_name.xcworkspace -scheme $project_name -configuration Release -archivePath archive/$project_name.xcarchive CODE_SIGN_IDENTITY="iPhone Developer: Zhengyang Wu (JYGL73395F)" PROVISIONING_PROFILE_SPECIFIER="development_patient_kevin"echo "
第五步,执行编译生成.ipa命令"
xcodebuild -exportArchive -exportOptionsPlist archieveOpt.plist -archivePath archive/$project_name.xcarchive -exportPath ./ -configuration Release

Jenkins持续集成之iOS自动打包_第9张图片
image.png

fir.im Token是必填的,查看方法:请登录 fir.im后,点击头像选择 API token进行查看

这样就可以自动触发打包了
如果忘记账户密码 可以彻底删除重新安装如果brewinstall 安装的,彻底删除需在终端依次执行以下命令:

sudo rm -rf /Users/Shared/Jenkins
sudo dscl . -delete /Users/jenkins
sudo dscl . -delete /Groups/jenkins
sudo rm -f /etc/newsyslog.d/jenkins.conf
pkgutil --pkgs | grep 'org\.jenkins-ci\.' | xargs -n 1 sudo pkgutil —forget

如果安装包 安装的 可以彻底删除重新安装,彻底删除需在终端依次执行以下命令:
/Library/Application Support/Jenkins/Uninstall.command

结束

参考 https://zhuanlan.zhihu.com/p/33727806
https://www.jianshu.com/p/5eda1a35246b

你可能感兴趣的:(Jenkins持续集成之iOS自动打包)