在 Azure DevOps 或 Team City 中,什么是构建代理?
In Azure DevOps or Team City what is a build agent?
我刚接触 CD/CI 领域,我需要在我公司的一个旧项目中实现它。据我了解,我们有几个选项,例如 Azure DevOps 或 Team City,我选择这两个选项是因为我们的大部分项目都是使用 Microsoft 技术构建的。
我已经阅读了一段时间,但我无法理解 Build Agent 的正确定义;另外,我发现了这个老问题,但答案是不清楚:
In Team foundation server what is build agent and controller?
此外,我阅读了不同的文档:
它们的定义如下:
An agent is installable software that runs one job at a time.
Microsoft
A TeamCity Build Agent is a piece of software that listens for the
commands from the TeamCity server and starts the actual build
processes. JetBrains
但是,我无法准确理解他们的作用或目的,他们是否构建了 Test、UAT和Production流水线并行,看看编译成功了吗?喜欢这里:
或者他们是做什么的?由于解决方案中有多个项目,可能有 8 个或 10 个。
你可以参考我在下面评论中给出的例子:
Let's suppose you create a project in Azure DevOps for your new CRM
for a Dentist with a Debug, UAT, and Release environments plus a team
of 5 devs. What would represent these agents?
感谢任何解释。
它类似于具有不同技能的人 "agent"。将构建代理视为具有执行构建的特定功能的计算机进程。
一些代理可以执行某些工作(例如构建 Apple 特定程序),而其他代理则更通用。有时一台计算机可以有多个可以并行工作的代理,有时计算机只有一个分配给它们的代理。
编辑 - 添加了以下内容以解决其他问题:
代理可以是 "local",这意味着它们位于构建软件(例如 Azure Pipelines、Bamboo、Team City)所在的服务器上。它们也可以是 "remote" 或在不同的计算机上。可能需要远程代理来构建 Apple 特定软件,因为该软件通常需要 Mac 才能编译。
用不同的技能类比扩展人类"agent",代理可以被分配工作。因此,可能会在您的管道中分配一个代理来构建软件,而另一个代理则忙于处理对不同环境的部署。由于每个 "agent" 一次只能做一个工作,更多代理可以通过允许并行工作来加速构建管道。
在 Azure Devops 中,有一个称为管道的左侧导航,您需要在其中创建构建管道(具有某些任务),这实际上需要代理来执行任务。
一般来说,build agent/agent 是一台具有必要功能的托管机器(在 Azure devops 的情况下)用于 运行 根据构建管道设置的预定义任务以构建源代码和使其可用于部署
我刚接触 CD/CI 领域,我需要在我公司的一个旧项目中实现它。据我了解,我们有几个选项,例如 Azure DevOps 或 Team City,我选择这两个选项是因为我们的大部分项目都是使用 Microsoft 技术构建的。
我已经阅读了一段时间,但我无法理解 Build Agent 的正确定义;另外,我发现了这个老问题,但答案是不清楚:
In Team foundation server what is build agent and controller?
此外,我阅读了不同的文档:
它们的定义如下:
An agent is installable software that runs one job at a time. Microsoft
A TeamCity Build Agent is a piece of software that listens for the commands from the TeamCity server and starts the actual build processes. JetBrains
但是,我无法准确理解他们的作用或目的,他们是否构建了 Test、UAT和Production流水线并行,看看编译成功了吗?喜欢这里:
或者他们是做什么的?由于解决方案中有多个项目,可能有 8 个或 10 个。
你可以参考我在下面评论中给出的例子:
Let's suppose you create a project in Azure DevOps for your new CRM for a Dentist with a Debug, UAT, and Release environments plus a team of 5 devs. What would represent these agents?
感谢任何解释。
它类似于具有不同技能的人 "agent"。将构建代理视为具有执行构建的特定功能的计算机进程。
一些代理可以执行某些工作(例如构建 Apple 特定程序),而其他代理则更通用。有时一台计算机可以有多个可以并行工作的代理,有时计算机只有一个分配给它们的代理。
编辑 - 添加了以下内容以解决其他问题: 代理可以是 "local",这意味着它们位于构建软件(例如 Azure Pipelines、Bamboo、Team City)所在的服务器上。它们也可以是 "remote" 或在不同的计算机上。可能需要远程代理来构建 Apple 特定软件,因为该软件通常需要 Mac 才能编译。
用不同的技能类比扩展人类"agent",代理可以被分配工作。因此,可能会在您的管道中分配一个代理来构建软件,而另一个代理则忙于处理对不同环境的部署。由于每个 "agent" 一次只能做一个工作,更多代理可以通过允许并行工作来加速构建管道。
在 Azure Devops 中,有一个称为管道的左侧导航,您需要在其中创建构建管道(具有某些任务),这实际上需要代理来执行任务。
一般来说,build agent/agent 是一台具有必要功能的托管机器(在 Azure devops 的情况下)用于 运行 根据构建管道设置的预定义任务以构建源代码和使其可用于部署