Crea una integración y una entrega continuas para tu integración


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

Información general

En este tutorial, automatizarás las implementaciones de Application Integration mediante una variable de configuración para una integración de ejemplo. 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 tiene como objetivo ilustrar el uso de las tareas Llamar a un punto final REST y Conectores. Puedes almacenar la integración de ejemplo en repositorios de GitHub que correspondan a los diferentes entornos y Google Cloud proyectos.

Objetivos

En este tutorial se explica 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.

Costes

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

Las instrucciones de este tutorial están diseñadas para que el uso de recursos no supere los límites de las Google Cloud funciones gratuitas de la nube y la oferta de prueba.

Cuando termines las tareas que se describen en este documento, puedes evitar que se te siga facturando eliminando los recursos que has creado. Para obtener más información, consulta la sección Limpiar.

Antes de empezar

  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.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

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

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  5. Create a service account:

    1. Ensure that you have the Create Service Accounts IAM role (roles/iam.serviceAccountCreator). Learn how to grant roles.
    2. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    3. Select your project.
    4. 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.

    5. Click Create and continue.
    6. 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).

    7. Click Continue.
    8. 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.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  7. Verify that billing is enabled for your Google Cloud project.

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

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  9. Create a service account:

    1. Ensure that you have the Create Service Accounts IAM role (roles/iam.serviceAccountCreator). Learn how to grant roles.
    2. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    3. Select your project.
    4. 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.

    5. Click Create and continue.
    6. 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).

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

  10. Crear un tema de Pub/Sub

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

      Ir a Temas

    2. Haz clic en Crear tema.

    3. En el campo ID de tema, introduce un ID para el tema. Para obtener más información sobre cómo asignar nombres a los temas, consulta las directrices para asignar nombres a temas, suscripciones, esquemas o capturas .

    4. Mantén la opción Añadir una suscripción predeterminada.

    5. No selecciones las otras opciones.

    6. Haz clic en Crear tema.

    Configurar un conector Pub/Sub

    1. En la Google Cloud consola, ve a la página Integration Connectors > Connections (Conectores de integración > Conexiones) y, a continuación, selecciona o crea un Google Cloud proyecto.

      Ve a la página Conexiones.

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

        Para ver la lista de todas las regiones admitidas, consulta Ubicaciones.

      2. Haz clic en SIGUIENTE.
    4. En la sección Detalles de la conexión, haz lo siguiente:
      1. Conector: selecciona Pub/Sub en la lista desplegable de conectores disponibles.
      2. Versión del conector: seleccione la versión del conector en la lista desplegable de versiones disponibles.
      3. En el campo Nombre de conexión, introduce pub-sub-connector.
      4. Cuenta de servicio: selecciona una cuenta de servicio que tenga los roles necesarios.
      5. ID de proyecto: Google Cloud ID del proyecto en el que se encuentra la instancia de Pub/Sub.
      6. ID de tema: introduce 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. Revisar: revisa los detalles de la conexión y la autenticación.
    7. Haz clic en Crear.

    Crear una integración

    Una vez que hayas configurado Application Integration, podrás crear una integración:

    1. En la consola de Google Cloud, ve a la página Application Integration (Integración de aplicaciones).

      Ir a Application Integration

    2. En el menú de navegación de la izquierda, haga clic en Integraciones para abrir la página Integraciones.
    3. Haga clic en Crear integración y proporcione los siguientes detalles en la página Crear integración:
      1. Nombre de la integración: escriba un nombre para la integración. Por ejemplo, build-cicd.
      2. Descripción: si quieres, escribe una descripción de la 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 Aprovisionar una nueva región. Para ver una lista de las regiones admitidas, consulta Ubicaciones de integración de aplicaciones.
      4. Cuenta de servicio: este campo aparece si has habilitado la gobernanza en tu región. Selecciona la cuenta de servicio de tu integración. Para saber cómo habilitar la gobernanza de tu región, consulta Editar región.
      5. Haz clic en Crear. Se abrirá la página del editor de integraciones, en la que podrás añadir tareas y activadores para crear tu integración.

    Crear un flujo de integración

    Añadir un activador de API y una tarea Llamar a un punto final REST

    Para añadir un activador de API, sigue estos pasos:
    1. En la Google Cloud consola, ve a la página Integración de aplicaciones.

      Ir a Application Integration

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

      Aparecerá la página Lista de integraciones, donde se muestran todas las integraciones disponibles en el proyecto de Google Cloud.

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

      Se abrirá la integración en el editor de integraciones.

    4. En la barra de navegación del editor de integraciones, haz clic en Activadores > Activador de API para añadir el activador.
    5. En la barra de navegación del editor de integración, haz clic en Tareas > Llamar a un punto final REST para añadir la tarea.
    6. Añade una conexión de borde desde el elemento Activador de API al elemento Llamar a un punto final REST. Para ello, coloca el cursor sobre un punto de control del elemento Activador de API y, a continuación, haz clic y arrastra una línea hasta un punto de control del elemento de tarea Llamar a un punto final REST.

    Crear variables de configuración

    Para crear variables de configuración, sigue estos pasos:
    1. En la barra de navegación del editor de integraciones, haga clic en (Mostrar u ocultar panel) para que se muestre el panel Variables.
    2. Haz clic en + Crear.
    3. En el panel Crear variable, haga lo siguiente:
      1. En Nombre, escribe url.

        Integración de aplicaciones añade el prefijo `CONFIG_ a las variables de configuración. Si quieres añadir 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`. Para obtener información sobre cómo descargar y subir integraciones, consulta Subir y descargar integraciones.

      2. En Tipo de variable, selecciona Variable de configuración.
      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 añadir la siguiente variable de configuración:
      • Nombre: connection_name
      • Tipo de variable: Config Variable
      • Tipo de datos: String

    Añadir y configurar Llamar a un punto final REST

    Para crear una variable de configuración, siga estos pasos:
    1. En el editor de integración, haz clic en la tarea Llamar a un punto final REST para abrir el panel de configuración de la tarea. A continuación, siga estos pasos:
      1. Despliega la sección Introducción de tareas.
      2. En URL base del endpoint, haga clic en Variable y añada $`CONFIG_url`$.

    Añadir y configurar una tarea de conectores

    1. En la barra de navegación del editor de integraciones, haz clic en Tarea > Conectores.
    2. Haz clic en Configurar conectores.
    3. En la lista Región, selecciona la región en la que has creado el conector Pub/Sub.
    4. En el campo Conexión, selecciona el conector Pub/Sub que has creado en el paso anterior.
    5. En la sección Tipo, selecciona Acciones.
    6. En la sección Set entities/actions (Definir entidades o acciones), en Actions (Acciones), selecciona publishMessage (Publicar mensaje).
    7. En Valor predeterminado, añade 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, despliega la sección Detalles de la conexión para actualizar el siguiente campo:
      1. En el campo Nombre de conexión, haz clic en Variable y selecciona $`CONFIG_connection_name`$.

    Añadir una tarea de asignación de datos

    1. En la barra de navegación del editor de integración, haz clic en Tarea > Asignación de datos.
    2. Añade una conexión de borde desde el elemento Llamar a un punto final REST al elemento Asignación de datos. Para ello, coloca el cursor sobre un punto de control del elemento Llamar a un punto final REST y, a continuación, haz clic y arrastra una línea hasta un punto de control del elemento de tarea Asignación de datos.
    3. Añade otra conexión de borde desde el elemento Asignación de datos al elemento Conectores. Para ello, coloca el cursor sobre un punto de control del elemento Asignación de datos y, a continuación, haz clic y arrastra una línea hasta un punto de control del elemento de tarea Conectores.
    4. En el panel de configuración de la tarea Asignación de datos, haga clic en Abrir editor de asignación de datos.
    5. Asigna la variable de salida de la tarea Llamar a un punto final REST a la variable de entrada de la tarea Conectores.

    Publicar la integración

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

      Aparecerá el cuadro de diálogo Publicar integración.

    2. En el cuadro de diálogo Publicar integración, introduce el valor de las siguientes variables de configuración:
      1. url: introduce el nombre de la URL del endpoint.
      2. connection_name: introduce el nombre del conector de Pub/Sub que has creado en el paso anterior.
    3. Haz clic en Publicar.
    4. Una vez que hayas publicado tu integración correctamente, podrás ver e inspeccionar los registros de ejecución de la integración publicada. Para ver los registros, haz clic en Registros en la barra de herramientas del editor de integraciones.

    Promover la integración en distintos entornos

    Para promocionar tu integración en diferentes entornos, puedes usar la herramienta integrationcli, que es de código abierto y te permite interactuar con las APIs de Application Integration y las APIs de Integration Connectors. Esta herramienta te permite gestionar entidades de integración, como integraciones, configuraciones de autenticación, etc. Para obtener información sobre cómo generar el scaffold de la integración y aplicar los cambios que genera, consulta el artículo Introducción a integrationcli del blog de la comunidad.

    También puedes promover cambios en los entornos configurando las canalizaciones de DevOps, por ejemplo, con Jenkins, GitLab o Cloud Build. 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 nuevo proyecto. Tendrás que crear los conectores en el nuevo proyecto manualmente, ya que actualmente no se pueden descargar. Cuando publiques la integración en el nuevo entorno, Application Integration te permitirá introducir valores para las variables de configuración.

    Siguientes pasos