GitHub Actions reached general availability in November 2019 and rapidly became the CI/CD platform of choice for GitHub-hosted code. The one-year assessment: what it does well and where it falls short.

The GitHub-native integration

GitHub Actions' tightest integration is with GitHub events: push, pull_request, issue, release, and dozens of others trigger workflows automatically. The integration allows: running CI on every PR, running security scans on every push, creating releases when a tag is pushed, and automating project management (labelling issues, requesting reviews). The integration eliminates the webhook configuration and credential management required to connect an external CI/CD system to GitHub.

The marketplace ecosystem

The Actions marketplace provides thousands of community and vendor actions for common CI/CD tasks: setting up language runtimes, running security scans, deploying to cloud providers, and publishing packages. The quality varies; high-quality actions from verified publishers (HashiCorp, Azure, AWS, Docker) are stable and well-maintained. Community actions require pinning to specific commit hashes rather than tags to prevent supply chain attacks.

Self-hosted runners

GitHub's hosted runners (Ubuntu, macOS, Windows) are sufficient for most CI workloads. Self-hosted runners extend Actions to: on-premises infrastructure, high-performance build machines (more CPU cores, faster storage), and environments that need specific software or network access. The self-hosted runner lifecycle (registration, job pickup, teardown) integrates with Kubernetes via the actions-runner-controller for ephemeral, autoscaling runner pools.

The enterprise maturity gap in 2020

GitHub Actions in 2020 lacks some enterprise features that Azure DevOps has: structured deployment environments with multi-approver workflows, YAML pipeline reuse across repositories (only basic workflow_call reuse), and integration with enterprise identity management. These gaps are closing through 2021-2022. The trajectory is clear: GitHub Actions is GitHub's primary CI/CD investment; Azure DevOps is maintained but not the leading investment.