AWS CodeBuild is a fully managed continuous integration service that compiles source code, runs tests, and produces software packages that are ready to deploy.
$0.01
Per Minute
TeamCity
Score 7.4 out of 10
N/A
TeamCity is a continuous integration server from Czeck company JetBrains.
It is really good for building projects in the cloud. If you try to do build the project first locally and then push that stack to the cloud it could take a lot of time. In this way, it also consumes a lot of resources in the computer and in the network.
TeamCity is well suited for an organization using continuous integration, meaning you release code to production often, and an agile project management system. There are free versions available for small teams and enterprise versions available for large teams with many different builds. TeamCity is probably overkill for basic e-commerce or blog website builds that do not require much development after the initial launch
Fully customizable build process. Each step of the build process can be parameterized and customized to address specific needs of particular applications. This allowed us to easily convert from a custom VM-based environment to our current Docker-based environment.
Manages large numbers of build agents seamlessly. This allows us to run multiple builds on many different applications in a most efficient manner.
Build steps can be managed in an arbitrary manner, allowing some parts of the process to proceed in parallel while restricting others to depend on completion of all relevant steps.
It was difficult to create a branching strategy with GitHub. We had everything running from main, but in a true devops environment, we would like to incorporate a true branching strategy.
I would like to share build projects with each AWS account we utilize versus creating a build project in each account. It will allow us consistent deployments across the board.
The error logs are natively in AWS, but when developers do not have access, there is no way for them to view error logs for maintenance other than an admin who has access to share the error logs.
It is a highly usable, well integrated CI/CD service, patricularly for AWS-centric organizations. It is a strong balance between simplicity and flexibility. Security was integrated with AWS Secrets Manager allowing secrets to be retrieved dynamically - a huge usability win for us. I did not enjoy the manual build for each environment
TeamCity runs really well, even when sharing a small instance with other applications. The user interface adequately conveys important information without being overly bloated, and it is snappy. There isn't any significant overhead to build agents or unit test runners that we have measured.
I've used GitHub Actions compared to AWS CodeBuild - I enjoyed the integration with AWS from a codebuild perspective, but GitHub Actions and Workflows allowed us to create a reusable pipeline which is more in line with our devops structure. I enjoy AWS CodeBuild, but from a true continuous deployment, GitHub Actions was more fit.
Jenkins relies on being open source as the primary driver for its success. This low cost is a huge factor for many companies, both small and large. The professional, free tier of TeamCity offers a huge amount of growth before ever needing to pay anything. I personally also find the user experience of TeamCity to be much better, both from a look and feel, as well as from an out-of-the-box feature set perspective. The big selling feature of ADO is its native integration with Azure. TeamCity integrates very well with out-of-the-box .NET support and greatly simplifies our use of another diverse tooling outside of the Microsoft ecosystem.
AWS CodeBuild was introduces as a core enabler for automating database deployments and enforcing a standardization across six environments. The standardization and quality control was well received.
Security was baked in reducing audit findings.
Deployments took minutes to update all environments compared to hours. It helped us a lot to reduce drift and deploy consistently.
TeamCity was a key contributor to our organization's adoption of Agile.
TeamCity made it possible to KILL "It works on my laptop" conversations with Developers. If it does not compile in TeamCity - the project is not deployable. TeamCity's easy to use interface made it possible to quickly adopt a "Deploy Only from TeamCity" policy, further ensuring TeamCity Builds were the gold-standard for well-configured source code.