- 1

DevOps con GitLab para automatizar entregas de software
04:19 - 2

Qué es DevOps y cómo integra desarrollo con operaciones
08:44 - 3

DevOps como ciclo iterativo continuo: etapas y beneficios clave
08:21 - 4

GitLab como plataforma integral para el ciclo de vida DevOps
09:29 - 5

Diferencias clave entre GitLab y GitHub para desarrolladores
03:25
Configuración de GitLab Pages para deploy automático de Angular
Clase 28 de 53 • Curso de DevOps con GitLab
Contenido del curso
- 11

Diferencias entre Agile y Waterfall en desarrollo de software
06:20 - 12

Creación y gestión de issues en GitLab para colaboración eficaz
12:07 - 13

Etiquetas para organizar issues en GitLab
07:30 - 14
Planificación en Gitlab-Pesos
02:40 - 15

Creación y gestión de milestones en GitLab para sprints y releases
07:23 - 16

Boards en GitLab para visualizar flujos de trabajo con issues
06:25 - 17

Service Desk de GitLab para soporte por correo electrónico
08:34 - 18
Planificación en Gitlab-Quick actions
00:33
- 19

Inicialización de Angular con GitLab y test-driven development
06:50 - 20

Merge requests y control de calidad en GitLab
12:24 - 21

Flujo completo de merge requests en GitLab
09:24 - 22

Automatización de flujos de trabajo con GitLab CI
02:59 - 23

GitLab CI: configuración, stages y variables para automatización
10:12 - 24

Configuración de GitLab CI para proyectos Angular
11:53 - 25

Validación de archivos GitLab CI con linter antes del pipeline
09:18 - 26
gitlab-ci.yml
02:33 - 27

Configuración de GitLab Pages para hosting estático con CI
04:26 - 28

Configuración de GitLab Pages para deploy automático de Angular
13:11 - 29

Desarrollo ágil y sus doce principios fundamentales
02:33 - 30

GitLab AutoDevOps: pipelines automatizados con seguridad y calidad
06:26 - 31

Configuración de GitLab Auto DevOps con Kubernetes en Google Cloud
09:39 - 32

Configuración de Auto DevOps en GitLab con Kubernetes
13:38
- 35

DevSecOps: integración de seguridad en el ciclo de desarrollo
06:27 - 36

Autenticación de commits con llaves PGP en GitLab
10:18 - 37

Pruebas estáticas de seguridad en GitLab para detectar vulnerabilidades
08:37 - 38

Análisis de contenedores con GitLab y Clair para detectar vulnerabilidades
03:40 - 39

Análisis de vulnerabilidades en dependencias de NPM, PIP y Composer
05:35 - 40

Pruebas dinámicas de seguridad con DAST en GitLab
06:37 - 41

GitLab Security Dashboard: hub centralizado de vulnerabilidades
04:35
- 42

Continuous Deployment seguro con GitLab y control de riesgos
08:04 - 43

Configuración de ambientes en GitLab para desarrollo industrial
08:08 - 44

Review apps: ambientes efímeros por branch para feedback rápido
13:34 - 45
Estrategias de Distribución
04:29 - 46
Feature Flags
03:07 - 47

Rollback en GitLab para revertir errores en producción
05:14
- 48

Importancia del monitoreo en DevOps y despliegue continuo
04:59 - 49

Métricas de desempeño en GitLab con Prometheus
04:35 - 50

Métricas de salud en GitLab para prevenir fallas de infraestructura
05:44 - 51

Métricas de equipo en GitLab para optimizar workflows de DevOps
05:45 - 52

Integración de GitLab con Sentry para rastrear errores en producción
12:27
Configura un flujo CI/CD sólido en Angular con GitLab CI y GitLab Pages para publicar en producción de forma continua. Aquí verás cómo pasar de un commit a un sitio activo, usando stages de install, test, build y deploy, variables de ambiente, artifacts y ajustes de Angular como BASE_HREF para servir correctamente en Pages.
¿Cómo se prepara el flujo de trabajo en GitLab?
Comienza con una integración continua ya operando: cada commit detona un pipeline que ejecuta install y test. El objetivo es extenderlo para publicar automáticamente en GitLab Pages con un proceso claro de colaboración.
¿Qué roles cumplen issue y merge request?
- Crear un issue: “Integrar con GitLab Pages”.
- Asignarlo y describir: “desarrolla el código para integrar la app con GitLab Pages”.
- Abrir un merge request y generar el branch de trabajo.
- Trabajar en el branch y fusionar a master cuando esté listo.
¿Qué comandos de Git se usan?
- git branch y git pull: obtener referencias remotas.
- git checkout: cambiar al branch de trabajo.
- git status: revisar cambios.
- git add .: preparar archivos.
- git commit -m: documentar el cambio.
- git push: enviar al remoto con autenticación SSH y firma PGP.
¿Cómo se configura el pipeline de GitLab CI para Angular?
El archivo .gitlab-ci.yml ya incluye install y test. Se añaden dos stages: build y deploy, y los jobs correspondientes para construir y publicar la app estática.
stages:
- install
- test
- build
- deploy
¿Qué hace el job de build en producción?
- Declara una variable de ambiente para la configuración: production.
- Define dependencies del job de instalación para reutilizar node_modules.
- Ejecuta el script: npm run build.
- Exporta artifacts del directorio dist con expiración de 1 hora.
- Aplica optimizaciones de Angular para producción como tree shaking y código compacto.
Ejemplo del ajuste en package.json para usar la variable de ambiente en el build de Angular:
{
"scripts": {
"build": "ng build --configuration $BUILD_CONFIGURATION"
}
}
Donde $BUILD_CONFIGURATION toma el valor “production” desde el pipeline.
¿Cómo publica Pages los archivos estáticos?
- El job de Pages debe llamarse Pages para que GitLab lo identifique.
- Pertenece al stage de deploy y depende del job de build para obtener dist.
- Crea el directorio public y mueve ahí el contenido de dist/tu-proyecto.
- Declara artifacts con paths: public para que GitLab sirva esos archivos.
- Configura un environment llamado “Producción”.
- Limita por ahora a only: branches y luego a master cuando corresponda.
¿Qué ajustes finales garantizan el despliegue en Pages?
GitLab Pages no sirve desde la raíz del dominio cuando el proyecto vive dentro de un grupo. Por eso Angular debe conocer el BASE_HREF correcto.
¿Cómo ajustar BASE_HREF para una subruta?
- Indicar que la app no vive en root, sino en la ruta del proyecto: platsy DevOps.
- Con ese BASE_HREF, Angular genera referencias válidas a recursos y rutas.
- Nota: cada framework ajusta este detalle de forma distinta, pero la idea es la misma.
¿Cómo validar la sintaxis y activar la publicación?
- Usar el validador de configuración de GitLab, CI Lint, para comprobar .gitlab-ci.yml.
- Confirmar que el pipeline corre con los 4 stages: install, test, build y deploy.
- Al finalizar, ir a Settings > Pages para ver la URL pública del proyecto sirviéndose desde GitLab Pages.
Palabras clave y habilidades practicadas: - Integración continua (CI) y entrega continua (CD). - Pipeline, stages, jobs, dependencies y artifacts en GitLab CI. - GitLab Pages para publicar sitios estáticos. - Angular build con configuración para producción y BASE_HREF en subruta. - Flujo colaborativo con issue, merge request y branching. - Comandos de Git para versionar y enviar cambios. - Validación con CI Lint antes de hacer push.
¿Tú cómo estructurarías los jobs de build y Pages en tu repositorio? Comparte tu enfoque y dudas en los comentarios.