是否有具体的理由为跨平台应用程序选择一种代理操作系统而不是另一种?我看到经常根据开发人员的操作系统偏好做出选择。我今天早上创建了一个 .net 核心控制台应用程序,并创建了一个管道来针对 Windows 和 ubuntu 托管代理构建它。
stages:
- stage: windows
jobs:
- template: build.yml
parameters:
pool: windows-latest
- stage: ubuntu
jobs:
- template: build.yml
parameters:
pool: ubuntu-latest
我运行了几次管道。Windows 构建时间与 ubuntu 相比要大得多。我能够在 AzDO 中使用开箱即用的分析来获得一些见解:
我在内部分享了这个,另一位开发人员尝试将他们的管道切换到 Ubuntu。他们发现运行时间减少了大约 30%。
本实验后的问题:
由于操作系统架构,是否有一些类型的任务在 Ubuntu 上比在 Windows 上运行得更快,反之亦然?
是否可以对管道进行“评分”以估计运行它的最佳操作系统?
建议在 Windows 上的 Ubuntu 代理上构建跨平台应用程序是否合理?这似乎可以减少构建时间,从而减少开发人员的等待时间并减少托管并行作业的支出。