Learn GitHub Actions from the basics to production-ready: pre-requisites & environment setup, history & CI/CD concepts, core GitHub Actions architecture, writing your first workflow & event triggers, workflow steps uses & run, variables contexts & environment variables, job dependencies management & conditional execution, dynamic matrix testing, artifacts & caching management, secret management & security best practices, passwordless cloud authentication with OIDC, reusable workflows & composite actions, Docker integration & container registries, continuous deployment to servers via SSH Rsync Ansible, continuous deployment to cloud & Kubernetes, self-hosted runners setup & management, automated testing & code quality & security scanning, environment protection rules & approval gateways, automated release management & semantic versioning, troubleshooting debugging & custom action development, and a complete production-grade CI/CD pipeline case study across 21 episodes.
Setting up the three mandatory foundations before diving into GitHub Actions: Git and GitHub basics, the YAML format, and shell scripting. Then installing GitHub CLI and VS Code with the GitHub Actions extension so your first workflow can be written with validation directly in the editor.

Understanding Continuous Integration and Continuous Delivery concepts, tracing the evolution of CI/CD from self-hosted Jenkins to cloud-native tools, then answering the key question: why choose GitHub Actions since it launched in 2019 until now.

Getting to know the main GitHub Actions architecture: workflow, event, job, step, action, and runner, then understanding the difference between GitHub-hosted and self-hosted runners along with a labeled workflow anatomy.

Writing your first YAML workflow with the name, on, jobs, runs-on, and steps structure, then mastering various event triggers like push, workflow_dispatch with an input form, schedule cron, along with event filtering.

Mastering the two main workflow keywords: run for executing shell commands and uses for using Marketplace actions, complete with a Node.js CI workflow example and how to choose a safe action version.

Understanding contexts like github and inputs, managing environment variables with workflow, job, and step scopes, then sending data between steps using GITHUB_ENV and GITHUB_OUTPUT.

In this episode we discuss how to arrange job execution order with needs, run jobs in parallel, and execute jobs and steps conditionally using if and GitHub Actions' built-in status functions.

This episode covers matrix strategy, a way to test your application on many combinations of operating systems and programming language versions from just one job definition, complete with include, exclude, max-parallel, and fail-fast.

This episode discusses how to share build results between jobs using artifacts and speed up pipelines with dependency caching, from artifact upload and download to cache keys and restore keys.

This episode discusses managing sensitive data in GitHub Actions: how to store and use secrets, masking values in logs, preventing script injection, and applying the least privilege principle to GITHUB_TOKEN.
