GitHub Actions es la plataforma de automatización integrada en GitHub que permite definir flujos de trabajo de CI/CD directamente en el repositorio mediante archivos YAML. Se ha convertido en una de las soluciones más adoptadas para integración continua, despliegue continuo y automatización de operaciones de desarrollo, gracias a su integración nativa con el ecosistema GitHub (pull requests, issues, releases, packages) y su extenso Marketplace de actions reutilizables.
El modelo de GitHub Actions se basa en workflows declarativos que responden a eventos del repositorio (push, pull request, schedule, dispatch manual, workflow_call). Cada workflow se compone de jobs que se ejecutan en runners (máquinas gestionadas por GitHub, self-hosted o Actions Runner Controller sobre Kubernetes) y contienen steps que pueden ejecutar comandos shell o invocar actions del Marketplace. Este diseño modular, combinado con features como strategy matrix, environments con aprobaciones y reusable workflows, permite modelar pipelines desde los más simples hasta los más sofisticados sin salir de GitHub.
La plataforma incorpora larger runners con hasta 96 vCPU, runners ARM64 para Linux y runners macOS con Apple Silicon (M2) para compilaciones nativas. Las immutable actions publicadas como paquetes en GHCR garantizan integridad y reproducibilidad, y las attestations SLSA (actions/attest-build-provenance) firman la procedencia de los artefactos generados. Los reusable workflows con workflow_call, las composite actions locales, los environments con wait timers y las variables jerárquicas a nivel de organización, repositorio y entorno permiten construir pipelines gobernables para organizaciones grandes.
La seguridad es un pilar central de la plataforma: gestión granular de secretos, OIDC federation nativo con AWS, Azure, GCP y HashiCorp Vault para autenticación sin credenciales estáticas, permisos de mínimo privilegio con GITHUB_TOKEN y herramientas de cadena de suministro como Dependabot con grouping, dependency review, CodeQL para análisis estático de seguridad y Copilot-suggested workflows para arrancar pipelines a partir del código del repositorio. Todo ello hace de GitHub Actions una solución completa para equipos que buscan automatizar con confianza su ciclo de vida de desarrollo.
Qué incluye este itinerario
- Fundamentos de CI/CD: conceptos de integración y despliegue continuos, arquitectura de GitHub Actions, eventos y triggers.
- Primeros pasos: creación del primer workflow, sintaxis YAML, runners GitHub-hosted (Ubuntu, Windows, macOS Apple Silicon, larger runners y ARM64) y self-hosted.
- Sintaxis avanzada de workflows: jobs, steps, condicionales (
if), strategy matrix, needs y concurrencia. - Actions y Marketplace: uso de actions públicas pinneadas por SHA, immutable actions publicadas en GHCR, y creación de actions personalizadas (JavaScript, Docker, composite).
- Integración continua: testing (unitario, integración, e2e), linting, code quality, caché de dependencias, artefactos y attestations SLSA.
- Despliegue continuo: environments con wait timers y required reviewers, variables jerárquicas (org, repo, env), secretos, estrategias de despliegue (blue-green, canary) y approval gates.
- Seguridad: gestión de secretos, OIDC federation nativo con AWS, Azure y GCP, permisos granulares, Dependabot con grouping y CodeQL.
- Patrones avanzados: reusable workflows con
workflow_call, composite actions, workflow dispatch, outputs entre jobs y self-hosted runners (incluyendo Actions Runner Controller sobre Kubernetes). - Producción: monitorización, optimización de costes, workflows de organización, starter workflows, Copilot-suggested workflows y debugging.
Público objetivo
- Desarrolladores que quieren automatizar testing y despliegue de sus proyectos en GitHub.
- Ingenieros DevOps que buscan implementar pipelines de CI/CD integrados con el flujo de trabajo de GitHub.
- Tech Leads que necesitan estandarizar y gobernar los workflows de sus equipos a nivel de organización.
- Ingenieros de seguridad interesados en automatizar análisis de código, revisión de dependencias y cumplimiento.
- Profesionales de TI que desean migrar de otras plataformas CI/CD (Jenkins, GitLab CI, CircleCI) a GitHub Actions.
Prerrequisitos: conocimientos básicos de Git y GitHub (repositorios, ramas, pull requests), familiaridad con la línea de comandos y sintaxis básica de YAML. No se requiere experiencia previa con CI/CD ni con GitHub Actions.