What is CI/CD ? A FreeStyle Project Demo with Jenkins

Reading Time: 3 minutes

What is CI/CD?

CI /CD gave a new vision to how developers and testers produce software. In other words, the adoption of CI/CD is basically of continuous methodologies.

They showcase an environment and operates around constantly integrating new code. Similar to that of the software development lifecycle. Above all starting from the waterfall, the development process changed to Agile and then to DevOps.In conclusion, CI /CD builds up the backbone of the latest DevOps culture.

Continuous Integration(CI)

CI is an operation that requires developers to integrate new code and examine it. Then this integrated code is shared into the repository several times a day. Therefore continuously integrating the new code helps you find errors quickly. In other words, it results in increased time for developers to modify code.

Continuous Delivery (CD)

CD is a method to have all kinds of changes. That basically includes the latest features, bug fixes, configuration changes, and other experiments into the live production of the software environment by the operation team. In addition, this is done in an automated way. Therefore, the code is continuously deployed but the deployment is triggered manually.

Continuous Deployment(CD)

It is the next degree of continuous delivery. Therefore in this, the build deployment is done automatically. As a result, whenever a new change is encountered which passes the test is automatically placed in a production environment. Further resulting in various production deployments.

CI/CD pipeline

The pipeline builds up the foundation of a contemporary DevOps culture. That executes a set of instructions for the purpose of delivering a later version of the software. Basically, it connects the development and operation team by making the process of building, testing, and deployment of application automated.

Components of CI/CD Pipeline

CI Pipeline

  • Build
  • Run Unit Test
  • Package
  • Run Integration Test

CD Pipeline

  • Deploy to Test
  • Run Acceptance Tests
  • Deploying to Staging
  • Run Performance Tests
  • Run End-to-End Tests
  • Deploy to PROD

Tools for CI/CD

  • Jenkins
  • Azure Pipeline
  • Tekton Pipeline
  • Travis CI
  • Screwdriver
  • GoCD

Set CI/CD using Jenkins

Firstly enable Jenkins on your system

Step1 : Click on New Item

Step2 : After that create a freestyle project and give a name to it

Step3: Then give a description and provide with Git repository link

Step4: Provide Build Trigger

Step5: Build and Select execute shell

Step6: Create another job for deployment in the same way by going to a new item and creating a freestyle project

Step7: Choose the Build Trigger

Step8: Add the command to execute shell

Step9: Go to the repository and commit a new change

Step10: The build will be triggered on its own and when the app-package job will be completed the app-deploy job will start executing.


Written by 

Shivani Sarthi is a Software Consultant at Knoldus Software. She has completed her MCA from BCIIT and Bachelors in Electronic Science from Delhi University. She has a keen interest toward learning new technologies. Her practice area is Devops. When not working, you will find her watching anime or with a book.