Need advice about which tool to choose?Ask the StackShare community!
Concourse vs TeamCity: What are the differences?
## Key Differences Between Concourse and TeamCity
Concourse and TeamCity are both popular continuous integration and continuous delivery tools used in the software development process. However, there are key differences between the two platforms that can affect the choice of tool for a particular project.
1. **Architecture**: Concourse follows a container-based architecture, where each job runs inside its own isolated container, ensuring that builds are reproducible and consistent. On the other hand, TeamCity uses build agents on traditional servers to execute build jobs, which can lead to potential conflicts or inconsistencies in build environments.
2. **Configuration Management**: Concourse relies on a pipeline declarative configuration format written in YAML, making it easier to define, version control, and maintain build pipelines. TeamCity, on the other hand, uses a web UI for configuring build jobs, which can be less transparent and harder to track changes over time.
3. **Dependency Handling**: Concourse has built-in support for managing job dependencies and ensuring that tasks run only when their dependencies are met. In contrast, TeamCity requires manual setup of build triggers and dependencies, which can be prone to errors and lead to unpredictable build outcomes.
4. **Scalability**: Concourse is designed with scalability in mind, as it can handle a large number of concurrent builds efficiently by distributing workload across multiple containers. TeamCity, while capable of scaling, may require additional configurations and resources to achieve the same level of scalability as Concourse.
5. **Community Support**: Concourse is an open-source project maintained by the community, which ensures a constant stream of updates, improvements, and plugins from the active user base. TeamCity, although feature-rich and robust, relies on JetBrains for updates and support, which may lead to a slower pace of development and lack of community-driven enhancements.
6. **Ecosystem Integration**: Concourse integrates seamlessly with cloud-native tools and technologies, making it an ideal choice for projects utilizing microservices, containers, and Kubernetes. TeamCity, while compatible with various software development tools, may require additional configuration and plugins to achieve the same level of integration with modern cloud technologies.
In Summary, Concourse and TeamCity differ in their architecture, configuration management, dependency handling, scalability, community support, and ecosystem integration, which can influence the choice of CI/CD tool for a particular project.
I'm planning to setup complete CD-CD setup for spark and python application which we are going to deploy in aws lambda and EMR Cluster. Which tool would be best one to choose. Since my company is trying to adopt to concourse i would like to understand what are the lack of capabilities concourse have . Thanks in advance !
I would definetly recommend Concourse to you, as it is one of the most advanced modern methods of making CI/CD while Jenkins is an old monolithic dinosaur. Concourse itself is cloudnative and containerbased which helps you to build simple, high-performance and scalable CI/CD pipelines. In my opinion, the only lack of skills you have with Concourse is your own knowledge of how to build pipelines and automate things. Technincally there is no lack, i would even say you can extend it way more easily. But as a Con it is more easy to interact with Jenkins if you are only used to UIs. Concourse needs someone which is capable of using CLIs.
Pros of Concourse
- Real pipelines16
- Containerised builds10
- Flexible engine9
- Fast6
- Open source4
- No Snowflakes3
- Simple configuration management3
- You have to do everything2
- Fancy Visualization1
Pros of TeamCity
- Easy to configure61
- Reliable and high-quality37
- User friendly32
- On premise32
- Github integration32
- Great UI18
- Smart16
- Free for open source12
- Can run jobs in parallel12
- Crossplatform8
- Chain dependencies5
- Fully-functional out of the box5
- Great support by jetbrains4
- REST API4
- Projects hierarchy4
- 100+ plugins4
- Personal notifications3
- Free for small teams3
- Build templates3
- Per-project permissions3
- Upload build artifacts2
- Smart build failure analysis and tracking2
- Ide plugins2
- GitLab integration2
- Artifact dependencies2
- Official reliable support2
- Build progress messages promoting from running process2
- Repository-stored, full settings dsl with ide support1
- Built-in artifacts repository1
- Powerful build chains / pipelines1
- TeamCity Professional is FREE1
- High-Availability0
- Hosted internally0
Sign up to add or upvote prosMake informed product decisions
Cons of Concourse
- Fail forward instead of rollback pattern2
Cons of TeamCity
- High costs for more than three build agents3
- Proprietary2
- User-friendly2
- User friendly2