Continuous Integration (CI) is a development practice that involves developers integrating their code into a shared repository several times per day. Every time that code is sent to a repository, an automated process runs several processes, such as an automated build, testing, and other tasks, helping developers to identify possible problems before going to production.
The practice of integrating regularly allows developers to detect errors sooner than with normal processes, which, of course, means that they can be solved sooner too.
To exemplify this concept, this chapter will walk you through a process that involves Travis CI being triggered when changes are pushed to GitHub. It will then run tests automatically, and, if the tests pass, it will deploy a new version of order-api to Google Cloud Platform: