CI Tools
Continuous Integration (CI) tools allow code to be easily built, compressed, compiled, tested and deployed. This allow developers to focus on improving their product without the need to manually prepare code for Production before deploying.
Most continuous integration tools can be configured to automatically trigger various actions when a new commit is made to a repository. These actions could be performed by custom scripts (depending on the CI tool), automated tests or by built in features that the CI tool provides.
An Example of a CI Workflow:
If the automated tests fail, some CIs will notify the user and disregard pushing to an environment while others can be configured to deploy to another environment (e.g. QA environment).There are many CI tools available. For this article we will be comparing Jenkins, Codeship, TravisCI, DeployBot and CircleCI. View the comparison below.
Features | Jenkins | Codeship | TravisCI | DeployBot | CircleCI |
---|---|---|---|---|---|
Open Source | |||||
Free Package | 5 private projects | Only open sourced projects | 1 Free repository | ||
Email Notification | |||||
Web-Based | |||||
Setup | Can be Tricky | Easy | Easy | Easy | Easy |
Teams | |||||
Bitbucket Integration | With plugins | ||||
Custom Scripts | |||||
Headless Browser Suppport | |||||
Parallel CI | |||||
Ease to Use & Maintain | |||||
Rollbacks |