Mac中jenkins的使用
jenkins 是一个开源项目,提供了一种易于使用的持续集成系统,使开发者从繁杂的集成中解脱出来,专注于更为重要的业务逻辑实现上。同时 jenkins 能实施监控集成中存在的错误,提供详细的日志文件和提醒功能,还能用图表的形式形象地展示项目构建的趋势和稳定性。
一、jenkins工具的安装、卸载、启用
注意:安装jenkins必须先安装Java sdk,同时安装好brew工具
1、安装、卸载
(1)安装
在终端使用命令进行安装
// 方法1 终端命令安装
brew install jenkins
下载dmg格式文件进行安装
安装好的目录位置,如下图所示:
(2)卸载
brew uninstall jenkins
2、启用
// 终端命令启动(仅对终端命令安装有效)
jenkins
// 或者设置成开机自动启动
ln -sfv /usr/local/opt/jenkins/*.plist ~/Library/LaunchAgents
3、登录
使用本机作为服务地址:http://localhost:8080
4、设置(首次使用时需要进行设置)
设置项目:unlock Jenkins(administrator password)—>Customize Jenkins(install suggested plugins)—>Create First Admin User(用户名、密码、确认密码、全名、电子邮件地址)—>Jenkins is ready
注意:Administrator password的设置区分是脚本安装,还是dmg文件安装。如果是脚本安装的话,可以从终端直接查阅password;如果是dmg文件安装的话,必须从文件查看(安装目录—>secrets—>鼠标右击—>显示属性—>共享与权限—>修改成读与写—>initialAdminPassword—>鼠标右击—>显示属性—>共享与权限—>修改成读与写—>双击打开initialAdminPassword)
(1)脚本安装jenkins时的password查看
(2)dmg文件安装jenkins时的password查看
二、jenkins的插件
- 常用插件
- Git plugin
- git client plugin
- Subversion Plug-in
- Subversion Release Manager plugin
- Subversion Tagging Plugin
- SVN Publisher plugin
- SSH Credentials Plugin
- Gradle plugin: Android专用
- Xcode integration:iOS专用
-
插件安装方法
jenkins首页—>系统管理—>管理插件—>可选插件—>过滤搜索—>直接安装
三、jenkins项目的配置使用
1、新建项目:Jenkins首页—>新建
(1)General:根据需要选择
a)项目名称(Enter an itemname;类型:构建一个自由网格的软件项目)
b)项目描述
c)丢弃旧的构建
(2)源码管理:根据需要设置
情况1:Git(路径、帐号、密码)
情况2:Subversion(路径、帐号、密码)
情况3:None(使用本地项目)
(3)构建触发器:根据需要选择(可不选)
(4)构建环境:根据需要选择(可不选)
5)构建:根据需要设置
情况1:脚本Excute shell
根据实际情况配置参数,如果源码管理选择的是None,则使用svn下载最新源码脚本,否则屏蔽掉不使用。
#<------------------------------------------------------->
# 删除旧源码目录->新建源码目录->从svn导出最新代码->清理旧文件->清除旧项目->打包->上传
pwd
# 名称配置
checkout_name="checkout"
project_name="zsyDemo"
# 配置项目版本
#targetProject_sdk="iphoneos8.0"
targetProject_destination="generic/platform=iOS"
configuration="Release"
scheme="$project_name"
workspace_name="${project_name}.xcworkspace"
# 目录配置
save_path="/Users/zhangshaoyu/Desktop/uploadIPA"
archive_path="$save_path/${project_name}.xcarchive"
ipa_path="$save_path/${project_name}.ipa"
log_path="$save_path/log.txt"
# svn配置
svn_path="http://192.168.11.11:8011/svn/zsyDemo/trunk/iOS/zsyDemo"
checkout_path="$save_path/$checkout_name"
svn_name="zhangshaoyu"
svn_password="123456"
# 配置签名证书、描述文件
codeSignIdentity="iPhoneDeveloper: shaoyu zhang (5AB779CDEF)"
provision_UUID="06a7492b-083c-4313-d633-15ef685929g4"
provisoning_profile="zsyDemoDevelopProfile"
# 配置蒲公英
upload_path="$save_path/${project_name}.ipa"
pgy_userKey="a512b58c56285d23456e011fgh706509"
pgy_apiKey="ab9c240d2efg9hi17j9642k3l5mnop5q"
echo "正在删除旧源码"
# 删除旧源码目录
rm -rf "$checkout_path" >> $log_path
echo "正在创建新的源码目录"
# 新建源码目录
cd "$save_path" >> $log_path
pwd
mkdir "$checkout_name" >> $log_path
echo "正在从svn下载最新的源码"
# 从svn导出最新代码
svn checkout "$svn_path" "$checkout_path" --username "$svn_name" --password "$svn_password" >> $log_path
echo "正在删除旧文件"
# 删除旧文件
rm -rf "$log_path" >> $log_path
rm -rf "$archive_path" >> $log_path
rm -rf "$ipa_path" >> $log_path
echo "正在清除构建项目缓存"
# 重要,执行xcodebuild命令时,必须进入项目目录
cd "$checkout_path" >> $log_path
pwd
# 清理构建目录
xcodebuild clean -configuration "$configuration" -alltargets >> $log_path
echo "正在打包"
# 归档(其他参数不指定的话,默认用的是.xcworkspace或.xcodeproj文件里的配置)
xcodebuild archive -workspace "$workspace_name" -scheme "$scheme" -destination "$targetProject_destination" -configuration "$configuration" -archivePath "$archive_path" CODE_SIGN_IDENTITY="$codeSignIdentity" PROVISIONING_PROFILE="$provision_UUID" >> $log_path
echo "正在导出ipa包"
# 导出IPA
xcodebuild -exportArchive -exportFormat IPA -archivePath "$archive_path" -exportPath "$ipa_path" -exportProvisioningProfile "$provisoning_profile" >> $log_path
echo "正在上传ipa到蒲公英"
# 上传IPA到蒲公英
curl -F "file=@$upload_path" -F "uKey=$pgy_userKey" -F "_api_key=$pgy_apiKey" https://www.pgyer.com/apiv1/app/upload
#<------------------------------------------------------->
情况2:Xcode
(6)构建后操作:根据需要设置(可不设置)
2、配置项目
与新建时相同的操作,即General、源码管理、构建触发器、构建环境、构建、构建后操作。
3、删除项目
Jenkins首页—>点击项目—>删除Project
四、jenkins使用注意事项
1、安装java sdk
2、安装brew
3、项目构建
(1)使用同步svn代码时,执行脚本中的路径指向jenkins相关目录
(2)未使用同步svn代码时,执行脚本中的路径指向自定义项目目录;同时也可以自定义脚本去下载svn代码
(3)构建成功的ipa包可通过执行脚本上传到内测平台,如蒲公英平台
4、查看证书描述文件信息、项目信息
(1)证书名称:Launchpad->其他->钥匙串访问->选择证书->鼠标右击->显示简介->细节->常用名称->复制
(2)描述文件UUID:打开Xcode->菜单栏->Preferences->Accounts->Apple IDs->帐号->showDetails->Provisioning Profiles->选择项目中使用的描述文件->
鼠标右击->show in Finder
(3)描述文件名称:直接查看描述文件名称
(4)target name、scheme:打开终端—>通过cd 命令进入项目目录—>通过命令”xcodebuild -list”查看