Build a CI/CD Pipeline

Build a CI/CD Pipeline

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 77 Lessons (7h 14m) | 1.83 GB

If your development team is still dealing with manual and repetitive build- or deployment-related tasks, this course is for you.

Software is at the center of our world and touches nearly everything we do. The world depends on great software and access to features at the speed of innovation. Agile processes and mindsets help teams build features iteratively and get feedback quickly to apply learning and correct courses; however, without concepts like DevOps to remind us of what’s possible, feedback and innovation hit a dead end or an unnatural pause. To consider yourself or your team truly agile, you must embrace the concept of continuous delivery in its fullness. Continuous delivery is not a goal but a direction. By walking in the direction of continuous delivery, you get closer and closer on a daily basis to reaching a cadence where features and feedback truly move to users at the speed of innovation. Continuous Delivery is at the core of DevOps.

Learn How To

  • Influence development teams and stakeholders toward continuous delivery and improvement
  • Write more maintainable scripts that enable CI/CD
  • Instruct CI/CD systems using YAML notation
  • Integrate your code automatically and continuously
  • Automate deployment and verification of working software
  • Inform team leadership with meaningful metrics

Lesson 1, “Delivering Value Consistently”: This lesson defines CI/CD and Continuous Delivery, discuses Continuous Delivery as a direction and culture influencer instead of a just set of tools, and explains how to use metrics as a change agent to influence organizational culture.

Lesson 2, “Foundations of Sound CI/CD”: This lesson teaches scripting options and how to manage them. It also covers YAML syntax and its application in print scenarios in the CI/CD world.

Lesson 3, “Continuous Integration”: This lesson teaches teams using CI/CD how to shorten feedback loops by failing fast. It also shows how to test various components of Continuous Integration in preparation for completing the artifact build.

Lesson 4, “Continuous Deployment”: This lesson builds on Continuous Integration teachings in previous lessons by adding technologies and components of Continuous Deployment to move the artifact into the cloud or into a server for public consumption. This lesson also discusses advanced triggering methods to prompt old build jobs to start at different times and for different reasons. It also covers different reusable actions.

Lesson 5, “Deployment Strategies”: This lesson unpacks different ways to think about deployments. It covers popular patterns and strategies for deploying distributive systems, as well as how to plan a refactor or new implementation.

Lesson 6, “Infrastructure Management”: This lesson discusses advanced CI/CD practices, such as directing the infrastructure management tool that is best for you and your team, spinning up and tearing down infrastructure in response to rollbacks, and implementing all of this within your CI/CD pipeline.

Lesson 7, “Configuration Management”: This lesson shows how to integrate configuration management tools into your CI/CD pipeline to enable automation. It discusses how to define your configuration changes ahead of time so that they can be stored in your source control alongside your code, and how to use scripting to deploy changes to remote machines.

Lesson 8, “Continuous Delivery”: This lesson discusses where DevOps fits in the greater organizational culture and Continuous Delivery at large, as well as cultural changes necessary to keep Continuous Delivery alive and how to measure the adoption of that change.

Table of Contents

1 Build a CICD Pipeline Introduction

Lesson 1 Delivering Value Consistently
2 Learning objectives
3 Delivering Functional Software from Day 1
4 Problems Solved by Automation
5 CI vs CD vs Continuous Delivery
6 Continuous Delivery as a Direction
7 Measuring Success
8 Communicating and Influencing with Metrics
9 Exercise Create a Change Proposal Using Metrics

Lesson 2 Foundations of Sound CICD
10 Learning objectives
11 Why Sound CICD Matters
12 Problems Solved by Scripts and Config Files
13 Writing Maintainable Scripts
14 Working with YAML Notation
15 Navigating Vendor Syntax Differences
16 Exercise Repair and test YAML File

Lesson 3 Continuous Integration
17 Learning objectives
18 Life Before CI
19 What Problems Does CI Solve
20 Measuring Success
21 Components of Continuous Integration
22 Build a CD Pipeline that Builds a Deployable Artifact
23 Types of CI Jobs
24 Running Unit Tests in CI
25 Static Analysis in CI
26 Security Audit in CI
27 Exercise Run a Full CI Pipeline

Lesson 4 Continuous Deployment
28 Learning objectives
29 Manual Deployments are Bad for your Health
30 What Problems are Solved by CD
31 Measuring Success
32 Identify the Components of CD
33 Using CLI Tools in CD to Deploy Working Software
34 AWS Credentials
35 Use Simple Tests to Detect Issues
36 Integrate Deployment with CICD Pipelines
37 Exercise Run a Full CICD Pipeline

Lesson 5 Deployment Strategies
38 Learning objectives
39 Why Deployment Strategies are Important
40 Problems Solved by Deployment Strategies
41 Measuring Success
42 Deployment Strategy Options
43 Selecting the Right Strategy
44 Planning for Implementation
45 Exercise Refactor CICD pipeline to Perform Blue-Green Deployment

Lesson 6 Infrastructure Management
46 Learning objectives
47 Why Infrastructure Management Tools are Important
48 Problems Solved with Infrastructure Management
49 Measuring Success
50 Configuration Management Tooling Options
51 Managing Cloud Infrastructure
52 Terraform Abilities
53 Managing Resources
54 Spinning UpDown EC2 Instances
55 Integrate Infrastructure Management with CICD Pipelines
56 Exercise Automate CreationDestruction of Infrastructure

Lesson 7 Configuration Management
57 Learning objectives
58 Why Configuration Management Matters
59 Problems Solved with Configuration Management Tools
60 Measuring Success
61 Configuration Management Tooling Options
62 Getting to Know Ansible
63 Ansible Modules
64 Hello World in Ansible
65 Understanding Ansible‘s Workflow
66 Remote Controlling Remote Machines
67 Integrate Configuration Management with CICD Pipelines
68 Exercise Automate Infrastructure Configuration

Lesson 8 Continuous Delivery
69 Learning objectives
70 How Not to Implement Continuous Delivery
71 Problems Solved by Continuous Delivery
72 Measuring Adoption
73 Recognize the Importance of Culture on Adoption
74 Connecting DevOps to Continuous Delivery
75 Recognizing Cultures that Support Continuous Delivery
76 Influencing Culture

77 Build a CICD Pipeline Summary