Core Concepts
- Workflow: YAML automation triggered by events (push, PR, schedule).
- Job: Group of sequential steps running on one runner.
- Step: Individual action or shell command.
- Action: Reusable unit (JavaScript/composite/docker).
- Runner: Execution environment (GitHub-hosted or self-hosted/ARC).
- Environment: Deployment context with protection rules & secrets.
CI/CDAutomationSecurityEventsRunnersWorkflows
Sample Workflow
name: Build & Test
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: 1.22
- run: go test ./...
Security & Quality Gates
Leverage required reviews, environment protection rules, branch protections, and scanning (CodeQL, Dependabot, Trivy) to shift security left in the delivery pipeline.
When to Use
Adopt GitHub Actions when you want repository-native pipelines, easy ecosystem reuse, policy-based deployments, and integrated security scanning.