Overview

CircleCI is a modern continuous integration and continuous delivery (CI/CD) platform. The hosted option is available at https://circleci.com/. CircleCI 2.0 is also installable inside your private cloud or data center. Both are free to try for two weeks. CircleCI automates build, test, and deployment of software.

For example, after a software repository on GitHub or Bitbucket is authorized and added as a project to the circleci.com SaaS application, every new commit triggers a build and notification of success or failure through webhooks. CircleCI also supports Slack, HipChat, Campfire, Flowdock, and IRC notifications. Code coverage results are available from the details page for any project for which a reporting library is added.

CircleCI can also be configured to deploy code to various environments, including the following:

AWS CodeDeploy

AWS EC2 Container Service (ECS)

AWS S3

Google Container Engine (GKE)

Heroku

Other cloud service deployments can be easily scripted using SSH or by installing the API client of the service with your job configuration.

Customer Use Cases

The following section outlines two examples of real-world CircleCI usage.

Coinbase

Coinbase runs CircleCI Enterprise behind their firewall for security and reliability. The Coinbase case study report reveals that using CircleCI reduced their average time from merge to deploy in half, reduced operations time spent on continuous integration maintenance from 50% of one person’s time to less than one hour per week, and increased developer throughput by 20%.

SONY

Sony Japan continuously deploys microservices built with Go and Docker in minutes using the CircleCI hosted application as described in the SONY case study report. The NG-Core services are written in Go, packaged into Docker containers, pushed to Docker Hub, then deployed to AWS Elastic Beanstalk. In detail, the process looks like this:

The developer commits and pushes to GitHub

CircleCI receives a hook from GitHub, triggering a build

CircleCI pulls down the latest code, compiles the Go binaries, and creates a deployable image with docker build

Unit and integration tests are run, including some tests that use the final Docker image

The Docker image is pushed to Docker Hub, and a new deployment is triggered on Elastic Beanstalk

A final live system test is run after the deployment

The entire build and test processes each run about 5 minutes, and when deployments are triggered they run about an additional 10 minutes. The NG-Core team started development using this process in May of 2014, has been in production since January 2015, and they are extremely happy with the setup.

See the CircleCI Customers page for the complete set of case studies for companies large and small who are using CircleCI, including the following: