GitHub Actions es una plataforma de integración continua y entrega continua (CI/CD) que te permite automatizar tu canalización (pipeline) de compilación, prueba y despliegue. Puedes crear flujos de trabajo (workflows) que compilen y prueben cada solicitud de extracción (pull request) a tu repositorio, o que desplieguen las solicitudes de extracción fusionadas a producción.
En este laboratorio, aprenderás la configuración inicial necesaria para comenzar a usar GitHub Actions. Revisarás el proceso de creación de un repositorio de GitHub, su clonación a tu entorno de desarrollo local y la configuración de la estructura de directorios específica que GitHub Actions requiere para reconocer tus flujos de trabajo.
Prerrequisitos
Una cuenta de GitHub (https://github.com). Si no tienes una cuenta de GitHub, primero debes registrarte para obtener una cuenta gratuita en https://github.com/signup. Este es un prerrequisito para completar este laboratorio.
Familiaridad básica con la línea de comandos.
Este es un Guided Lab, que proporciona instrucciones paso a paso para ayudarte a aprender y practicar. Sigue las instrucciones cuidadosamente para completar cada paso y obtener experiencia práctica. Los datos históricos muestran que este es un laboratorio de nivel intermedio con una tasa de finalización del 66%. Ha recibido una tasa de reseñas positivas del 94% por parte de los estudiantes.
Crear un nuevo repositorio en el sitio web de GitHub
En este paso, crearás un nuevo repositorio en el sitio web de GitHub. Este repositorio servirá como almacenamiento remoto para tu proyecto y el lugar donde se ejecutarán los flujos de trabajo (workflows) de GitHub Actions.
En la esquina superior derecha de cualquier página, utiliza el menú desplegable + y selecciona New repository (Nuevo repositorio).
En el campo Repository name (Nombre del repositorio), escribe github-actions-demo.
Selecciona Public (Público) (GitHub Actions es gratuito para repositorios públicos).
Marca la casilla Add a README file (Añadir un archivo README). Esto asegura que el repositorio se inicialice y esté listo para clonar.
Haz clic en Create repository (Crear repositorio).
Ahora has creado un repositorio remoto. En los siguientes pasos, llevarás este repositorio a tu entorno local.
Clonar el repositorio a la VM de Ubuntu usando el comando git clone
En este paso, clonarás el repositorio que acabas de crear a tu entorno local de LabEx. Esto te permitirá editar archivos y crear flujos de trabajo (workflows) localmente.
En la página de tu repositorio de GitHub, haz clic en el botón verde Code.
Asegúrate de que la pestaña HTTPS esté seleccionada y copia la URL. Debería verse como https://github.com/your-username/github-actions-demo.git.
Abre la terminal en el entorno LabEx. La ruta predeterminada es ~/project.
Usa el comando git clone para descargar el repositorio. Reemplaza your-username con tu nombre de usuario real de GitHub.
cd ~/project
git clone https://github.com/your-username/github-actions-demo.git
Crear un directorio .github/workflows en el repositorio
GitHub Actions busca los archivos de configuración del flujo de trabajo (workflow) en un directorio específico dentro de tu repositorio: .github/workflows. En este paso, crearás esta estructura de directorio.
Asegúrate de estar dentro del directorio del repositorio:
cd ~/project/github-actions-demo
Crea el directorio .github y el subdirectorio workflows dentro de él usando el comando mkdir con la bandera -p (parents):
mkdir -p .github/workflows
Git no rastrea directorios vacíos. Para asegurar que podamos confirmar esta estructura en el siguiente paso, creemos un archivo de flujo de trabajo vacío simple llamado main.yml dentro de este directorio.
touch .github/workflows/main.yml
Verifica la estructura:
ls -R .github
Salida de Ejemplo:
.github:
workflows
.github/workflows:
main.yml
Esta estructura es esencial. GitHub solo reconocerá los archivos YAML colocados en .github/workflows como flujos de trabajo de Actions.
Confirmar y subir los cambios del directorio usando git add, git commit y git push
En este paso, confirmarás (commit) la nueva estructura de directorios y la subirás (push) a GitHub.
Nota sobre la Autenticación:
Cuando ejecutes git push, el WebIDE te pedirá automáticamente que te autentiques. Sigue estos pasos detallados:
Aparecerá una ventana emergente con el mensaje: "The extension 'GitHub' wants to sign in using GitHub." Haz clic en Allow.
Aparecerá una nueva notificación. Haz clic en "Copy&Continue to GitHub", y luego haz clic en "Open" en la siguiente solicitud.
Inicia sesión en tu cuenta de GitHub en la ventana del navegador que se abre e introduce el código de autorización que se copió. Después de confirmar la autorización, la página se cerrará automáticamente.
Espera unos segundos y verás que la terminal completa la operación de subida con éxito.
Nota de Privacidad: El WebIDE solicitará acceso completo a tu cuenta de GitHub con fines de autenticación. No tienes que preocuparte por problemas de privacidad: la VM de LabEx se destruirá inmediatamente después de completar el laboratorio actual, y tus credenciales e información de autorización no se conservarán.
Este proceso de autenticación no requiere la configuración manual del nombre de usuario o del Token de Acceso Personal (Personal Access Token).
Después de seguir los pasos de autenticación, verás una salida similar a la siguiente:
Salida de Ejemplo:
Enumerating objects: 6, done.
Counting objects: 100% (6/6), done.
Delta compression using up to 4 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (5/5), 388 bytes | 388.00 KiB/s, done.
Total 5 (delta 0), reused 0 (delta 0), pack-reused 0
To https://github.com/your-username/github-actions-demo.git
2e0917f..a191a97 master -> master
Visita tu repositorio en GitHub en un navegador web para confirmar que el directorio .github/workflows y el archivo main.yml son ahora visibles en la estructura del repositorio.
Resumen
En este laboratorio, ha configurado con éxito la base para utilizar GitHub Actions. Usted ha:
Creado un nuevo repositorio en GitHub.
Clonado el repositorio a su entorno local.
Creado la estructura de directorio obligatoria .github/workflows.
Confirmado y subido estos cambios de vuelta a GitHub.
Con esta estructura establecida, ahora está listo para definir flujos de trabajo (workflows) de CI/CD editando los archivos YAML dentro del directorio workflows.