Automatiza las compilaciones con Cloud Build

En esta página, se explica cómo usar Cloud Build para automatizar las compilaciones.

Cloud Build usa activadores de compilación para habilitar las automatizaciones de CI/CD. Puedes configurar activadores para escuchar los eventos entrantes, como cuando un se envía una confirmación nueva a un repositorio. O cuando se inicia una solicitud de extracción, y, luego, invocar automáticamente una compilación cuando ingresan eventos nuevos.

Crearás un activador y lo configurarás para que invoque una compilación cada vez que envíes un cambio a un repositorio de GitHub.


Para seguir la guía paso a paso sobre esta tarea directamente en el editor de Cloud Shell, haz clic en Guiarme:

GUIARME


Antes de comenzar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Cloud Build API.

    Enable the API

  5. Install the Google Cloud CLI.
  6. To initialize the gcloud CLI, run the following command:

    gcloud init
  7. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  8. Make sure that billing is enabled for your Google Cloud project.

  9. Enable the Cloud Build API.

    Enable the API

  10. Install the Google Cloud CLI.
  11. To initialize the gcloud CLI, run the following command:

    gcloud init
  12. Si aún no tienes una cuenta de GitHub, crea una.

  13. Si tienes configurada la autenticación de dos factores en GitHub, crea un token de acceso personal para usarlo en lugar de una contraseña de GitHub con la línea de comandos.

Bifurca y clona un repositorio de GitHub de muestra

Necesitarás algún código fuente de muestra para compilar. En esta sección, clonarás un repositorio de origen existente que contiene un ejemplo de Hello World en Go a tu propia cuenta de usuario de GitHub.
  1. Si aún no tienes una cuenta de GitHub, crea una.

  2. Si tienes configurada la autenticación de dos factores en GitHub, crea un token de acceso personal para usarlo en lugar de una contraseña de GitHub con la línea de comandos.

  3. Bifurca el repositorio cloud-build-samples en tu propia cuenta de GitHub:

    1. Ve al repositorio cloud-build-samples de Cloud Build.

    2. Haz clic en el ícono Fork ubicado en la esquina superior derecha de la página.

    3. Haz clic en la cuenta de usuario de GitHub en la que deseas bifurcar el repositorio.

      Se te redireccionará automáticamente a la página con la versión bifurcada del repositorio cloud-build-samples.

  4. Abre una terminal en tu entorno local.

  5. Clona el repositorio bifurcado mediante la ejecución del siguiente comando, en el que GITHUB_USERNAME es el nombre de usuario de tu cuenta de GitHub:

    git clone https://github.com/GITHUB_USERNAME/cloud-build-samples.git

Conecta Cloud Build a tu repositorio

Para compilar código fuente en GitHub con activadores, primero debes conectar Cloud Build a tu repositorio de GitHub. En esta sección, conecta tu repositorio cloud-build-samples a Cloud Build.
  1. En el menú de navegación de la consola de Google Cloud, haz clic en Cloud Build > Activadores.

    Abrir la página Activadores

  2. Selecciona tu proyecto y haz clic en Open.

  3. Haz clic en Conectar repositorio.

  4. En Seleccionar origen, selecciona GitHub (app de GitHub de Cloud Build).

  5. Haz clic en Continuar.

  6. Autentica la cuenta de GitHub.

  7. En la sección Selecciona un repositorio, elige el nombre de usuario de tu cuenta de GitHub. Si tu nombre de usuario no aparece en la lista, haz lo siguiente:

    1. En la lista Cuenta de GitHub, haz clic en + Agregar.

      Aparecerá una ventana emergente para instalar la app de GitHub de Cloud Build.

    2. Haz clic en tu nombre de usuario de GitHub.

    3. Haz clic en Only certain repositories para instalar la app de GitHub de Cloud Build en determinados repositorios.

    4. En el menú desplegable, selecciona GITHUB_USERNAME/cloud-build-samples, allí GITHUB_USERNAME es el nombre de usuario de tu cuenta de GitHub.

    5. Haz clic en Install.

      Es posible que se te solicite ingresar la contraseña asociada a tu cuenta de GitHub antes de continuar.

    6. Después de la instalación de la app de GitHub de Cloud Build, podrás ver tu nombre de usuario en el menú desplegable del campo Cuenta de GitHub. Selecciona tu nombre de usuario.

  8. En Repositorio, selecciona GITHUB_USERNAME/cloud-build-samples.

  9. Haz clic en la marca de verificación para aceptar los términos y condiciones de la conexión del activador.

  10. Haz clic en Conectar.

  11. Haz clic en Listo.

