CI/CD – why bother?
Before we go much further, we need to be clear that CI and CD are entirely separate concepts, and it is perfectly acceptable to do CI without doing CD. However, it is not possible to do CD without CI! So, aside from giving us more control than our current approach, why should we bother?
Continuous integration
We may not have any automated tests in our application currently, but they are a fundamental part of ensuring success in most production-grade applications. CI not only gives us peace of mind that the application still builds after every code push, but also that it still works. Automated tests are always run as part of the CI process, giving us immediate feedback if something breaks after we push any changes to source control.
We also ensure that the application builds on a completely separate environment to that of the developers who built it. It works on my machine is a common phrase in many dev teams, which becomes completely irrelevant if something goes wrong on...