GitLab CI/CD Training

Overview

This foundational class delves into the world of Continuous Integration, Continuous Delivery, and Continuous Deployment (CI/CD), empowering learners to streamline software development practices and deliver high-quality applications efficiently. Through hands-on labs and real-world scenarios, participants will gain end-to-end practice in the process of creating and running CI/CD pipelines within the GitLab. This one-day session covers the fundamental structure of implementing CI/CD with GitLab and applying these concepts participants will apply CI/CD principles through building, testing, and deploying a sample application. Participants will explore strategies for troubleshooting issues, evaluating pipeline configurations, and incorporating best practices to promote code reusability and maintainability. By the end of the session, participants should have the skills to design, implement, and manage CI/CD pipelines for common project requirements, enabling faster time-to-market, improved collaboration, and enhanced software quality.

GitLab CI/CD Training covers some features that are available in all three GitLab pricing tiers (Free, Premium, and Ultimate), some features that are only available in Premium and Ultimate, and a small number of features that are only available in Ultimate.

Target Audience

  • Development teams, quality assurance teams, release engineers
  • Prerequisite knowledge
    • Topics covered in the GitLab with Git Fundamentals course or equivalent experience with GitLab
    • This class is not appropriate for students with no Git or GitLab knowledge

Get in Touch

Interested in scheduling an instructor-led training session? Contact us at training@gitlab.com.

What's Included

Certified Instructors

Learn from the best — courses led by GitLab-certified experts.

Hands-On

Build your own skills quickly to take back and apply on your own projects.

Live Q&A

Instantly query instructors and peers during live sessions.

Structured Success

Complete methodical training for tangible outcomes.

Price

Remote: $5,000
On-site: $7,000 plus travel expenses for each instructor


Duration

Remote: Delivered in a single day, including 1-hour break for lunch.
On-site: Delivered in a single day, including 1-hour break for lunch.


Class Size

Maximum 12 attendees. Order this seat add-on to increase total seats per class.


Languages

This class can be taught in the following language(s):

  • English
  • French

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

System Requirements

Computer with internet access and Git installed, per the requirements specified here.

Training Purchases

All GitLab Trainings purchased pursuant to an applicable Order Form must be used within twelve (12) months of the Start Date indicated therein; failure to do so will result in cancellation of any outstanding GitLab Trainings ordered but not used within twelve (12) months of the date of the Start Date. In no event will GitLab be responsible for any refund or credit with regard to any GitLab Trainings purchased but not otherwise utilized within the foregoing time frames.

Recording

Recording and/or distribution of recordings of Training Session in any way is strictly prohibited.

Get in Touch

Interested in scheduling an instructor-led training session? Contact us at training@gitlab.com.