我希望将 Xamarin iOS 应用程序的 CI 构建直接自动化到 App Store。VSTS 还没有任何工具。我尝试使用 fastlane.tools,但它不支持 Xamarin。我可以在 VSTS 中添加任何更好的步骤来自动将 Xamarin iOS 应用程序发布到应用程序商店。
谢谢。
我希望将 Xamarin iOS 应用程序的 CI 构建直接自动化到 App Store。VSTS 还没有任何工具。我尝试使用 fastlane.tools,但它不支持 Xamarin。我可以在 VSTS 中添加任何更好的步骤来自动将 Xamarin iOS 应用程序发布到应用程序商店。
谢谢。
为此,我使用了fastlane 工具、cake build和cake.xamarin。蛋糕被用来代替健身房。Cake 允许您在没有 fastlane 的任何一个平台上构建,因为提供了 bash 和 powershell 脚本。 更多蛋糕 Xamarin 信息。
要构建 Android,请查看AndroidPackage。它将构建发布并创建、签名和压缩 apk。
要构建 iOS,请查看DotNetBuild。 Platform
, Target
, BuildIpa
, CodesignKey
, 和CodesignProvision
可以使用settings.WithProperty("arg","value")
.
一旦蛋糕构建脚本开始工作,它们就可以在车道而不是健身房中使用:sh ".././build.sh -s \"../build.cake\" -t \"iOS\""
我不确定您的 vsts 设置,但我使用vsts-agent设置了 MAC 构建服务器,然后能够将命令行步骤添加到构建定义并调用适当的 fastlane 通道。所以从定义或命令行构建是一样的。然后可以根据需要将其他内容添加到构建定义中,例如松弛集成等。
最初,我让构建工作没有 fastlane 或单独使用 vsts 的蛋糕,但更喜欢能够从命令行构建,然后从构建步骤调用它。
更新:
- 将 fastlane 与 VSTS 和 Xamarin.iOS 一起使用?
Fastlane 工具是用 ruby 编写的,用于自动化操作,例如调用 xcode 来构建或 google play API 来部署。Fastlane 没有专门针对 msbuild 的操作,因此我为此使用了 cake build,因为 cake 中的调用根据平台调用 msbuild 或 xbuild。
- 当你说你的构建工作没有快速通道或蛋糕时,你是否也让它用于发布管理?
如果您访问 visualstudio.com 并创建构建定义,则可以选择 Xamarin Android 或 iOS 模板,然后填写空白。这些步骤调用 nuget、构建、签名等。 cake build 正在做同样的事情。
对于发布管理,可以在构建发生后使用和添加spaceship、Pilot或supply,或者您可以有一个单独的“通道”来调用它们并从 vsts 调用它。
让构建工作更容易,然后从命令行玩宇宙飞船、飞行员或补给。然后你可以为它们调整不同的配置文件,让它们按照你喜欢的方式工作,然后将它们添加到通道中。
看看 Bitrise.io。一个月前我在这里写了一篇关于它的博客,我强烈推荐它。