Introduction to CI/CD Pipelines (advanced)

Learn advanced techniques of CI/CD Pipelines

2 hours
Overall
38
Lessons
Last updated:
September 2024
Gorka Ribera

Gorka Ribera

Software Engineer

Is this course right for me?

This course is ideal for people who already have a foundational understanding of Continuous Integration (CI) concepts and want to dive deeper into more advanced CI/CD practices. If you’re comfortable with basic pipelines but want to improve your knowledge of GitLab’s CI features, security best practices, and how to manage pipelines more effectively, this course is perfect for you. Whether you’re working on automating deployments or ensuring security compliance, you’ll find valuable insights here.

Prerequisites:

  • Basic knowledge of GitLab and Git-based workflows.
  • Familiarity with basic CI/CD concepts and GitLab pipelines.

What will I learn?

In this course, you will learn how to:

  • Work with GitLab CI/CD variables: Discover how to use the git-vars pip package to export and sync variables across different environments and pipelines.
  • Manage Variables in GitLab: Understand different types of variables in GitLab (project, group, masked, protected, etc.) and how to securely manage sensitive information.
  • Implement RBAC (Role-Based Access Control): Learn how to set up roles and permissions in GitLab, ensuring that only authorized users can access sensitive pipelines, artifacts, or variables.
  • Utilize Protected Branches and Tags: Explore the concept of protected branches and tags to safeguard critical parts of your codebase, restricting who can push or merge changes.
  • Apply Security Templates: Integrate GitLab’s AutoDevOps, Secret Detection, Dependency Scanning, and Static Application Security Testing (SAST) into your pipelines for automatic security analysis and vulnerability management.
  • Manage Artifacts: Learn how to store, track, and manage build artifacts throughout your pipeline, ensuring proper version control and consistency across environments.

What will I build?

By the end of the course, you will build:

  • A robust CI/CD pipeline that exports and syncs environment variables using the git-vars pip package.
  • Secure and efficient pipelines with RBAC controls, protecting sensitive branches and tags while automating security checks using GitLab’s security templates (Secret Detection, Dependency Scanning, SAST).
  • Artifact management processes for controlling and storing build outputs, ensuring they are securely managed and accessible when needed.
  • Fully automated security-enhanced pipelines that incorporate real-time security testing and vulnerability management.