美文网首页jenkins for App
unity 全平台全自动打包

unity 全平台全自动打包

作者: 诸子百家谁的天下 | 来源:发表于2020-04-21 22:27 被阅读0次

目的及意义

1 :打包自动化介绍
意义:快速便捷交付产品给测试,运营,发布商.
输出的产品类型为: iOS .ipa;Android .apk;Window .exe;Mac .dmg
打包自动化:程序作为维护人员,而不作为手动出包人员,节省人力,交互以及时间成本.
2 :自动化
程序通过 Jenkins布置打包自动化流程,维护打包机,web 服务器等,只需要在 Jenkins 上面选择参数,点击构建,等待 10 分钟,即可得出最后结果.
3 :构建打包自动化学习条件
目前在 windows 上面打包 iOS 产品异常麻烦,选择 mac 构建 Android 以及 iOS 产品比较节省学习成本.(windows 和 Mac 都可以构建完成)
1:windows 操作系统,windows 命令以及windows bat 文件编写,windows搭建 web 服务.
2:mac操作系统,mac 命令以及mac shell 脚本编写,mac 搭建 web 服务
3:Jenkins 基础,需要知道执行流程以及效果.
4:unity 手动打包,unity 代码打包,unity 提供的打包命令
6:Android Studio 打包,Xcode 打包 以及打包命令
7:Python 基础,需要知道Python 类方法与其他脚本交互的程度.
以上为参考资料
4 :流程
需求人员进入一个 Jenkins 的 web 网页上面,进行参数选择


image.png image.png

然后点击 build 进行等待
打包完成之后,会输出 log


image.png

此时将打出的包放在服务器上面,然后传一个 URL 到群里面,大家即可下载,完成了整个流程.

Unity 代码配置篇:

image.png image.png
image.png
image.png
image.png
image.png
image.png
image.png

编写脚本,点击直接打包.
学习知识<u>https://docs.unity3d.com/Manual/CommandLineArguments.html</u>
官网命令.
使用 shell 脚本打包,window 下使用 bat 脚本打包,这个东西最好统一使用 shell 脚本打包.
我们可以直接点击这个脚本打包,windows 上面安装 git 也可以执行 shell 脚本.
路径在BuildAnyPlatform/BuildShell

image.png

Jenkins 配置篇:

注意:不要使用 pkg 安装,不要使用 pkg 安装,不要使用 pkg 安装
安装 Jenkins 之前记得一定要安装 Java jdk 比较新的版本 1.8 即可

homebrew安装jenkins
终端执行

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”
brew install jenkins
java -jar /usr/local/Cellar/jenkins/版本号/libexec/jenkins.war --httpPort=8080

自行查找路径

或者直接从


image.png

下载
然后放进


image.png

然后执行

java -jar /usr/local/Cellar/jenkins/版本号/libexec/jenkins.war --httpPort=8080

则上面的从终端下载就不需要了.

执行完毕之后,不要直接在 web上打开Jenkins,还没配置好,不要直接在 web上打开Jenkins,还没配置好,不要直接在 web上打开Jenkins,还没配置好
进入

/Library/LaunchDaemons 

文件夹
新建

org.jenkins-ci.plist

文件

然后填写

<?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>StandardOutPath</key>
    <string>/var/log/jenkins/jenkins.log</string>
    <key>StandardErrorPath</key>
    <string>/var/log/jenkins/jenkins.log</string>
    <key>EnvironmentVariables</key>
    <dict>
      <key>JENKINS_HOME</key>
      <string>/Users/xxx/Documents/Jenkins/Home</string>
    </dict>
    <key>GroupName</key>
    <string>daemon</string>
    <key>KeepAlive</key>
    <true/>
    <key>Label</key>
    <string>org.jenkins-ci</string>
    <key>ProgramArguments</key>
    <array>
      <string>/bin/bash</string>
      <string>/Library/Application Support/Jenkins/jenkins-runner.sh</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>UserName</key>
    <string>jenkins</string>
    <key>SessionCreate</key>
    <true/>
  </dict>
</plist>

执行

sudo chown root:wheel /Library/LaunchDaemons/org.jenkins-ci.plist

伪启动 Jenkins

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

启动 Jenkins

java -jar /Applications/Jenkins/jenkins.war

这样就可以启动 Jenkins 了
然后再打开 web


image.png

根据自己弹出的界面上的路径去找


image.png
sudo cat /Users/Shared/Jenkins/Home/secrets/initialAdminPassword
image.png
这个地方可以直接跳过
image.png
需要创建管理员,不然你每次只能使用 admin 然后加上刚才输入的密码登录
image.png
进入了 Jenkins
<u>https://blog.csdn.net/cbuy888/article/details/89873892</u> 中文设置
image.png

然后配置


image.png

这样是可以执行的,如果脚本里面调不出来子进程,一定要重新按照我的方案重装 Jenkins.
直接点击


image.png

即可打包成功.
这个只是简单的大包成功,之后的第三方是需要平台操作的,然后平台会接手,使用 Python 以及 shell 脚本进行执行 Android 工程以及 Xcode 工程.

相关文章

网友评论

    本文标题:unity 全平台全自动打包

    本文链接:https://www.haomeiwen.com/subject/hugrvhtx.html