GitLab CI/CD Training

What's Included

Course Syllabus

DurationTopic
CI/CD Fundamentals
  • What is CI/CD
  • Implementing CI/CD with GitLab Flow
  • Introduction to .gitlab-ci.yml and runners
Lab Setup
  • GitLab demo environment overview
  • Session authentication
  • Lab: Access the demo environment
Building a Simple Application
  • Selecting the best image for your pipeline
  • Overview of artifacts
  • Producing an artifact of the binary
  • Using before_script for build dependencies
  • Lab: Configure a pipeline to build an application

Merging Changes

  • Overview of branch, merge request, and merged results pipelines
  • Enabling MR pipelines
  • Configuring conditional merge request pipelines
  • Differentiate between workflows and pipeline rules
  • Viewing a merged results pipeline
  • Lab: Add a job to a merge request pipeline
Testing a Simple Application
  • Define test jobs in merge requests
  • Handling different test types (unit, integration, end to end)
  • Using the Allow_failure, Dependencies / needs, and before_script / after_script keywords
  • Including a code coverage job
  • Lab: Configure a pipeline to test a binary generated from the build stage
CI/CD Components
  • Overview of CI/CD components and the catalog
  • Using the include keyword for pipeline configuration
  • Introduction to security scanning
  • Overview of creating and sharing components
  • Discuss component versioning
  • Add a CI/CD component from the CI/CD Catalog
Troubleshooting Strategies
  • Common pipeline error messages
  • Tips for syntax verification
  • Reading job outputs
  • Addressing job configuration issues
  • Use GitLab Duo for root cause analysis
  • Lab: Investigate the cause of a broken pipeline
Deploying a Simple Application
  • Deployment rules
  • Releases
  • Managing an environment in the GitLab UI
  • Tagging a build for a specific environment
  • Lab: Deploy an application
Best Practices in CI/CD
  • Applying DRY principles such as using YAML anchors
  • Utilizing extends, templates, inheritance, caching
  • Overview of secret management