Continious Integration - process in devops which generates software and features quickly and efficiently
CI involves several key steps, including:
- Developers commit their code changes to a shared repository on a frequent basis.
- The CI server automatically pulls the latest code from the repository and builds the application.
- Automated tests, including unit tests and integration tests, are run to ensure that the application is functioning correctly and has not introduced any new issues.
- If the tests pass, the code changes are integrated into the main branch of the repository.
- If the tests fail, the developers are notified and must resolve the issues before the code can be integrated.
CI enables teams to catch errors and conflicts early, reducing the risk of costly mistakes and delays. It also helps teams to work collaboratively and efficiently.
Continious Delivery - DevOps practice that involves continuously delivering software changes to production by automating the entire release process.
Continuous delivery involves several key steps, including:
- Code changes are integrated and tested through a continuous integration (CI) process.
- Once the code changes have been integrated and tested, they are automatically packaged and deployed to an environment that closely mimics the production environment, such as a staging or pre-production environment.
- Automated tests, including functional and performance tests, are run on the deployed application to ensure that it is functioning correctly and meets the required quality standards.
- If the tests pass, the application is automatically deployed to production.