我已经设置了新的OSX Mavericks Server来通过Bot为我的iOS项目运行测试.虽然构建和运行的测试和一切都通过了,但实际的集成报告为失败.在bot的日志文件末尾出现以下错误数次:
[https]Request{XCBotService.updateBot:({
guid = "c5e4cf65-5a99-5a99-6ac7-e19d4fd9600f";
latestFailedBotRunGUID = "46c2cc1f-2c0d-4613-901a-3285ccf7c4cf";
latestRunStatus = failed;
latestRunSubStatus = "internal-post-timeseries-error";
})}
Run Code Online (Sandbox Code Playgroud)
有谁知道这意味着什么或如何解决它?
我遇到机器人在建造时偶尔会失败的问题.预构建操作用于安装pod,这种方法很有效.但是,当集成失败时,由于此错误:
Installing Pods
Analyzing dependencies
Downloading dependencies
[32mInstalling AFNetworking (1.3.3)[0m
...
2014-03-07 10:40:25.667 xcodebuild[76637:100b] [MT] IDEFileReferenceDebug: [Load] <IDEFileReference, 0x7fa3fe5b0840: group:Pods/Pods.xcodeproj> Failed to load container at path: /Library/Server/Xcode/Data/BotRuns/Cache/5bbd629b-a843-42b0-8b52-256db7560be5/source/Pods/Pods.xcodeproj, Error: Error Domain=Xcode3ProjectErrorDomain Code=2 "Project /Library/Server/Xcode/Data/BotRuns/Cache/5bbd629b-a843-42b0-8b52-256db7560be5/source/Pods/Pods.xcodeproj cannot be opened because it is missing its project.pbxproj file." UserInfo=0x7fa3fe7e54b0 {NSLocalizedDescription=Project /Library/Server/Xcode/Data/BotRuns/Cache/5bbd629b-a843-42b0-8b52-256db7560be5/source/Pods/Pods.xcodeproj cannot be opened because it is missing its project.pbxproj file.}
Generating Pods project
Integrating client project
Run Code Online (Sandbox Code Playgroud)
所以我的猜测是xcodebuld在生成之前尝试读取Pods项目.
这听起来像是一个合理的猜测吗?
有谁知道如何解决它?
EDIT Pre-action构建脚本看起来就像这样
cd $SRCROOT
export LC_ALL="en_US.UTF-8"
if [ -d Pods ]
then
echo "Updating Pods" …Run Code Online (Sandbox Code Playgroud) 我已经能够让我的Xcode机器人成功集成并创建一个.ipa文件.我的Xcode服务器上安装了ssl证书,我可以连接到xcode/bots url.当我通过iPad连接到网址时,我首先会被提示安装证书,但它说它没有以红色验证(请参阅附件)
在设备上安装配置文件后,xcode/bots页面有一个绿色的"安装"按钮.点击"安装"按钮后,它永远不会加载应用程序,几分钟后我收到"无法连接到xx.yy.com"

关于这可能是什么的任何想法?
我正在尝试使用命令行部署方法在Xcode Server上使用Xcode Bot在后期存档步骤中将iOS Beta测试版上传到Crashlytics(Crashlytics.framework / submit)。
问题在于Crashlytics似乎无法正确签名ipa文件。
根据他们的支持,我需要解锁钥匙串。我尝试了以下操作,但错误仍然存在:
security unlock-keychain -p the-password /Library/Keychains/System.keychain/Library/Keychains/System.keychain,并且证书和私钥被导入并存在于该钥匙串中。错误:
2015-02-04 10:43:06.247 submit Crashlytics: Crashlytics.framework/submit 1.3.1 (11)
2015-02-04 10:43:06.981 submit Crashlytics: Unable to find a certificate with a private key: Error Domain=CLSProvisioningProfileErrorDomain Code=-1 "The operation couldn?t be completed. (CLSProvisioningProfileErrorDomain error -1.)" UserInfo=0x10020e250 {Details=iPhone Distribution: ****** (*****), SourcePath=/var/folders/rk/758w2bp12sq1lh5q5mrj598h000087/T/upload/Payload/our.bundle.id/embedded.mobileprovision}
2015-02-04 10:43:07.002 submit Crashlytics: Failed to prepare the binary for release
Error uploading to Crashlytics
Run Code Online (Sandbox Code Playgroud)
也许问题与Xcode Bot以另一个用户身份运行有关_xsomething?
我的集成成功但存档每次都失败,并出现以下警告 - :
**Warning: Build Service Error:** Creating archive failed: xcodebuild exited with status 65.
**Warning: Build Service Error:** Skipping exporting from archive because creating the archive failed.
Run Code Online (Sandbox Code Playgroud) xcode continuous-integration xcode-scheme xcode-bots xcode-server
我正在使用Xcode和GIT来创建自动构建服务.其中一个机器人每5分钟在Release分支上查看并构建它以防有新的提交.最近我开始收到以下错误:
断言:未找到引用'refs/heads/master'(-9)
这个机器人正在发布分支而不是主分支.我该如何解决这个问题?
有没有理由在Xcode 7上使用OCLint而不是Xcode的Analyze工具?
我在网上找到的所有帖子和信息都可以追溯到2013年或更早,但我知道Xcode从那时起就改进了很多工具,就像我们在Xcode 7之前没有代码覆盖一样(只是举个例子).
我被要求在我的项目上执行连续的静态代码分析,我已经设置了Xcode Server和bot来与Analyzer进行连续集成.但现在我想知道我是否也应该做一个后期构建脚本来运行OCLint(或者可能改为?)
我用以下内容启动了预集成触发器
cd "${XCS_PRIMARY_REPO_DIR}"
pwd
pod install --verbose
Run Code Online (Sandbox Code Playgroud)
它给了我
pod: command not found
Run Code Online (Sandbox Code Playgroud)
简单吧?找不到pod二进制文件,我只是将它指向路径.简单.
cd "${XCS_PRIMARY_REPO_DIR}"
pwd
/usr/local/bin/pod install --verbose
Run Code Online (Sandbox Code Playgroud)
这给了我以下几点
env: ruby_executable_hooks: No such file or directory
Run Code Online (Sandbox Code Playgroud)
这让我觉得ruby没有设置为触发器运行的权利.现在了解构建服务器终端中的一个简单的"pod安装"修复了所有这些并运行良好和花花公子.该项目肯定在构建服务器上正确构建.
所以,既然我认为环境搞砸了,我会尝试从包装器目录运行它,这应该设置好又好.这就是为什么它是正确的?每当我需要ruby在构建的运行脚本阶段运行时,这在历史上都有效.所以在这里我们继续触发.
~/.rvm/wrappers/ruby-2.2.3@global/pod install
Run Code Online (Sandbox Code Playgroud)
我在构建服务器的终端测试了这个,它很酷,所以我把它放到触发器中我得到这个
/Users/XcodeServer/.rvm/wrappers/ruby-2.2.3@global/pod: line 7: exec: pod: not found
Run Code Online (Sandbox Code Playgroud)
:/好吧我破解了pod源,看看第7行的内容
exec pod "$@"
Run Code Online (Sandbox Code Playgroud)
我不是一个红宝石人,但对我来说没有任何意义.哦是的,我尝试将cocoapods直接下载到usr/local/bin,而不是让它安装到其他目录中,首先卸载所有cocoapods然后执行以下操作
sudo gem install -n /usr/local/bin cocoapods --pre
Run Code Online (Sandbox Code Playgroud)
我把--pre因为我需要1.1.0.rc.2来修复构建swift 3的bug.任何人,这一切都行不通.似乎其他人都可以简单地说
cd /path/to/proj/
pod install
Run Code Online (Sandbox Code Playgroud)
进入他们的Xcode机器人触发器并让它们工作.
我正在设置一个 Xcode Bot 来自动上传和分发我的测试版应用程序。我已经设置了 macOS 服务器和 Xcode 激活的 mac,并且能够手动构建和导出 IPA。我创建的 Xcode Bot 也可以毫无问题地存档和导出 IPA。
但是,当我尝试在 Xcode Bot 的 post 触发器中运行 Crashlytics 提交脚本时,上传失败。但是如果我保存机器人生成的 IPA 并通过终端手动调用 Crashlytics 脚本,它上传就好了。似乎只有 Xcode Bot 无法提交给 Crashlytics。
我在服务器 Keychain 上安装了所有正确的证书,并且在 Xcode 和使用 Xcode Bot 生成的 IPA 中手动存档/导出一切正常。
这是来自 Xcode Bot 的日志:
2016-11-22 17:15:53.942 submit Crashlytics: Crashlytics.framework/submit 1.3.5 (18)
2016-11-22 17:16:03.125 submit Crashlytics: Unable to package source due to error: Error Domain=CLSIPABuilderErrorDomain Code=-6 "(null)" UserInfo={UnderlyingError=Error Domain=CLSCodeSignerErrorDomain Code=-2 "(null)" UserInfo={arguments=(
"--sign",
ACFE8B8E177196BFF1974841752020FE96687508,
"--all-architectures",
"--force",
"--entitlements",
"/var/folders/81/5t89fdcn3h3680gh99mgvl7934dkfg/T/com.crashlytics.ipas/E357A31C-B1A2-424B-8A5A-E7D499A92C73/Payload/entitlements.xml",
"/var/folders/81/5t89fdcn3h3680gh99mgvl7934dkfg/T/com.crashlytics.ipas/E357A31C-B1A2-424B-8A5A-E7D499A92C73/Payload/Ebates Beta.app"
), …Run Code Online (Sandbox Code Playgroud) continuous-integration ios crashlytics xcode-bots xcode-server
将 XCode 更新到版本 11.4 (11E146) 后,我不再在机器人设置中看到存储库分支。但是我在 Source Controll Navigator 中看到了这些存储库分支。有谁知道我该如何解决?
xcode-bots ×10
xcode ×7
ios ×6
xcode-server ×3
cocoapods ×2
crashlytics ×2
bash ×1
git ×1
objective-c ×1
oclint ×1
osx-server ×1
ruby ×1
ssl ×1
xcode-scheme ×1
xcode5 ×1