GitHub Actions
What it is
GitHub Actions is GitHub’s built-in CI/CD automation engine. You define workflows as YAML files under .github/workflows/ in your repository; each workflow runs jobs containing steps that execute actions when triggered by repository events.
Why it exists
It keeps CI/CD inside the repository host — no separate tool — so “code + automation live together.” Events like push, pull_request, and schedule drive workflows, and the action ecosystem (actions/checkout, actions/upload-artifact) makes steps composable.
Key ideas
- Workflow = the automation unit; one YAML file = one workflow.
- Events drive it (
push,pull_request,workflow_dispatch,schedule); see ci-trigger. - Jobs run in parallel by default; steps within a job run sequentially and share a runner’s filesystem.
- Runners execute jobs — GitHub-hosted (ubuntu/windows/macos) or self-hosted.
- Actions are reusable building blocks (community or
actions/*official). - Artifacts —
actions/upload-artifact/actions/download-artifactshare build output between jobs; see build-artifact. - Reusable workflows & composite actions enable reuse; see pipeline-templates.
Exam notes
- Workflow file lives at
.github/workflows/<name>.yml. - GitHub-hosted runner pricing/free minutes for private repos vs free for public.
- GitHub Actions can deploy to Azure (Azure login action, service principals); common in AZ-400.
- Runs (like Azure Pipelines runs) are the execution of a workflow on an event.
Related
azure-pipelines · ci-trigger · build-artifact · pipeline-templates · self-hosted-agent
📘 Source: Microsoft Learn — Github Actions