Configuración de GitHub Actions para validar pruebas en pull requests
Clase 8 de 22 • Curso de Introducción a DevOps
Contenido del curso
- 5

GitHub Projects: gestión básica de tareas y estructura del código
06:39 - 6

Configuración de proyectos .NET con pruebas unitarias automatizadas
06:41 - 7

Blindaje de rama main y gestión de commits en GitHub
07:07 - 8

Configuración de GitHub Actions para validar pruebas en pull requests
08:35 - 9

Creación de imágenes Docker para APIs de ASP.NET Core
06:52 - 10

Configuración de CI/CD con Docker en GitHub Actions
05:58 - 11

Configuración de despliegue continuo con Docker y GitHub Actions
06:22
- 15

Configuración de OpenTelemetry en aplicaciones .NET Core
08:17 - 16

Variables de ambiente en GitHub Actions y Azure Container App
09:50 - 17

Creación de paneles personalizados con Azure Workbooks
09:50 - 18

Creación de método para obtener contactos con pruebas unitarias
04:02 - 19

Automatización de despliegues con GitHub Actions y pull requests
04:30 - 20

Alternativas de herramientas para procesos DevOps completos
04:06 - 21

Integración de DevOps y metodologías ágiles en equipos de software
03:32 - 22

DevOps como diferenciador entre desarrollo y ingeniería de software
02:55
Implementar GitHub Actions para ejecutar pruebas automáticas antes de fusionar cambios en la rama principal es clave para asegurar la calidad del código y facilitar el trabajo en equipo. Esta configuración permite validar cada modificación, agilizar procesos y brindar transparencia al avance del proyecto.
¿Cómo crear una acción en GitHub para validar pruebas?
Para crear esta acción, se debe seleccionar en GitHub la opción de Actions, luego escoger la categoría que permite crear un flujo de trabajo nuevo. Aquí es necesario generar un archivo YML llamado pull_request_review.yml. Dentro de él, se añadirá el código específico para validar automáticamente las pruebas antes de la unión con main.
¿Qué pasos básicos debe realizar la acción?
Esta acción tiene varias etapas fundamentales:
- Ejecutar automáticamente con cada pull request dirigido a la rama principal.
- Utilizar
Ubuntu latestcomo entorno de ejecución. - Realizar la extracción del código y configuración del ambiente, específicamente
.NETversión de largo plazo (8). - Instalar dependencias, compilar el proyecto y ejecutar pruebas automatizadas previamente definidas (
dot net test).
¿Qué ventajas ofrece esta configuración?
Integrar esta acción proporciona múltiples beneficios prácticos:
- Obliga al equipo a adquirir el hábito de acompañar cada contribución con pruebas automatizadas.
- Asegura la calidad del código antes de fusionarlo a la rama principal.
- Facilita al administrador del repositorio realizar modificaciones directas temporalmente al omitir restricciones.
¿Cómo simplificar tu flujo integrando issues y código?
Un tip valioso dentro de GitHub es usar la palabra clave closes seguida del número de issue correspondiente en el comentario del pull request, así:
closes #1
Esto permite que, al aprobarse el código y fusionarse en la rama principal, se cierre automáticamente el issue asociado, actualizando el estado del proyecto y facilitándole el seguimiento al project manager.
¿Cómo obtener aprobaciones más ágiles en tus revisiones?
Integrar herramientas como GitHub Copilot también ayuda a mejorar la eficiencia en las revisiones de código. Copilot analiza automáticamente las modificaciones y detecta rápidamente si existen observaciones, reduciendo significativamente el tiempo que demora una revisión manual del equipo. Asimismo, emplear acrónimos como LGTM (Looks Good to Me*) aporta claridad y comunicación efectiva dentro del equipo durante el proceso de revisión.
¿Cuál es el impacto de estas acciones en la gestión de proyectos?
Finalmente, integrar estos mecanismos automatizados contribuye considerablemente al éxito del enfoque DevOps en los proyectos. Permiten al project manager visualizar eficientemente el progreso del equipo, evaluar cuán rápido y con calidad se cierra cada tarea, y proporcionar información clave para la toma de decisiones en la gestión del sprint.