Compila 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 diferentes proyectos de Google Cloud usando variables de configuración (vista previa).

Descripción general

En este instructivo, automatizarás las implementaciones de Application Integration usando la 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. El objetivo de este ejemplo es ilustrar el uso de las tareas Llamar a extremo de REST y Conectores. Puedes almacenar la integración de muestra en los repositorios de GitHub que corresponden 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.
  • Promociona tu integración a otro entorno.

Costos

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

Las instrucciones de este instructivo están diseñadas para mantener tu uso de recursos dentro de los límites de la oferta de prueba y funciones gratuitas de la nube 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. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

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

  4. Enable the Secret Manager API, Connectors API APIs.

    Enable the APIs

  5. Create a service account:

    1. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    2. Select your project.
    3. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    4. Click Create and continue.
    5. Grant the Pub/Sub Publisher (roles/pubsub.publisher) role to the service account.

      To grant the role, find the Select a role list, then select Pub/Sub Publisher (roles/pubsub.publisher).

    6. Click Continue.
    7. Click Done to finish creating the service account.

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

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

  8. Enable the Secret Manager API, Connectors API APIs.

    Enable the APIs

  9. Create a service account:

    1. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    2. Select your project.
    3. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    4. Click Create and continue.
    5. Grant the Pub/Sub Publisher (roles/pubsub.publisher) role to the service account.

      To grant the role, find the Select a role list, then select Pub/Sub Publisher (roles/pubsub.publisher).

    6. Click Continue.
    7. Click Done to finish creating the service account.

Crea 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. Para obtener más información sobre cómo asignar 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 Integration Connectors > Página Conexiones y, luego, seleccionar o crear 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. Haz 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 Autenticación, haz clic en SIGUIENTE.
  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 la integración de aplicaciones, 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 Integraciones.
  3. Haz clic en Crear integración y proporciona los siguientes detalles en la página Crear integración:
    1. Nombre de la integración: Ingresa un nombre para tu integración. Por ejemplo, build-cicd
    2. Descripción: De manera opcional, ingresa 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 quieres seleccionar no está aprovisionada, consulta Aprovisiona una región nueva. Para ver una lista de las regiones compatibles, consulta Ubicaciones de integración de aplicaciones.
    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. Para saber cómo habilitar la administració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 tasks y los activadores para compilar tu integración.

Crea un flujo de integración

Agrega un activador de API y una tarea Llamar a extremo 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, en la que se enumeran 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 Triggers > API Trigger para agregar el activador.
  5. En la barra de navegación del editor de integración, haz clic en Tasks > Llamar a extremo de REST para agregar la tarea.
  6. Agrega una conexión perimetral desde el elemento del activador de API al Llama al extremo de REST colocando el cursor sobre un punto de control del elemento Activador de API. Haz clic en una línea y arrástrala hasta un punto de control en el elemento de tarea Llamar a extremo de REST.

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.

      La integración de aplicaciones agrega el prefijo `CONFIG_ a las variables de configuración. Si deseas agregar la variable de configuración a tu integración mediante 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 Cadena.
    4. Haz clic en Crear.

      La variable de configuración aparece 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 Call REST Endpoint

Para crear una variable de configuración, sigue estos pasos:
  1. En el editor de integración, haz clic en la tarea Llamar a extremo de REST para abrir el panel de configuración de tareas. A continuación, haz lo siguiente:
    1. Expande la sección Task input.
    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 integración, haz clic en Task > Connectors.
  2. Haz clic en Configurar conectores.
  3. En la lista Región, selecciona la región en la que creaste tu 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 Configurar 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 la tarea 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 selecciona $`CONFIG_connection_name`$.

Agrega una tarea de asignación de datos

  1. En la barra de navegación del editor de integración, haz clic en Task > Data mapping.
  2. Agrega una conexión perimetral desde el elemento Llamar a extremo de REST al Asignación de datos colocando el cursor sobre un punto de control del elemento Llamar a extremo de REST Haz clic en una línea y arrástrala hasta un punto de control en el elemento de tarea Asignación de datos.
  3. Agrega otra conexión perimetral del elemento Asignación de datos al elemento Conectores. Para ello, coloca el cursor sobre un punto de control en el elemento Asignación de datos y, luego, haz clic en una línea y arrástrala hasta 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 a 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 Publish 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 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.

Promover la integración en todos los entornos

Para promover tu integración entre entornos, puedes usar la herramienta de integrationcli, que es una herramienta de código abierto que te permite interactuar con las APIs de Application Integration y 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. Para obtener información sobre cómo generar el andamiaje para la integración y aplicar los cambios que genera, consulta Introducción a integrationcli en el blog de la comunidad.

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

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

¿Qué sigue?