Conversation
03-github-actions/Ejercicios.md
Outdated
| @@ -0,0 +1,29 @@ | |||
| # Ejercicios GitHub Actions | |||
There was a problem hiding this comment.
He pasado una plantilla para poner como se tiene que entregar etc, y ejercicio obligatorios y opcionales (igual los obligatorios los podríamos poner más sencillo para que quien quiera ir al minomo lo pueda pasar fácil), te lo paso por aquí y tu me dices:
Laboratorio GitHub Actions
En este laboratorio practicarás conceptos básicos de CI/CD con GitHub
Actions.
Trabajarás sobre el proyecto Hangman utilizado en clase.
Aprenderás a:
- Crear workflows de CI
- Ejecutar tests automáticamente
- Construir imágenes Docker
- Publicar imágenes en GitHub Container Registry
- Ejecutar tests end‑to‑end
Entrega del laboratorio
Este laboratorio debe entregarse mediante un repositorio público en
GitHub.
El repositorio debe contener:
README.md
.github/workflows/
En el README.md debes documentar:
- Qué workflows has creado
- Qué eventos disparan cada workflow
- Qué pasos ejecuta cada pipeline
- Capturas o logs de ejecución (opcional pero recomendado)
El objetivo es que cualquier persona pueda entender y reproducir tu
pipeline CI/CD.
Ejemplo de entrega:
https://github.com/usuario/github-actions-lab
Criterios de evaluación
El laboratorio se divide en:
- Parte obligatoria (necesaria para aprobar)
- Parte opcional (para subir nota)
Parte obligatoria (mínimo para aprobar)
Debes completar correctamente los siguientes ejercicios:
- Ejercicio 1 --- Workflow CI
- Ejercicio 2 --- Workflow CD
Si estos workflows no funcionan o no están documentados, el
laboratorio no se considerará aprobado.
Parte opcional (para subir nota)
Puedes realizar el ejercicio adicional:
- Ejercicio 3 --- Workflow de tests end‑to‑end
1. Workflow CI para el proyecto frontend
En clase hemos trabajado con el proyecto hangman-api, pero en este
ejercicio trabajarás con:
hangman-front
Debes crear un workflow de CI que se ejecute cuando:
- exista una Pull Request
- haya cambios en la carpeta:
<!-- -->
hangman-front
Las dos condiciones deben cumplirse.
El workflow debe ejecutar:
- Build del proyecto frontend
- Ejecución de los tests unitarios
Este ejercicio es similar a la primera demo vista en clase, pero
aplicado al frontend.
2. Workflow CD para el proyecto frontend
Crea un nuevo workflow que se dispare manualmente.
El workflow debe:
- Construir una imagen Docker del proyecto frontend
- Publicar la imagen en el GitHub Container Registry
Documentación:
Se recomienda usar las actions oficiales de Docker vistas en clase.
Ejemplos:
- docker/setup-buildx-action
- docker/login-action
- docker/build-push-action
3. Workflow para ejecutar tests E2E (opcional)
Crea un workflow que ejecute los tests end‑to‑end.
Puedes decidir cuándo se ejecuta el workflow:
- manualmente
- en cada pull request
- en cada push
Los tests E2E están disponibles aquí:
Para ejecutarlos puedes usar:
Opción 1 --- Docker Compose
Levantar los servicios necesarios y ejecutar los tests.
Opción 2 --- Cypress GitHub Action
Repositorio:
https://github.com/cypress-io/github-action
El objetivo es que el workflow:
- prepare el entorno
- ejecute los tests
- muestre los resultados en GitHub Actions
Resumen de evaluación
Nivel Requisitos
Aprobado Workflows CI y CD funcionando
Notable Workflows obligatorios + tests E2E
Sobresaliente Workflows obligatorios + E2E bien documentado
No description provided.