Chris Ayers

CI/CD with Github Actions

A single YAML file can test your code across multiple operating systems and securely deploy to the cloud. Learn how to build powerful pipelines with GitHub Actions.

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.

Featured Partners

Related Articles

View all articles
DC
Daniel Cranney
Why Attend a Developer Event?
Modern software engineering moves too fast for documentation alone. Attending a world-class event is about shifting from tactical execution to strategic leadership. Skill Diversification: Break out of your specific tech stack to see how the industry...
Why Attend a Developer Event?
DC
Daniel Cranney
5 GitHub Repos That Help You Ship and Show Your Work
If you’re a regular reader here, you’ll know we absolutely love open source. In particular, we have a soft spot for the small, practical repos, the ones that don’t look like much at first glance, but turn out to be incredibly useful. We’ve rounded up...
5 GitHub Repos That Help You Ship and Show Your Work
CH
Chris Heilmann
WeAreDevelopers LIVE days are changing - get ready to take part
Starting with this week's Web Dev Day edition of WeAreDevelopers LIVE Days, we changed the the way we run these online conferences. The main differences are:Shorter talks (half an hour tops)More interaction in Q&AA tips and tricks "Did you know" sect...
WeAreDevelopers LIVE days are changing - get ready to take part

From learning to earning

Jobs that call for the skills explored in this talk.

DevOps AWS

Krell Consulting & Training

Remote
48K
Intermediate
DevOps
Amazon Web Services (AWS)
DevOps Engineer

Unity5
Jacobstowe, United Kingdom

Linux
DevOps
Python
Docker
Google Cloud Platform
+1