Feedback

Chat Icon

Cloud Native CI/CD with GitLab

From Commit to Production Ready

Your First CI Pipeline
25%

Small Changes, Big Impact

At the heart of continuous integration and continuous deployment (CI/CD) is the idea that the earlier you get feedback from your code, the better. This is because the earlier you catch defects, the cheaper they are to fix. This is why CI/CD is so important. It allows you to find problems at an early stage, usually by the time you commit and push your code to a shared repository.

When a developer pushes code to a Git repository, a CI server automatically builds the code, runs unit tests to check if the code works as expected and has no regressions on existing features, runs static code analysis to check for code quality and coding style issues, generates documentation and other artifacts, and probably deploys the code to a staging environment for further testing.

ℹ️ The developer, by pushing code to the repository frequently and early, triggers the different tasks and tools and has the opportunity to get feedback quickly. Small iterative changes are easier to understand, review, and fix than large changes that are pushed all at once. Accumulating changes over time can lead to merge conflicts, regressions, and other issues that are hard to diagnose and fix.

Here is a non-exhaustive list of tasks that can be automated in a CI/CD pipeline:

  • Building the code
  • Running unit tests
  • Running static code analysis
  • Running integration tests
  • Generating documentation
  • Running SAST (Static Application Security Testing) checks
  • Running code quality checks
  • Creating a release, a tag, or a package
  • Building container images
  • Pushing or pulling container images to or from a container registry

Cloud Native CI/CD with GitLab

From Commit to Production Ready

Enroll now to unlock all content and receive all future updates for free.