小编The*_*den的帖子

Xcode 7 + Bots + Fastlane:如何使用Fastlane的Deliver自动将应用程序部署到itunes connect

问题:如何使用Deliver从运行在Xcode 7和Server 4.1上的Bot上传IPA到itunesconnect?

我已经能够在Xcode 6.4,Server 4.1中使用机器人和Deliver(通过fastlane)建立持续集成解决方案.一旦我升级到Xcode 7 beta-3,我的机器人就停止了工作.

以下是我为Xcode 6.4所做的简要概述:

  1. 在Bot设置中选择"执行存档操作"
  2. 从post trigger:echo gem install --user-install deliver#Run To Gem
  3. 从post trigger:echo export PATH=$PATH:/var/_xcsbuildd/.gem/ruby/2.0.0/bin#Run将Gems添加到Path
  4. 从后触发:

    echo `DELIVER_PASSWORD="Password"
    /var/_xcsbuildd/.gem/ruby/2.0.0/bin/deliver testflight 
    "${IPA_PATH}" -a 101233338 -u example@gmail.com --beta`
    
    Run Code Online (Sandbox Code Playgroud)

一切都运行良好,每次集成后都会将构建内容上传到itunesconnect.

当我升级到Xcode 7时,我无法再使用Deliver上传到itunesconnect.这是我的Xcode 7工作流程:

  1. 测试通过
  2. 档案成功
  3. 发布触发器1:成功构建IPA(使用此Apple开发人员帖子的推荐)

     xcrun xcodebuild -exportArchive -archivePath 
     $XCS_ARCHIVE -exportPath $XCS_ARCHIVE
     -exportOptionsPlist /Library/Developer/XcodeServer/ExportOptions.plist 
     -IDEPostProgressNotifications=YES 
     -DVTAllowServerCertificates=YES 
     -DVTSigningCertificateSourceLogLevel=3 
     -DVTSigningCertificateManagerLogLevel=3 
     -DTDKProvisioningProfileExtraSearchPaths=/Library/Developer/XcodeServer/ProvisioningProfiles
    
    Run Code Online (Sandbox Code Playgroud)
  4. 尝试使用Deliver上传IPA:

    echo `DELIVER_PASSWORD="Password"
    /var/_xcsbuildd/.gem/ruby/2.0.0/bin/deliver testflight 
    "${IPA_PATH}" -a 101233338 -u example@gmail.com --beta`
    
    Run Code Online (Sandbox Code Playgroud)

结果: 构建服务问题:终止xcodebuild,因为它没有产生太长时间的输出. 在此输入图像描述 注意:我可以使用机器人生成的IPA并通过终端上传它们.

更新

Xcode没有打印出所有日志,当我将输出重定向到文件时,看起来Deliver运行得很好

ESC[37m[12:03:08]: ESC[0mESC[32mReady to …
Run Code Online (Sandbox Code Playgroud)

xcode continuous-integration bots xcode-server xcode7

14
推荐指数
1
解决办法
3749
查看次数