Actividad 2. API Spring Boot con GitHub Actions y AWS Elastic Beanstalk

4. FASE 3A: Creación del repositorio en GitHub

Pipeline real en un proyecto Spring Boot

Objetivo de la fase:

Subir el proyecto a GitHub y configurar un pipeline de Integración Continua que ejecute automáticamente:

./mvnw test

cada vez que se produce un cambio en el repositorio.

A partir de esta fase:

  • no se ejecutan validaciones manuales,

  • el proyecto se valida automáticamente,

  • los errores se detectan antes del despliegue.

1. Creación del repositorio en GitHub

Desde GitHub se crea un nuevo repositorio:

  • Repository name: dam-ci-cd-api-001

  • Visibility: Public o Private (indiferente)

No marcar ninguna de estas opciones:

  • Add a README

  • Add .gitignore

  • Add a license

El repositorio debe crearse vacío, ya que el código ya existe en local.

2 Conectar el repositorio local con GitHub

Desde el terminal de IntelliJ, en la raíz del proyecto:

Comprobación de remotos
git remote -v

Si el proyecto no está conectado a ningún repositorio remoto, no debe aparecer nada.

Añadir remoto

Utilizando el Quick setup, ya nos deja todo preparado:

Utilizando la URL del repositorio recién creado:

git remote add origin https://github.com/damiansu/dam-ci-cd-api-001.git

Se verifica la conexión:

git remote -v

 
Nota sobre la rama main

En la documentación de GitHub puede aparecer el comando: 

git branch -M main

Este comando sirve para renombrar la rama actual a main.

En este proyecto no es necesario, ya que la rama principal ya se llama main.

Subir el proyecto a GitHub

Para realizar el primer push es necesario:

  • el nombre de usuario de GitHub (no el correo),

  • un Personal Access Token.

Un token de acceso personal:

  • solo se muestra una vez al crearse,

  • si se pierde, debe generarse uno nuevo.

Configuración recomendada del token:

  • Expiration: 30 o 90 días

  • Scope: repo (solo este)

git push -u origin main

Verificación visual

En GitHub:

  1. Abre el repositorio dam-ci-cd-api-001

  2. Refresca la página

    • pom.xml

    • mvnw

    • .mvn/

    • src/

      Debes ver:

Si esto aparece, el repositorio está correctamente sincronizado.