Crearás un activador en la siguiente sección.

Crear un activador

  1. Abre la página Activadores en la consola de Google Cloud:

    Abrir la página Activadores

  2. Selecciona el proyecto en el menú desplegable del selector de proyectos, que se ubica en la parte superior de la página.

  3. Haz clic en Abrir.

  4. En la página Activadores, haz clic en Crear activador.

  5. En la página Crear activador, ingresa la siguiente configuración:

    • Nombre: Ingresa hello-world-trigger como nombre del activador.

    • Evento: Selecciona Enviar a una rama como evento del repositorio para invocar el activador.

    • Fuente: Selecciona el repositorio cloud-build-samples como el origen que contiene el código fuente y el archivo de configuración de compilación.

    • Configuración de compilación: Elige Archivo de configuración de Cloud Build como archivo de configuración de compilación.

    • Ubicación del archivo de configuración de Cloud Build: Especifica la ruta del archivo de configuración de Cloud Build como quickstart-automate/cloudbuild.yaml.

  6. Haz clic en Crear para guardar el activador de compilación.

Confirma un cambio

En esta sección, confirmarás un cambio en tu cloud-build-samples clonado. en tu propia cuenta de GitHub.

  1. En la terminal, navega al directorio quickstart-automate:

    cd cloud-build-samples/quickstart-automate
  2. Abre el archivo main.go y actualiza la línea que contiene "Hello, world!" por "Hello, world!"

      package main
    
      import (
          "fmt"
      )
    
      func main() {
          fmt.Println("Hello, universe!")
      }
      
  3. Revisa cloudbuild.yaml, que es el archivo de configuración de compilación que usa Cloud Build. Cuando se invoca una compilación con un activador, el paso de compilación de este archivo le indica a Cloud Build que use la imagen golang de Docker Hub para compilar y ejecutar el archivo main.go.

       steps:
       - name: golang
         script: go run quickstart-automate/main.go
       
  4. Vuelve al directorio raíz del repositorio:

       cd ..
  5. Ejecuta los siguientes comandos para confirmar los cambios en GitHub:

        
        git add quickstart-automate/main.go
        git commit -m "update text"
        git push

    Es posible que debas ingresar tus credenciales cuando envíes código al repositorio. Si se te solicita, ingresa tu nombre de usuario y contraseña o un token de autenticación.

Ya enviaste un cambio a tu repositorio. Tu envío hará que el activador genere una compilación automática.

Ver detalles de compilación

En esta sección, verás los detalles de compilación asociados con tu compilación invocada después de confirmar un cambio.
  1. En el menú de navegación de la consola de Google Cloud, haz clic en Cloud Build > Historial.

    Abrir la página de Cloud Build

  2. Selecciona tu proyecto y haz clic en Open (Abrir).

    Verás la página Historial de compilación:

    Captura de pantalla de la página historial de compilación para automatizar

  3. En la columna Compilación, haz clic en el nombre de una compilación.

  4. En la página Detalles de compilación, haz clic en Artefactos de compilación.

    Verás un resultado similar al siguiente:

    Captura de pantalla de artefactos de compilación

  5. Para ver el registro de compilación, haz clic en el ícono de descarga y consulta el archivo descargado.

Invocaste correctamente una compilación de Cloud Build mediante un activador y visualizaste los detalles de la compilación.

Limpia

Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página.

  1. En el menú de navegación de la consola de Google Cloud, haz clic en Cloud Build > Activadores.

    Abrir la página Activadores

  2. Selecciona tu proyecto y haz clic en Open.

  3. En la fila hello-world-trigger, haz clic en el menú de acciones (tres puntos verticales) ubicado en el extremo derecho de la fila.

  4. Selecciona Borrar.

Ya borraste el activador asociado al repositorio clonado.

¿Qué sigue?