Recs.
Updated
CircleCI is a cloud-based continuous integration server that supports Ruby on Rails, Sinatra, Node, Python, PHP, Java and Clojure. It's a hosted solution designed to reduce as much overhead as possible from the testing process.
Also supports build projects in C, C++, Clojure, Elixir, Erlang, Go, Groovy, Haskell, Haxe, Java, JavaScript, Node.js, Perl, PHP, Python, Ruby, Rust, Scala and many more.
C# is only supported for .NET Core on Linux containers.
SpecsUpdate
Pros
Pro Supports 10 continuous deployment solutions
CircleCI supports Heroku, AWS, Engine Yard, dotCloud, Fabric, Nodejitsu, AppFog, Capistrano, Rockspace, and Joynet.
Integration with Heroku is solid with the ability to automatically deploy or merge branches.
CircleCI is also very flexible with deployment arrangement allowing SSH key management, deployment freedom (including directly to a PaaS), using Capistrano, Fabric, arbitrary bash commands, auto-merging to another branch, or packaging code up to S3.
Pro Clean, intuitive UI
Circle CI's web UI is clean and easy to use.
It gives all the information for a single build in a feed and gives the explanation for each step of the build, what it's doing and what the step is related to. On the top it displays author information and the time and date when the build was started and finished.
This is all done by giving only the most essential information without clogging the screen.
Pro Simple and intuitive GitHub integration
CircleCI can be connected to any project that is hosted on GitHub by logging in using the GitHub OAuth and adding the desired repository.
Whenever a new commit is pushed to GitHub, CircleCI runs the tests that have been already defined and if none of them fails, the build is deployed to the runtime environment.
Pro Excellent customer support
CircleCI customer support is helpful and friendly.
Pro Supports 8 languages and 16 databases
CircleCI offers support for Ruby, Python, Node, Java, PHP, RoR, DJ, and JavaScript. It also detects settings for Ruby, Python, Node.js, Java, and Clojure.
Furthermore, CircleCI has support for MySQL, MongoDB, PostgreSQL, Cassandra, Riak, Redis, SQLite, Solr, CouchDB, ElasticSearch, Neo4j, Couchbase, Lucene, Sphinx, ThriftDB, and Memcache.
Cons
Con Changes the environment without warning
Unless you count forum posts as a warning. A mysql upgrade caused days of debugging.
Con Changes in environment poorly communicated
CircleCI updated MySQL, this caused many users days to fix. There was only a note in a forum, a month before, to let people know.
Recommendations
Comments
Flagged Pros + Cons
Pro Quick setup
CircleCI excels with its setup process. All that's needed is a GitHub login and CircleCI automatically detects the settings for Ruby, Python, Node.js, Java and Clojure. The setup process is their most widely praised feature.
Pro Very fast parallel testing
Tests can be parallelized across multiple machines reducing test times drastically. They support up to 8-way parallelization. Additionally, CircleCI caches the build environment.
Out of Date Pros + Cons
Con Supports only GitHub
CircleCI has support only for projects hosted on GitHub so teams that use BitBucket, or any other alternative to GitHub, are forced to rely on another CI tool or use third-party solutions in order to integrate CircleCI with BitBucket. One of those solutions may be Cloudpipes.