CI/CD is a recommended technique for DevOps teams and a best practice in agile methodology. CI/CD is a method for consistently delivering apps to clients by automating the app development phases. Continuous integration, continuous delivery, and continuous deployment are the key concepts.

CI/CD adds continuous automation and monitoring throughout the whole application lifetime, from the integration and testing phases to delivery and deployment. Together, these related processes are typically referred to as a “CI/CD pipeline” and are supported by agilely collaborating development and operations teams.

Continuous Integration

Continuous Integration is the process where developers and contributors push code to a shared platform such as GitHub. These types of platforms are also sometimes recognized as code repositories. This process usually happens relatively often, sometimes as often as five or 20 times per day. A successful CI involves routinely building, testing, and merging new code changes to an app into a shared repository. It offers a solution to the issue of having too many potentially incompatible branches of an app in development at once.

When the code is successfully pushed to the code repository, it is not unusual for a fully-automated testing server to check the imported code as soon as it arrives. The testing server can then provide contributors and developers with important information about the code’s performance within the testing server. The testing server can output performance attributes, checks, and other important information, as well.

This process allows developers to analyze their code and improve it with every new transfer to the code repository. Glitches can exist in code, and the process of Continuous Integration makes it possible to seamlessly find issues in programming code quickly. This process also allows for consistent code deployments to occur. 

Continuous Delivery vs. Continuous Deployment

There are a couple of minor differences between (Read more...)