
Built-In Runners: Ubuntu, Windows, and macOS
GitHub Actions provides hosted runners for all major platforms:GitHub-hosted runners are preconfigured VMs managed by GitHub. You don’t need to worry about provisioning hardware, installing dependencies, or scaling resources.

Defining Workflows with YAML
Workflows are defined in.github/workflows/*.yml files using simple YAML syntax. They run automatically on events like push, pull_request, or package publishing.
Common Trigger Events
pushpull_requestissuesreleaseregistry_package

Automate Pull Request Workflows
Use Actions to comment on PRs, assign reviewers, enforce labels, and ensure policy compliance:
Workflows, Jobs, and Steps
A workflow runs in response to specified events. It consists of one or more jobs, each containing ordered steps that execute on a runner.runs-on: Specifies the runner OS.strategy.matrix: Launches multiple jobs in parallel.- Steps execute sequentially: checkout → setup → install → test.
Inspecting Logs and Artifacts
View real-time logs, download test reports, or debug failures in the Actions tab:
Comparing Runner Types
Choose between GitHub-hosted and self-hosted runners based on your requirements:| Feature | GitHub-Hosted | Self-Hosted |
|---|---|---|
| Management | Provisioned & maintained by GitHub | Managed by you (VMs, servers, containers) |
| Customization | Limited (preinstalled tools only) | Full control over software & hardware |
| Isolation | Fresh environment per job | Persistent & stateful environments |
| Billing | Included in GitHub plan (usage limits) | You cover compute & maintenance costs |
| Use Cases | Standard CI/CD pipelines | GPU workloads, custom dependencies |

Self-hosted runners require you to handle updates, scaling, and security.
Next Steps
You now understand the core concepts: workflows, jobs, steps, triggers, and runner options. Stay tuned for deep dives into:- Secrets management & environment variables
- Reusable workflows & composite actions
- Custom actions with Docker and JavaScript