Mac Jenkins部署与Unity流水线搭建
发布于 2022-06-15
安装部署
苹果系统
从网站安装的话使用这个包:
- Download the latest package
- 打开包装并按照说明操作
**(推荐)**Jenkins 也可以使用brew以下方式安装:
- 安装最新版本
brew install jenkins
- 安装 LTS 版本
brew install jenkins-lts
运行
- 后台运行
最新版本
brew services restart jenkins
//brew services stop jenkins
//brew services start jenkins
LTS版本
brew services restart jenkins-lts
//brew services stop jenkins-lts
//brew services start jenkins-lts
- 控制台运行,关闭控制台服务则停止
最新版本
/opt/homebrew/opt/openjdk@11/bin/java -Dmail.smtp.starttls.enable=true -jar /opt/homebrew/opt/jenkins/libexec/jenkins.war --httpListenAddress=127.0.0.1 --httpPort=8080
LTS版本
/opt/homebrew/opt/openjdk@11/bin/java -Dmail.smtp.starttls.enable=true -jar /opt/homebrew/opt/jenkins-lts/libexec/jenkins.war --httpListenAddress=127.0.0.1 --httpPort=8080
随后在浏览器输入 127.0.0.1:8080即可
地址和端口号以你的配置为准
中文插件
- 进入Manage Jenkins中,点击Manage Plugins,

-
安装插件 Locale plugin , Localization: Chinese (Simplified) , Localization Support Plugin,如果失败就再安装一次
-
设置中文,如果没有Locale,可能是上一步中插件未安装

找到Locale,填入 zh_cn

如果出现部分翻译,部分没翻译的现象,则删除插件。重启Jenkins(http://域名/jenkins/restart),再次安装插件(第一次安装只有部分翻译了)
如果安装新的插件,重启了服务,又变成部分汉化了
- 将语言设定为zh_US,Jenkins切换为英文。
- 调用restart重启Jenkins:http://域名/jenkins/restart。
- 再次语言设定为zh_CN,刷新即可
Unity流水线搭建
安装Unity插件 Unity3d plugin
在Plugin Manager中搜索并安装unity3d plugin插件

搭建Unity流水线
General
- 新建Freestyle project

- 填写描述信息,点击高级选项

- 在General高级选项中,勾选使用自定义的工作空间,并填入

源码管理
- 勾选Git选项,填写项目git地址,git用户及密码

-
填写需要拉去的分支
如果使用的是gitlab仓库,可在源码库浏览器中选择gitlab,并在URL中填写git地址,Version中填写gitlab仓库的版本
构建触发器
构建任务的触发器,暂时忽略,取消所有勾选,如有特殊需求请自行查阅资料

构建环境
构建环境就是构建之前的一些准备工作,暂时忽略,取消所有勾选,如有特殊需求请自行查阅资料

构建
- 增加构建步骤,选择
Execute shell
,填入构建脚本

android构建脚本
dir=`pwd`
echo "开始构建"
/Applications/Unity/Hub/Editor/2020.3.36f1c1/Unity.app/Contents/MacOS/Unity -quit -batchmode -projectPath ${dir} -executeMethod BuildTool.BuildAPK 1.0.0 -1 RELEASE -logFile -
ios构建脚本
dir=`pwd`
/Applications/Unity/Hub/Editor/2020.3.36f1c1/Unity.app/Contents/MacOS/Unity -quit -batchmode -projectPath ${dir} -executeMethod BuildTool.BuildIPA 1.0.0 -1 RELEASE -logFile -
sh ./archive.sh -t DEBUG
-
复制上传脚本到自定义目录
我这边把上传脚本放在了
/Users/zhangchengxiang/JenkinsWorkSpace/unity_tool_upload
下如果shell脚本没有 执行权限,则需要添加 执行权限
进入终端,cd到脚本目录,输入指令
ls -l
查看权限如果没有
x
权限,则执行chmod +x 文件名
,添加权限 -
增加构建步骤,选择Execute shell,填入上传脚本

android上传脚本
/Users/zhangchengxiang/JenkinsWorkSpace/unity_tool_upload/apk_upload_v3.sh -n "xsldfdl" -m "许胜利的奋斗路" -e RELEASE -c "${SCM_CHANGELOG}" -d "./Build/Android"
ios上传脚本
/Users/zhangchengxiang/JenkinsWorkSpace/unity_tool_upload/ipa_upload_v3.sh -n "hgttemplate" -m "模板" -e RELEASE -c "${SCM_CHANGELOG}" -d "./Build/iOS/output_xcode/Unity-iPhone-IPA"
此处的
/Users/zhangchengxiang/JenkinsWorkSpace/unity_tool_upload/上传脚本.sh
根据情况改变,文件路径是第上一步的路径,上传脚本如果打包的是android就填apk_upload_v3.sh,iOS则填ipa_upload_v3.sh
构建后操作
暂时忽略,如有特殊需求请自行查阅资料
More
上传至阿里云OSS对象存储
下载对应版本的命令行工具
https://help.aliyun.com/document_detail/120075.htm?spm=a2c4g.11186623.0.0.51c12e43aklWQF#concept-303829
macOS系统安装
-
运行以下命令下载ossutil。
curl -o ossutilmac64 https://gosspublic.alicdn.com/ossutil/1.7.13/ossutilmac64
-
运行以下命令修改文件执行权限。
chmod 755 ossutilmac64
-
运行以下命令,生成配置文件。
./ossutilmac64 config
-
根据提示设置配置文件。设置方法与Linux系统生成配置文件的方法相同。
上传指令
cloud_url="oss://zhangxyiang-app-store/AppStore/Apps/"
file_url="xsldfdl.apk"
./ossutilmac64 cp -f ${file_url} ${cloud_url}
mac系统或者linux系统建议把命令行工具软连接到
/usr/local/bin
下全局使用,windows系统也可设置到全局变量中