I'm fresh in the area of CD/CI and I need to implement it in an old project from my company. From what I have read we have a couple of options like Azure DevOps or Team City, I chose these two options because most of our projects are built in Microsoft technologies.
I have been reading for a while, but I cannot grasp the proper definition of a Build Agent; also, I found this old question, but the answer is unclear:
In Team foundation server what is build agent and controller?
Further, I read different documentation:
And their definitions are the following ones:
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
However, I cannot understand exactly their role or purpose, do they build the Test, UAT and Production pipelines in parallel to see if the compilations were successful? Like here:
Or what do they do? Since the solution has multiple projects inside maybe 8 or 10.
You can take the example that I gave in the comments below:
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?
Thanks for any explanation.