C.W.K.
Stream
Lesson 10 of 12 · published

Why GitHub Actions

~11 min · github-actions, comparison, tradeoffs

Level 0Apprentice
0 XP0/101 lessons0/10 achievements
0/120 XP to next level120 XP to go0% complete

Strengths that defaulted the world to Actions

GitHub Actions launched in 2018 and became the default CI for most new projects within three years. The reasons are practical, not technical genius:

  1. Lives next to the code. Workflows are YAML files in .github/workflows/. They version with the code, get reviewed in PRs, and are automatically scoped to the repo.
  2. Marketplace. Tens of thousands of pre-built actions for common tasks: cache deps, deploy to AWS, build a Docker image, post to Slack. Composability is ridiculous.
  3. Free for open source. Generous free minutes for public repos and free macOS / Windows runners. This is why every modern OSS project ships with a green build badge.
  4. One auth. If you have a GitHub account, you have CI. No separate tool to provision, license, or bill.
  5. Native UI integration. Status checks on PRs, environment deployments, secrets management — all in the same UI as code review.

Weaknesses worth knowing

  • Vendor lock-in is real. Workflow YAML and the action ecosystem are GitHub-specific. Migrating off is non-trivial.
  • Marketplace actions are mostly third-party code. Pin them by SHA, audit important ones, never use latest in production. (We'll cover this in the secrets/security tracks.)
  • Slow for very heavy workloads. If you need 64-core machines or GPU runners with persistent caches, you usually self-host runners.
  • Stateful workflows are awkward. Actions is great at stateless build/test/deploy. For long-running stateful pipelines (multi-day batch jobs), you'll want orchestrators like Argo or Airflow on top.

Code

Workflow lives in the repo — like any other source·bash
# Where it lives
ls .github/workflows/
# ci.yml  release.yml  nightly.yml  deploy.yml

# It's part of the repo
git log -p .github/workflows/ci.yml
# you see the full review history of every workflow change

# It's reviewable in PRs
git diff main HEAD -- .github/workflows/

External links

Exercise

Browse the Actions Marketplace and find three actions you'd genuinely use in a future project. For each, look at the action's source repo and check: who maintains it, when was the last release, and is there a SHA-pinning recommendation. This is the audit you should do before adopting any.

Progress

Progress is local-only — sign in to sync across devices.
Spotted a bug or have feedback on this page?Report an Issue

Comments 0

🔔 Reply notifications (sign in)
Sign inPlease sign in to comment.

No comments yet — be the first.