Self-Hosted-Build-Agents are Bad
22 Aug 2018 by Chris Hudson
Self hosted build Agents for VSTS builds
Some of the reasons/Advantages to self hosting your build agent.
- You want to speed up your builds
- cache nuget/npm packages on the server
- You have specific frameworks, that you build (.Net Framework 3.5)
- You have utilities you want persisted
Problems with this:
- Requires a vm most likely Microsoft Windows Server
- Maintenance that means patch Tuesdays
- patches
- scans
- responding to monitors/alerts
- checking security center
- Install and maintain antivirus/antimalware
- Disk encryption - slows things down as well
- Clear nuget cache to remove stale and de-listed packages
- Should be done each build which negates alot of the time savaings
- Clear workspaces
- clear all build directories starting with clean environment on each build.
Costs: $130/month + 15/Pipeline
- 80/month Standard DS12 (4 vcpus, 28 GB memory) + 1 TB disk
-
50/month 1 hour sysadmin work @ 50/hr -
- 15/month/pipeline
Microsoft-Hosted
- By default you are limited to 240 minutes of build/month
- if you pay for additional hosted agents this limitation goes away
- Running on hosted environment, it is slower
- Fixed environments - latest RTM .Net frameworks, powershell environment
- if you want your own build utilities you need to package them and download them to the agent
- Example you have your own powershell scripts to customize the build tasks and they are stored in a Git repository, you have to create a powershell task to download them separately
Costs: $40/month/Pipeline