Crea CI/CD para tu integración


En este instructivo, se describe cómo automatizar la promoción de una integración entre diferentes entornos en distintos proyectos de Google Cloud usando variables de configuración (vista previa).

Descripción general

En este instructivo, automatizarás las implementaciones de Application Integration con una variable de configuración para una integración de muestra. Este flujo de integración de muestra llama a una API y publica la respuesta de la API en un tema de Pub/Sub. Este ejemplo muestra el uso de las tareas Call REST Endpoint y Connectors. Puedes almacenar la integración de muestra en repositorios de GitHub que correspondan a los diferentes entornos y proyectos de Google Cloud.

Objetivos

En este instructivo, se muestra cómo completar las siguientes tareas en tu integración:

  • Crea una integración.
  • Crea variables de configuración y úsalas en tu integración.
  • Promueve tu integración a otro entorno.

Costos

En este instructivo, usarás los siguientes componentes facturables de Google Cloud:

Las instrucciones de este instructivo se diseñaron para mantener el uso de los recursos dentro de los límites de las funciones gratuitas de la nube y la oferta de prueba de Google Cloud.

Cuando finalices las tareas que se describen en este documento, puedes borrar los recursos que creaste para evitar que continúe la facturación. Para obtener más información, consulta Cómo realizar una limpieza.

Antes de comenzar

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  3. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  4. Habilita las API de Secret Manager API, Connectors API.

    Habilita las API

  5. Crear una cuenta de servicio:

    1. En la consola de Google Cloud, ve a la página Crear cuenta de servicio.

      Ve a Crear cuenta de servicio
    2. Elige tu proyecto.
    3. Ingresa un nombre en el campo Nombre de cuenta de servicio. La consola de Google Cloud completa el campo ID de cuenta de servicio en función de este nombre.

      Opcional: en el campo Descripción de la cuenta de servicio, ingresa una descripción. Por ejemplo, Service account for quickstart.

    4. Haz clic en Crear y continuar.
    5. Otorga el rol Pub/Sub Publisher (roles/pubsub.publisher) a la cuenta de servicio.

      Para otorgar el rol, busca la lista Seleccionar un rol y, luego, selecciona Pub/Sub Publisher (roles/pubsub.publisher).

    6. Haga clic en Continuar.
    7. Haz clic en Listo para terminar de crear la cuenta de servicio.

  6. En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  7. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  8. Habilita las API de Secret Manager API, Connectors API.

    Habilita las API

  9. Crear una cuenta de servicio:

    1. En la consola de Google Cloud, ve a la página Crear cuenta de servicio.

      Ve a Crear cuenta de servicio
    2. Elige tu proyecto.
    3. Ingresa un nombre en el campo Nombre de cuenta de servicio. La consola de Google Cloud completa el campo ID de cuenta de servicio en función de este nombre.

      Opcional: en el campo Descripción de la cuenta de servicio, ingresa una descripción. Por ejemplo, Service account for quickstart.

    4. Haz clic en Crear y continuar.
    5. Otorga el rol Pub/Sub Publisher (roles/pubsub.publisher) a la cuenta de servicio.

      Para otorgar el rol, busca la lista Seleccionar un rol y, luego, selecciona Pub/Sub Publisher (roles/pubsub.publisher).

    6. Haga clic en Continuar.
    7. Haz clic en Listo para terminar de crear la cuenta de servicio.

Crear un tema de Pub/Sub

  1. En la consola de Google Cloud, ve a la página Temas de Pub/Sub.

    Ir a temas

  2. Haga clic en Crear tema.

  3. En el campo ID de tema, ingresa un ID para tu tema. Si quieres obtener más información sobre cómo otorgar nombres a temas, consulta Lineamientos para asignar nombres a temas, suscripciones, esquemas o instantáneas.

  4. Mantén la opción Agregar una suscripción predeterminada.

  5. No selecciones las otras opciones.

  6. Haz clic en Crear tema.

