SynfraCore
Synfracore
Start Learning
Navigation

Academies

Platform

RoadmapsLabsCertificationsInterviewPYQsAI AssistantCareer
Start Learning Free Learning Roadmaps

GitHub ActionsNotes

Key takeaways, tips, and important points to remember

📄
Last updated Aug 2026
Expert Content

GitHub Actions — Revision Notes

Condensed reference for quick review. Consolidated from this guide's Overview, Intermediate, Advanced, and Troubleshooting material.


Core Model

Workflow — YAML file in .github/workflows/, triggered by events
  (push, pull_request, schedule, workflow_dispatch)
Jobs run in PARALLEL by default; needs: creates dependencies
Each job = fresh runner (VM), isolated per run
GitHub-hosted runners — free for public repos, ephemeral, isolated
Self-hosted runners — custom hardware, persistent cache, internal
  network access, but real security exposure on PUBLIC repos

Action Pinning (Security)

ALWAYS pin to a SHA or version tag, NEVER @master/@main
  uses: actions/checkout@v4          # acceptable
  uses: actions/checkout@<full-sha>  # most secure — immutable
An unpinned @master action can change behavior (or be compromised)
between pipeline runs with zero warning.

Matrix, Outputs, Artifacts

strategy: matrix — runs same job N times in parallel per combination
  (e.g., node-version: [18, 20, 22])
Job outputs — pass small data between jobs
Artifacts — upload/download FILES between jobs (like GitLab's artifacts)
Composite actions — bundle multiple steps into one reusable action

Secrets and Environments

Repository/org secrets — encrypted at rest, masked in logs
Environment secrets — ONLY accessible when deploying to that
  specific environment
Environment protection rules — required reviewers, wait timer —
  the human-approval gate in front of automated deployment

OIDC — No Long-Lived Cloud Credentials

yaml
permissions:
  id-token: write
  contents: read
steps:
  - uses: aws-actions/configure-aws-credentials@v4
    with:
      role-to-assume: arn:aws:iam::ACCOUNT:role/deploy-role

Workflow requests a SHORT-LIVED token directly from the cloud provider.

IAM trust policy sub claim MUST be scoped to repo+branch — the #1

real OIDC setup failure is a sub condition mismatch, not a workflow

YAML error.

Self-Hosted Runner Fleet (ARC)

Actions Runner Controller (ARC) — Kubernetes-native autoscaling,
  same "runner as a pod" model as Tekton
Larger GitHub-hosted runners — more CPU/memory at higher per-minute
  cost, custom base image support — model the I/O-vs-CPU-bound
  tradeoff explicitly, bigger isn't always faster

Advanced Security

Artifact attestations (actions/attest-build-provenance) — GitHub-
  native answer to the same supply-chain concern Tekton Chains
  addresses
concurrency: + cancel-in-progress: true — prevents two deploys to
  the same ref racing each other
workflow_call with explicit secrets: block — deliberate, auditable
  secret passing to reusable workflows, not implicit inheritance

Terminology Cross-Reference

GitHub Actions term  | Jenkins/GitLab equivalent
------------------------|--------------------------------
Workflow                 | Pipeline
Composite action          | Shared Library function
Reusable workflow          | Jenkins Shared Library / GitLab include:
ARC                          | K8s executor (GitLab)
Environment protection rule   | Manual approval gate
Share:
Join our Community
Daily tips, job alerts, interview help — join engineers learning together
Up Next
📝
GitHub ActionsPYQ
Previous Year Questions with detailed solutions
Also Worth Exploring
← Back to all GitHub Actions modules
CheatsheetsPYQ