DevOps ~ Continuous Integration - rohit120582sharma/Documentation GitHub Wiki

It is a process of Automated Build and Automated Tests.

It requires developers to integrate code into a shared repository several times in a day.

Each check-in is then verified by an automated build, allowing team to detect problems early.

If automated build is not green, system notify developers immediately. By this, developer can detect errors quickly, and locate them more easily.

It is not about resolve the bug but to find them more quickly.

By adopting both Continuous Integration and Continuous Deployment, you not only reduce risks and catch bugs quickly, but also move rapidly to working software.


Why do we need Continuous Integration:

  • Catch issues early
  • Spend less time debugging and more time adding features
  • Reduce integration problems allowing you to deliver software more rapidly

CI flow:

  • Developers check out code into their own workspace.
  • When done, commit the changes to the central repository.
  • CI server monitors the repository and checks out changes when they occur.
  • CI server builds the system and runs unit & integration tests.
  • On successful build, CI server releases deployable artifacts for testing.
  • CI server assigns a build label to the version of the code it just built.
  • CI server informs the team of the successful build.
  • If the build or tests fail, the CI server alerts the team.
  • The team fixes the issue at the earliest possible.
⚠️ **GitHub.com Fallback** ⚠️