1.配置jenkins
jenkins使用安装包来安装,默认被设置成来daemon,跟着计算机启动。使用一个新的用户 jenkins,权限不足。
启动和关闭jenkins:
To manually start the daemon: sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist
To manually stop the daemon: sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
jenkins的log路径,查看各种jenkins异常:/var/log/jenkins/jenkins.log
2.jenkins连接bitbucket
jenkins创建一个普通项目,然后添加git作为代码管理。似乎必须使用ssh来链接bitbucket。
用sourceTree生产key,放在位置在~/.ssh里面,在config里面配置了这个key,但是似乎解析有点问题,要删了只剩下IdentityFile /Users/zhangdunyong/.ssh/xxxx,当然在自己的账户目录下jenkins是访问不到的,加入到全局去/etc/ssh/ssh_config。
IdentityFile /Users/zhangdunyong/.ssh/comedy_zdy-Bitbucket
Jenkins原来提供了一个credentials 其实就是用来存放密钥的。里面提供了一个Passphrase,用来输入之后就可以在源代码管理里面使用了。当然前提需要把公钥.pub文件中的内容写到 bitbucket的access key 里面去。
这样ssh配置完成,而且是只读的。看到jenkins配置git没有报错就OK了。
当然最好加入一个git的action,git 执行前clean跟执行后clean,避免一些七七八八的事情。
3.jenkins 连接unity
添加构建步骤:
Applications/Unity/Unity.app/Contents/MacOS/Unity \
-quit \
-batchmode \
-nographics \
-logFile \
-projectPath $WORKSPACE \
-BranchName $BranchName \
-ChannelName $ChannelName \
-XCodePath ${WORKSPACE}/XCode \
-Version $Version \
-Build $BUILD_NUMBER \
-executeMethod BatchExec.BuildPackage_iOS
其中 比较重要的是 -nographics跟 -logFile
-logFile 把log从Editor.log 修改到了 控制台
-nographics 不加这个 根本跑不起来,不显示界面的东西。
4.jenkins连接xcode
xcodebuild \
clean \
archive \
-project ${WORKSPACE}/XCode/Unity-iPhone.xcodeproj \
-scheme Unity-iPhone \
-archivePath ${WORKSPACE}/XCode/build/x.xcarchive
生成achive文件。
xcodebuild \
-exportArchive \
-exportFormat IPA \
-archivePath ${WORKSPACE}/XCode/build/x.xcarchive \
-exportPath ${WORKSPACE}/XCode/build/x.ipa
打包成ipa包。
这里注意的是需要在钥匙串中把开发者证书从 “登入”拷贝到 “系统” 不然会抱找不到证书之类的错误。这里还需要注意的是 拷贝过程一定要查看是否拷贝成功了,如果证书下面没有东西,就拷贝失败了。获取可以尝试重启电脑。
还有一个就是找不到profile文件。同样是因为profile文件在自己的账户,而不在jenkins账户。
点击xcode-》偏好设置-》账号-》view detail-》随便右键一个profile,打开位置,就把那个文件夹里面的所有的文件拷贝到jenkins的账户的同样目录下。
end