我想确定如何构建我们的Xamarin iOS项目,同时保持与其他项目构建的工件。我们所有的代码都在一个单一的解决方案中,我们有多个UI项目(WinForms,网站和UWP的Xamarin项目,W8.1/WP8.1和Android)。我们的TeamCity(10)服务器托管在Windows上,它可以构建除了必须在Mac上完成的iOS项目之外的所有内容。Xamarin iOS项目和构建服务器
我将解决方案配置为构建除iOS之外的所有内容,并且我可以设置另一个构建配置,以便使用Mac构建代理为iOS构建构建。两种配置都使用相同的SVN VCS作为触发器。
尽管如此,理想情况下我希望能够将iOS配置中的工件组合到主配置的工件中。
我也确保这两个版本总是从同一个源生成。看起来我可以通过设置快照依赖性来实现这一点,但是,然后iOS配置会在触发前等待主配置完成。理想情况下,两者都会运行并最终结合结果。
我的问题是,我该如何做到这一点?如果编译步骤可以同时发生,并且主构建不会继续进行单元测试/部署步骤(如果任一配置未能通过编译步骤),那将会很棒。如果需要,我打算进一步拆分主构建配置,但TeamCity服务器需要保持在Windows上(因此Mac上的所有内容都不是一种选择)。
如何在MAC上运行Windows VM(Parallels或VmWare)。然后TeamCity可以留在WIndows虚拟机上,你可以很容易地与MAC共享文件 –
@YuriS这不是共享文件,这是我的问题;工件依赖可能会解决这个特定的问题,但我不确定所有的工作是什么使这项工作。 – Andy