What is CI?

Learn about CI and how it should be configured for our Rails application.

The conventional meaning of continuous integration (CI) is a system that runs all tests and checks of every branch pushed to a central repositoryWhatisCI . When the tests and checks pass on some designated main branch, that branch is deployed to production.

This enables a common workflow, as outlined in the figure below. This workflow allows developers to create branches with proposed changes and have bin/ci execute those on the CI server to make sure all tests and checks pass. The team can do code reviews as necessary. When both bin/ci and code reviews are good, the change can be merged onto the main branch for deployment. The bin/ci command is run yet again ...