Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Info

This page describes in beginner terms the usefulness of the Continous Integration / Continous Delivery methodology. If you had no experience in these practices, read this document first and then move forward to GitLab and Jenkins implementations.


Info

The repository with examples and enabled CI/CD can be found here https://gitlab.eufus.psnc.pl/ach/ach-tutorials


 What is CI/CD?

CI/CD is a set of practices that automate the building, testing, and deployment stages of software development. Automation reduces delivery timelines and increases reliability across the development life cycle. It also removes the burden of manual checking if the program compiles and runs correctly.

...

  • Continuous Integration builds your project and runs tests every time you commit new code to your git repository. Tests check if your changes don't break things. Thanks to that, after every commit you know if your code still works.
  • Continuous Delivery takes your built and tested project and sends it to a server that runs your application. This makes more sense if your code is, for example, a web application or service that is available on the internet. 

 Why use CI/CD?

There are multiple reasons why to use CI/CD. 

  • CI pipeline can be used as a way of documenting how to build/run your code. 
  • Various types of automated tests identify bug issues at an early stage.
  • CI/CD embrace automation

 How to use CI/CD?

Many websites that host git repositories (like GitHub, GitLab, Bitbucket) allow you to use their integrated CI/CD. There may be some differences between them in terms of CI/CD pipeline defining syntax, but the core idea remains the same.

...