Appveyor vs TeamCity: What are the differences?
Developers describe Appveyor as "Continuous Integration and Deployment service for busy Windows developers". AppVeyor aims to give powerful Continuous Integration and Deployment tools to every .NET developer without the hassle of setting up and maintaining their own build server. On the other hand, TeamCity is detailed as "TeamCity is an ultimate Continuous Integration tool for professionals". TeamCity is a user-friendly continuous integration (CI) server for professional developers, build engineers, and DevOps. It is trivial to setup and absolutely free for small teams and open source projects.
Appveyor and TeamCity can be categorized as "Continuous Integration" tools.
Some of the features offered by Appveyor are:
- Scriptless, repetitive, one-click deployment of build artifacts to multiple environments
- YAML configuration
- Backed by Windows Azure platform
On the other hand, TeamCity provides the following key features:
- Automate code analyzing, compiling, and testing processes, with having instant feedback on build progress, problems, and test failures, all in a simple, intuitive web-interface
- Simplified setup: create projects from just a VCS repository URL
- Run multiple builds and tests under different configurations and platforms simultaneously
"Github integration" is the top reason why over 18 developers like Appveyor, while over 52 developers mention "Easy to configure" as the leading cause for choosing TeamCity.
ebay, Intuit, and Apple are some of the popular companies that use TeamCity, whereas Appveyor is used by Exceptionless, Oconics, and Snipcart. TeamCity has a broader approval, being mentioned in 168 company stacks & 51 developers stacks; compared to Appveyor, which is listed in 19 company stacks and 16 developer stacks.
What is Appveyor?
What is TeamCity?
Need advice about which tool to choose?Ask the StackShare community!
Sign up to add, upvote and see more prosMake informed product decisions
What are the cons of using Appveyor?
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
Appveyor, is awesome, it provides a lot of functionalities and a reduced price. If you want .NET CI, appveyor is the best option. Ever. Awesome support, easy configuration, private nuget repo included, many integrations, and useful documentation. The only downside is, sometime it's a little bit slow.
TeamCity is our main continuous integration server. It starts creating builds and running tests based on commits that we make in our hosted bitbucket repositories. From there, we have a set of configuraitons that can deploy the built and tested artifacts (web app, batches, db, etc...) to a stage or production server. We still release manually, but we release often, and TeamCity has nice features to help us roll back when things don't work out as planned.
TeamCity builds then copies to each web tier via a powershell script. The steps for each server are:
- Tell HAProxy to take the server out of rotation via a POST
- Delay to let IIS finish current requests (~5 sec)
- Stop the website (via the same PSSession for all the following)
- Robocopy files
- Start the website
- Re-enable in HAProxy via another POST
We use AppVeyor for unit and integration testing of the Vaporshell module for Powershell, as well as deployment on successful tests via PSDeploy
I'm using a selfhosted TC as Referenceplatform, and use travis with another configuration.