Configura un conector de Pub/Sub

  1. En la consola de Google Cloud, ve a la página Conectores de integración > Conexiones y, luego, selecciona o crea un proyecto de Google Cloud.

    Ir a la página Conexiones

  2. Haz clic en + Crear nueva para abrir la página Crear conexión.
  3. En la sección Ubicación, elige la ubicación para la conexión.
    1. Región: selecciona una ubicación de la lista desplegable.

      Para obtener la lista de todas las regiones compatibles, consulta Ubicaciones.

    2. Haga clic en SIGUIENTE.
  4. En la sección Detalles de la conexión, completa lo siguiente:
    1. Conector: Selecciona Pub/Sub de la lista desplegable de conectores disponibles.
    2. Versión del conector: selecciona la versión del conector de la lista desplegable de versiones disponibles.
    3. En el campo Nombre de la conexión, ingresa pub-sub-connector.
    4. Cuenta de servicio: Selecciona una cuenta de servicio que tenga los roles necesarios.
    5. ID del proyecto: El ID del proyecto de Google Cloud en el que reside la instancia de Pub/Sub.
    6. ID del tema: Ingresa el nombre de tu tema de Pub/Sub.
    7. Haz clic en Siguiente.
  5. En la sección Authentication, haz clic en NEXT.
  6. Revisa: Revisa tus detalles de conexión y autenticación.
  7. Haz clic en Crear.

Cómo crear una integración nueva

Después de Configurar Application Integration, puedes crear una integración nueva:

  1. En la consola de Google Cloud, ve a la página Application Integration.

    Ir a Application Integration

  2. En el menú de navegación, haz clic en Integraciones. Aparecerá la página Integrations List.
  3. Haz clic en Create integration y proporciona los siguientes detalles en la página Create Integration:
    1. Nombre de la integración: Ingresa un nombre para tu integración. Por ejemplo, build-cicd
    2. Descripción: También puedes ingresar una descripción para tu integración. Por ejemplo, Demo integration created for CICD tutorial
    3. Región: Selecciona la región us-central1 de la lista de regiones aprovisionadas. Si la región que deseas seleccionar no está aprovisionada, consulta Aprovisiona una región nueva. Para ver una lista de las regiones admitidas, consulta Ubicaciones de Application Integration.
    4. Cuenta de servicio: Este campo aparece si habilitaste la administración para tu región. Selecciona la cuenta de servicio para tu integración. Si quieres obtener información para habilitar la administración en tu región, consulta Editar región.
    5. Haz clic en Crear. Se abrirá la página del editor de integración, en la que puedes agregar las tareas y los activadores para compilar tu integración.

Crea un flujo de integración

Agrega un activador de API y un extremo de llamada de REST

Para agregar un activador del Activador de API, sigue estos pasos:
  1. En la consola de Google Cloud, ve a la página Application Integration.

    Ir a Application Integration

  2. En el menú de navegación, haz clic en Integraciones.

    Aparecerá la página Integrations List (Lista de integraciones) y aparecerá una lista de todas las integraciones disponibles en el proyecto de Google Cloud.

  3. Selecciona la integración de build-cicd.

    Esto abrirá la integración en la página del editor de integración.

  4. En la barra de navegación del editor de integración, haz clic en Activadores > Activador de API para agregar el activador.
  5. En la barra de navegación del editor de integraciones, haz clic en Tasks > Llamar a extremo de REST para agregar la tarea.
  6. Agrega una conexión perimetral desde el elemento activador de la API al elemento Call REST Endpoint. Para ello, coloca el cursor sobre un punto de control en el elemento Activador de la API y, luego, haz clic y arrastra una línea a un punto de control en el elemento de tarea Call REST Endpoint.

Crea variables de configuración

