top of page
ci-cd-pipeline-team-training.png

DevOps with CI/CD Pipelines: Implementation & Integration

​This comprehensive lab-based course teaches teams to blend Github, Chef, and Jenkins to automate and streamline your CI/CD pipeline, elevating your ability to deploy quality code efficiently and effectively. We can also slot in other SCM, CI, and configuration automation tools to match the toolchain you use at work.

This course is meticulously crafted for DevOps professionals eager to adopt a more efficient, automated workflow. ​The training kicks off with an in-depth exploration of version control fundamentals, focusing on git. Participants will learn how to securely manage and push code changes to remote repositories like Github or Bitbucket, establishing a strong foundation for continuous integration.

​

Moving forward, the course dives into server configuration and automation using Ansible, demonstrating how to effectively manage infrastructure as code. This segment builds on the git skills acquired earlier, showing how to leverage version control for robust configuration management.

​​

The core of the course lies in integrating these technologies with Jenkins to construct a fully automated pipeline. Trainees will gain hands-on experience in automating the build, test, and deployment processes, ensuring that code changes are seamlessly moved from development to staging and production environments. This comprehensive approach guarantees that only top-quality, vetted code is deployed, minimizing errors and maximizing efficiency.

​

Customization options are available for private clients, allowing the substitution of Bitbucket in place of Github or Chef as an alternative to Ansible. Additionally, there's an option to extend the course to cover Terraform and Docker, providing a broader scope of tools and practices in modern DevOps environments.

​

By the end of this course, participants will have a thorough understanding of how to implement and manage an integrated CI/CD pipeline, significantly enhancing the development lifecycle and software delivery in their organizations.

Bring this class to your team.

Fill out the form, and we'll get in touch with options for a 30-minute conversation to see if this class is right for you.

 

You can also go ahead and just book a time to talk.

We'll be in touch!

Training Agenda

 

Part 1: Foundational Technologies

​

  • Git – Essentials of Source Control Management

  • Chef – Fundamentals of Configuration Management

  • Jenkins – Principles of Continuous Integration/Continuous Deployment

 

Part 2: Mastering Git for Source Control

​

  • Git: An Overview of Its Purpose and Use Cases

  • Deep Dive into the Git Workflow

  • Configuring Git: Local Machine Setup

  • How to Seek Help with Git

  • Configurations in Git: Local, Global, System

  • Core Git Commands Explained

  • Setting Up Local Git Repositories

  • Exploring Branching and Merging in Git

  • Utilizing Remote Repositories with Git

  • Securely Pushing Code to Github: Public & Private SSH Keys

 

Part 3: Ansible for Effective Configuration Management

​

  • Ansible: Understanding Its Role and Use Cases

  • The Architecture and Workflow of Ansible

  • Installation, Configuration, and Validation of Ansible

  • Ansible's Control and Managed Nodes

  • Managing Hosts and Inventories in Ansible

  • Building Repeatable Code with Playbooks

  • Introduction to YAML for Ansible Users

  • Roles: Modularizing Code in Ansible

  • Utilizing Variables for Dynamic Configurations in Ansible

  • Fact-Based Dynamic Configuration with Ansible

  • Finding Errors: Unit Testing in Ansible

  • Code Quality Assurance: Integration Testing in Ansible

 

Part 4: Jenkins for Continuous Integration and Deployment

​

  • Introduction to CI/CD: Use Cases and History

  • Jenkins and Its Plugin Ecosystem

  • Getting Started with Jenkins: Server Initialization

  • Projects and Jobs Management in Jenkins

  • Configuring Freestyle Jobs for Flexibility

  • CI/CD as Code: Pipeline Projects in Jenkins

  • Declarative vs. Scripted Pipelines: A Comparative Study

  • Handling Environment Variables and Parameters in Jenkins

  • Jenkins’ Distributed Architecture: Master and Agent Nodes

  • Organizational Efficiency: Views and Folders in Jenkins

  • Secrets Management: Credentials Handling in Jenkins

  • Git Integration in Jenkins for Source Control

  • Setting up Automated Triggers in Jenkins

  • Effective Notification Systems in Jenkins

  • Integrating Ansible Playbook Testing in Jenkins

  • Managing Multibranch Pipelines in Jenkins

  • Implementing Conditional Logic in Pipeline Execution

  • Automating End-to-End Deployment with Chef Cookbooks in Jenkins

This class will immediately benefit anyone who touches software pipelines. 

You will leave this class with these skills:

​

  1. Grasp Git Basics: Understand the purpose and use cases of Git for effective source control management.

  2. Advanced Git Techniques: Master advanced Git features, including branching, merging, and working with remote repositories.

  3. Ansible Mastery: Learn Ansible's architecture, workflow, and how to build repeatable code with playbooks.

  4. YAML Proficiency: Gain an introduction to YAML, crucial for Ansible playbook creation.

  5. Effective Configuration Management: Explore Ansible for dynamic configurations and unit testing.

  6. Foundations of CI/CD with Jenkins: Understand the history and use cases of CI/CD, and the role of Jenkins in this process.

  7. Jenkins Project Management: Manage projects and jobs in Jenkins, including freestyle and pipeline projects.

  8. Pipeline Design and Execution: Learn the differences between declarative and scripted pipelines in Jenkins.

  9. Integration Techniques: Master integrating Git with Jenkins, and automating end-to-end deployment using Chef cookbooks.

  10. Operational Efficiency: Improve organizational efficiency with Jenkins’ distributed architecture, views, folders, and effective notification systems.

​

This class is designed for:

​

  • DevOps Engineers

  • Software Developers

  • System Administrators

  • IT Project Managers

  • Release Engineers

  • Build and Release Managers

  • Configuration Managers

  • Operations Support Staff

  • Quality Assurance Engineers

  • Technical Leads/Managers

​

bottom of page