Continuous integration in DevOps


It is a DevOps software development practice in which developers consistently integrate their code modifications into a central repository, followed by the execution of automated builds and tests.

 

 

Use Case

  • Imagine there is a developer who has created an application (in any application).
  • Assume that the application has been effectively developed. 
  • The developer has now committed all of his modifications to the local git repository.
  • QA Also Approved the functionality\
  • It is now time for him or her to send the modifications to a remote repository.
  • Upon the modifications being pushed to the remote repository, you will have integrated pipelines or an automated pipeline that is integrated with the branches of your remote repository.

 

 

What this pipeline is all about.

  • It can be Azure pipelines, Jenkins GitHub action, Bamboo Anything.

 

Continuous integration Tasks

Building and testing. Integration pipelines typically do those two functions.

  • Building
    • Build is nothing but merging the code with remote repos, compiling your source code. 
    • The compilation process takes the human-readable source code we possess and converts it into machine-readable instructions, using the Compilers.
  • Running Unit
    • Developers will compose those test cases. 
    • To assess the functionality of the developer's work, we can also do certain evaluations.
  • Running Auto Testing
    • integrate a security analysis like sonarq
    • Check our DB script by running Selenium Auto Test.
  • Code Coverage
    • To see the percentage of code has been tested.
  • Vulnerability scanning
  • Compiling and Publishing and build Artifact
    • Will publish the artifact.
    • An artifact is merely an output file designated for deployment, in your release stage.
    • Artifact is nothing, but it's an output file which will be deployed to your end server. Such as your VMs, your Azure Web app, your Kubernetes pods, Docker containers etc.
    • compiling a source code will completely get compiled and you will have an artifact created.
    • in case of micro services
      • The result file will be an image stored in a container registry. Subsequently, we may integrate it into your microservice ecosystem.

 

All above tasks, which is getting executed in real time. It is known as continuous integration.

 


Related Question