
Chris Ayers
CI/CD with Github Actions

#1about 2 minutes
Understanding YAML syntax for GitHub Actions workflows
Learn the fundamental YAML rules for lists, key-value pairs, and objects, with a focus on how indentation impacts workflow files.
#2about 1 minute
Defining continuous integration, delivery, and deployment
Distinguish between continuous integration (CI), continuous delivery, and continuous deployment to understand the different levels of automation.
#3about 4 minutes
Exploring the core components of GitHub Actions
Workflows are event-driven processes composed of jobs, which run on runners and execute a series of steps in sequence.
#4about 6 minutes
Analyzing a basic workflow run and its environment
Walk through the execution of a simple workflow and explore the extensive list of pre-installed software available on GitHub-hosted runner images.
#5about 3 minutes
Controlling workflow execution with triggers and dependencies
Fine-tune when workflows run using branch filters, path exclusions, and schedules, and control execution order with job dependencies.
#6about 5 minutes
Using custom scripts and marketplace actions in steps
Execute multi-line scripts using various shells like Bash or Python, and leverage pre-built actions from the GitHub Marketplace by pinning to specific versions.
#7about 10 minutes
Using variables and contexts for dynamic workflows
Define environment variables at different scopes and access dynamic runtime information using context objects like `github`, `runner`, and `vars`.
#8about 3 minutes
Securing workflows with secrets and best practices
Understand how GitHub Actions masks secrets in logs and learn the potential pitfalls of exposing structured or parsed secret data.
#9about 3 minutes
Testing across multiple platforms with matrix strategies
Use a matrix strategy to efficiently run the same job across various combinations of operating systems and software versions, such as Node.js.
#10about 3 minutes
Building a .NET app with caching and artifacts
Optimize build times by caching dependencies and pass build outputs between jobs using upload and download artifact actions.
#11about 4 minutes
Deploying to Azure with IaC and environments
Deploy infrastructure as code using Bicep, pass outputs between steps, and manage deployments with GitHub Environments for approvals and secrets.
#12about 3 minutes
Creating reusable workflows and PR-based environments
Encapsulate common logic into reusable workflows with `workflow_call` and automate the creation of ephemeral environments for pull requests.
#13about 3 minutes
Local testing and advanced security with OIDC
Test workflows locally using `act` to iterate faster, and implement secure, passwordless deployments to cloud providers with OpenID Connect (OIDC).
#14about 16 minutes
Advanced topics on versioning, troubleshooting, and security
Explore practical considerations including artifact versioning, troubleshooting failed builds, securing data, and choosing the right runner image for cost and performance.
Related jobs
Jobs that call for the skills explored in this talk.
Team Lead DevOps (m/w/d)

Rhein-Main-Verkehrsverbund Servicegesellschaft mbH
Frankfurt am Main, Germany
Senior
Featured Partners
Related Videos
 1:04:54
1:04:54Lights, Camera, GitHub Actions!
Ixchel Ruiz
 36:33
36:33Best Practices for Using GitHub Secrets
Marcel Lupo
 45:28
45:28Build a CI/CD pipeline to automate code reviews and ensure code quality
Julien Delange
 45:04
45:04Infrastructure as Code: The Developer's Secret Weapon
Hennie Francis
 50:02
50:02Get ready for operations by pull requests
Liviu Costea
 36:09
36:09GitOps keeps focus on apps, not on infrastructure
Chad Carlson
 44:42
44:42#90DaysOfDevOps - The DevOps Learning Journey
Michael Cade
 56:19
56:19Plan CI/CD on the Enterprise level!
Pawel Piwosz
From learning to earning
Jobs that call for the skills explored in this talk.
DevOps Engineer
DevOpsChat
Municipality of Madrid, Spain
Remote
DevOps
Docker
Kubernetes
Continuous Integration
+2
DevOps Engineer | Terraform · Jenkins · Docker · Kubernetes
knowmad Mood
Barcelona, Spain
CSS
IIS
GIT
.NET
YAML
+21
DevOps Engineer | Terraform · Jenkins · Docker · Kubernetes
knowmad Mood
Municipality of Madrid, Spain
CSS
IIS
GIT
.NET
YAML
+21
DevOps Despliegues (AWS, Terraform, Kubernetes)
CIVIR
Municipality of Madrid, Spain
GIT
Java
Bash
Perl
Linux
+9
DevOps Engineer
Socium - Teams Done Differently
Pamplona, Spain
Remote
DevOps
Kubernetes
Continuous Integration
DevOps Engineer
Socium - Teams Done Differently
Municipality of San Sebastian, Spain
Remote
DevOps
Kubernetes
Continuous Integration




