Skip to content
New this month 24 fresh C++, C#, F#, JavaScript, TypeScript and Lua courses just landed. Browse new releases Use code WELCOME10 for 10% off your first order · 14-day refund
DevOps & Cloud Intermediate

GitHub Actions: CI You Will Not Fight

Pipelines that run fast, cache correctly and fail for reasons you can actually read.

Rated 4.0 out of 5 from 2 reviews 20 students

TE Created by Tom Eriksen

  • Last updated August 2026
  • English
  • 6h 25m of material
  • 48 lessons

What you will learn

8 concrete outcomes

Every bullet below is something you will have built, shipped or be able to explain by the time you finish the last lesson.

  • Explain the execution model: events, jobs, steps, runners and contexts
  • Understand why pull request target is a security boundary
  • Design cache keys that actually produce cache hits
  • Split a slow test suite across parallel jobs and merge the results
  • Extract reusable workflows and composite actions
  • Use OpenID Connect instead of storing long-lived cloud credentials
  • Add environment protection, approvals and concurrency control
  • Debug a failure that only reproduces on the runner

Course curriculum

6 modules · 48 lessons · 6h 25m of material

8 lessons running 1h in total. Each lesson ships with the finished source files and a short written recap, so you can follow along in your own editor and skim the module again later.

Lesson-by-lesson titles, code downloads and exercises live inside the course library you get access to straight after checkout.

8 lessons running 1h 4m in total. Each lesson ships with the finished source files and a short written recap, so you can follow along in your own editor and skim the module again later.

Lesson-by-lesson titles, code downloads and exercises live inside the course library you get access to straight after checkout.

8 lessons running 1h 8m in total. Each lesson ships with the finished source files and a short written recap, so you can follow along in your own editor and skim the module again later.

Lesson-by-lesson titles, code downloads and exercises live inside the course library you get access to straight after checkout.

8 lessons running 1h 8m in total. Each lesson ships with the finished source files and a short written recap, so you can follow along in your own editor and skim the module again later.

Lesson-by-lesson titles, code downloads and exercises live inside the course library you get access to straight after checkout.

8 lessons running 1h 4m in total. Each lesson ships with the finished source files and a short written recap, so you can follow along in your own editor and skim the module again later.

Lesson-by-lesson titles, code downloads and exercises live inside the course library you get access to straight after checkout.

8 lessons running 1h 1m in total. Each lesson ships with the finished source files and a short written recap, so you can follow along in your own editor and skim the module again later.

Lesson-by-lesson titles, code downloads and exercises live inside the course library you get access to straight after checkout.

6 modules · 48 lessons

6h 25m total length

Requirements

Short list, and deliberately so. If you meet these you can start today.

  • Comfortable with Git and a pull request workflow
  • A GitHub repository you can experiment in
  • Basic familiarity with YAML and shell scripting

About this course

Continuous integration is either the thing that catches problems before your users do, or the thing everyone reruns twice and eventually ignores. The difference is engineering, and it is almost entirely learnable.

The course starts with the execution model, because most confusion comes from not knowing it. Events and their payloads, the difference between pull request and pull request target and why that difference is a security boundary, jobs and steps, runners and what is already installed on them, contexts and expressions, and where each piece of state actually lives. You will write workflows that do exactly what you intended rather than approximately.

Then speed, which is what makes a pipeline get used. Caching dependencies correctly including the key design that decides whether you ever get a hit, Docker layer caching in a build, matrix builds without a combinatorial explosion, splitting a slow test suite across parallel jobs, and skipping work that no change could have affected.

The rest covers correctness and safety: reusable workflows and composite actions to stop copy-paste sprawl, secrets and environment protection rules, OpenID Connect for cloud credentials so you stop storing long-lived keys, concurrency groups that cancel superseded runs, deployment gates with approvals, and debugging techniques for the failure that only ever happens on the runner.

Frequently asked questions

Still unsure about something? Write to misteryjj100@gmail.com and a human answers, usually the same working day.

The concepts do, and a closing lesson maps them onto GitLab CI and CircleCI. The syntax and the workflow files are GitHub Actions throughout.

Yes, including when they are worth the operational cost, how to isolate them, and the security considerations for running them on public repositories.

No. Every exercise fits comfortably within the free minutes allowance on a personal account and public repositories.

Checkout is handled on our provider's secure payment page. The moment your payment clears we email your personal access link and access code to the address you used at checkout, and the same link appears in your account library. There is nothing to install and nothing to wait for.

Email misteryjj100@gmail.com within 14 days of your purchase, quote your order number, and we refund the full amount to your original payment method. No form to fill in and no questions about how much of the course you watched.

What students say

Reviews are written by people who bought this course. We publish the critical ones too.

4.0

Rated 4.0 out of 5

Course rating · 2 reviews

Rating distribution

  • 5 stars 0%
  • 4 stars 100%
  • 3 stars 0%
  • 2 stars 0%
  • 1 star 0%
  • HF

    Hassan Farouk

    DevOps engineer

    Dec 2025
    Rated 4.0 out of 5

    Found a cache that had been missing for months

    Ours had a timestamp baked into the key, so it never once restored and nobody had noticed. The explanation of how the fallback keys are actually matched found it in ten minutes. Only real complaint is that the OIDC material is written AWS-first and I am on Azure.
  • KW

    Katarzyna Wójcik

    Platform engineer

    Sep 2025
    Rated 4.0 out of 5

    The platform moves faster than the recording

    The execution model and reusable workflow chapters are the clearest explanation of either that I have seen, and neither will date. A few of the interface walkthroughs no longer match what is on my screen, and one referenced action version has since been deprecated. Nothing that actually stopped me, but be prepared to translate.

Your instructor

TE

Tom Eriksen

Platform engineer and DevOps instructor

  • 219 students taught
  • 13 courses published
  • 4.8 instructor rating
  • Docker
  • Kubernetes
  • CI/CD
  • Testing and tooling

Tom has built delivery pipelines for teams of three and teams of three hundred, and openly prefers the smaller ones. He teaches Docker, Kubernetes and CI/CD outward from a single commit, so nothing ever appears by magic, and he treats the test suite as part of the pipeline rather than a separate subject. Every course includes a deliberate outage that you have to diagnose from logs and metrics before you can continue. He is a CNCF contributor and a reluctant but formidable YAML expert.

$44 USD

One-time payment · lifetime access

The WisdomCharms dispatch

One useful email a week. No fluff, no spam.

New course releases, discount codes before anyone else, and a short, practical breakdown of one technique — a prompt pattern, a C++ idiom, a TypeScript trick — that you can use the same day.

  • Subscriber-only launch pricing
  • Unsubscribe in one click
  • We never sell your address

By subscribing you agree to our Privacy Policy. Questions? Write to misteryjj100@gmail.com.