Para crear variables de configuración, sigue estos pasos:
  1. En la barra de navegación del editor de integración, haz clic en (Panel de activación) para abrir el panel Variables.
  2. Haz clic en +Crear.
  3. Haz lo siguiente en el panel Crear variable:
    1. En Nombre, ingresa url.

      Application Integration agrega el prefijo `CONFIG_ a las variables de configuración. Si deseas agregar la variable de configuración a tu integración mediante las APIs, usa el siguiente formato para las variables de configuración: `CONFIG_CONFIG_VARIABLE_NAME`. Si deseas obtener información para descargar y subir integraciones, consulta cómo subir y descargar integraciones.

    2. En Tipo de variable, selecciona Config Variable.
    3. En Tipo de datos, selecciona String.
    4. Haz clic en Crear.

      La variable de configuración aparecerá en el panel Variables.

  4. Repite los pasos 2 y 3 para agregar la siguiente variable de configuración:
    • Nombre: connection_name
    • Tipo de variable: Config Variable
    • Tipo de datos: String

Agrega y configura Llamar a extremo de REST

Para crear una variable de configuración, sigue estos pasos:
  1. En el editor de integraciones, haz clic en la tarea Call REST Endpoint para abrir el panel de configuración de tareas. A continuación, haz lo siguiente:
    1. Expande la sección Entrada de tareas.
    2. En URL base del extremo, haz clic en Variable y agrega $`CONFIG_url`$.

Agrega y configura una tarea Conectores

  1. En la barra de navegación del editor de integraciones, haz clic en Tarea > Conectores.
  2. Haz clic en Configure Connectors.
  3. En la lista Región, selecciona la región en la que creaste el conector de Pub/Sub.
  4. En el campo Conexión, selecciona el conector de Pub/Sub que creaste en el paso anterior.
  5. En la sección Tipo, selecciona Acciones.
  6. En la sección Establece entidades/acciones, en Acciones, selecciona publishMessage.
  7. En Valor predeterminado, agrega el valor predeterminado de la variable de configuración.
  8. Haz clic en Crear.
  9. En el panel de configuración de tareas Conectores, expande la sección Detalles de la conexión para actualizar el siguiente campo:
    1. En el campo Nombre de la conexión, haz clic en Variable y, luego, selecciona $`CONFIG_connection_name`$.

Agrega una tarea de asignación de datos

  1. En la barra de navegación del editor de integraciones, haz clic en Tarea > Asignación de datos.
  2. Agrega una conexión perimetral desde el elemento Call REST Endpoint al elemento Data Mapping. Para ello, desplázate sobre un punto de control en el elemento Call REST Endpoint y, luego, haz clic y arrastra una línea a un punto de control en el elemento de tarea Data Mapping.
  3. Para agregar otra conexión perimetral del elemento Asignación de datos al elemento Conectores, desplázate sobre un punto de control en el elemento Asignación de datos y, luego, haz clic y arrastra una línea a un punto de control en el elemento de tarea Conectores.
  4. En el panel de configuración de la tarea de Asignación de datos, haz clic en Abrir el Editor de asignaciones de datos.
  5. Asigna la variable de salida de la tarea Llamar a extremo de REST y la variable de entrada de la tarea Conectores.

Publica la integración

Para publicar la integración, sigue estos pasos:
  1. Para publicar la integración, haz clic en Publicar en la barra de herramientas del editor de integración.

    Aparecerá el diálogo Publish integration.

  2. En el diálogo Publish integration, ingresa el valor de las siguientes variables de configuración:
    1. url: Ingresa el nombre de la URL del extremo.
    2. connection_name: Ingresa el nombre del conector de Pub/Sub que creaste en el paso anterior.
  3. Haz clic en Publish (Publicar).
  4. Una vez que publiques tu integración de forma correcta, podrás ver e inspeccionar los registros de ejecución de la integración publicada. Para ver registros, haz clic en Registros en la barra de herramientas del editor de integración.

Promueve la integración entre entornos

Para promover tu integración entre entornos, puedes usar la herramienta integrationcli, que es una herramienta de código abierto que te permite interactuar con las APIs de Application Integration y con las APIs de Integration Connectors. Esta herramienta te permite administrar entidades de integración, como integraciones, parámetros de configuración de autenticación, etcétera. Si deseas obtener información para generar la estructura de la integración y aplicar los cambios generados por esta, consulta Introducción a integrationcli en el blog de la comunidad.

También puedes promover los cambios en todos los entornos si configuras canalizaciones de DevOps, por ejemplo, con Jenkins, GitLab, Cloud Build, etcétera. Para obtener más información, consulta Integración en Cloud Build.

Si no quieres usar integrationcli, puedes descargar y subir la integración manualmente a un proyecto nuevo. Deberás crear los conectores en el proyecto nuevo de forma manual, ya que, por el momento, no se pueden descargar. Cuando publicas la integración en el nuevo entorno, Application Integration te permite ingresar valores para las variables de configuración.

¿Qué sigue?