Modo de implementación avanzada

Con la integración predeterminada de Looker Git, los desarrolladores de Looker confirman los cambios en su rama de desarrollo y, luego, la fusionan en la rama de producción. Luego, cuando realices una implementación en el entorno de Looker, Looker usará la confirmación más reciente en la rama production. Consulta la página de documentación Implementa y usa el control de versión para conocer el flujo de trabajo de Git predeterminado y otras opciones de implementaciones avanzadas de Git.

Para implementaciones avanzadas de Git en las que no quieres que se use la confirmación más reciente en tu rama de producción en tu entorno de Looker, un administrador de Looker puede habilitar el modo de implementación avanzada. Cuando está habilitado, el modo de implementación avanzado permite que un desarrollador con permiso deploy especifique una etiqueta o SHA de confirmación diferente para implementar en tu entorno de producción de Looker, en lugar de usar la confirmación más reciente en la rama production. Si quieres implementar una confirmación desde una rama diferente, puedes usar el modo de implementación avanzado de webhook o de extremo de API.

El modo de implementación avanzado ayuda a consolidar los repositorios en flujos de trabajo de desarrollador para varios entornos, en los que cada entorno apunta a una versión diferente de una base de código. También les brinda a uno o varios desarrolladores o administradores un mayor control sobre los cambios que se implementan en producción.

Cuando el modo de implementación avanzada está habilitado, Looker no solicita a los desarrolladores que implementen sus cambios en la producción. En cambio, Looker les pide a los desarrolladores que combinen sus cambios en la rama production. Desde allí, los cambios solo se pueden implementar de las siguientes maneras:

Habilita el modo de implementación avanzada

Para habilitar el modo de implementación avanzada, sigue estos pasos:

  1. Selecciona el ícono Configuración del menú de íconos para navegar a la pestaña Configuración de la página Configuración del proyecto.
  2. Selecciona la casilla de verificación junto a Habilitar el modo de implementación avanzada, en la sección Implementación.
  3. Selecciona el botón Save Project Configuration para guardar los cambios.

Control de versión con modo de implementación avanzado

Cuando se habilita el modo de implementación avanzada, los desarrolladores ya no pueden implementar en producción desde Looker. En cambio, cuando el desarrollador realice una confirmación, el botón Git le pedirá que combine sus cambios en la rama principal en lugar de pedirle que lo implemente en producción.

Los cambios se implementan en producción a través de un webhook, la API o el Deployment Manager.

Deployment Manager

En el caso de los proyectos que tengan habilitado el modo de implementación avanzado, los desarrolladores de Looker que tengan el permiso deploy pueden usar Deployment Manager para implementar una confirmación o etiqueta en su entorno de producción de Looker.

Puedes acceder a Deployment Manager seleccionando el ícono Deploy en el menú de íconos.

Deployment Manager muestra todas las confirmaciones y etiquetas que se implementaron previamente con el modo de implementación avanzada.

Si aún no usaste el modo de implementación avanzado para implementar una confirmación, haz clic en el botón Seleccionar confirmación para ver el historial de confirmaciones con las confirmaciones que tus desarrolladores de Looker combinaron con la rama production.

En el caso de los proyectos que usaron el modo de implementación avanzado para implementar una confirmación, el historial de confirmaciones también mostrará las etiquetas asociadas a una confirmación, si las hubiera, y también indicará qué confirmación es la versión actual que se usa para la producción.

Si la rama production tiene confirmaciones más recientes que la confirmación implementada, Deployment Manager muestra esta información y la confirmación más reciente que tus desarrolladores de Looker combinaron con la rama production.

Implementa una confirmación desde Deployment Manager

Existen varias formas de implementar una confirmación desde Deployment Manager:

  1. Para implementar una confirmación que aún no se implementó, haz clic en el botón Seleccionar confirmación para elegir entre todas las confirmaciones que se combinaron con la rama de producción remota. Si quieres implementar una confirmación desde una rama diferente, usa el modo de implementación avanzada webhook o el extremo de API.
  2. Para implementar la confirmación combinada más reciente en la rama remote production, haz clic en el botón Deploy Latest.
  3. Para implementar una confirmación o etiqueta que se implementó anteriormente, haz clic en el menú de tres puntos Options de Deployment Manager y, luego, en Deploy to Production.

Si eliges una confirmación que no se implementó anteriormente, Deployment Manager mostrará el menú Implementar confirmación. Para implementar una confirmación desde el menú Implementar confirmación, sigue estos pasos:

  1. Para implementar la confirmación sin asignarle una etiqueta, selecciona Implementar sin etiquetar y, luego, Implementar en el entorno. De lo contrario, mantén seleccionada la opción Etiquetar e implementar.
  2. Especifica una etiqueta para la confirmación. Una etiqueta Git marca la importancia de la confirmación en el historial del repositorio, como el número o nombre de la versión. Ten en cuenta lo siguiente sobre las etiquetas Git:

    • Las etiquetas de Git deben ser únicas dentro del repositorio de Git. No puedes usar la misma etiqueta para dos confirmaciones diferentes en tu repositorio.
    • Las etiquetas Git no pueden contener espacios ni ciertos caracteres especiales. Consulta la documentación de referencia de Git si quieres conocer las reglas para asignar nombres a referencias en Git.
  3. De forma opcional, puedes agregar una descripción a la etiqueta para brindar más detalles sobre la confirmación.

  4. Selecciona Implementar en el entorno para implementar la confirmación en la versión de producción de tu instancia de Looker.

Una vez que implementes una confirmación, Deployment Manager la marcará como la versión actual en tu entorno de producción de Looker.

Implementa con webhooks

En el caso de los proyectos con el modo de implementación avanzado, puedes usar el webhook de implementación para implementar los cambios en la producción.

Para configurar el webhook de implementación, primero debes agregar un secreto de webhook para tu proyecto de Looker desde la página Configuración del proyecto. Esto es para garantizar que solo las partes autorizadas puedan activar el webhook de implementación.

Hay dos webhooks disponibles para implementar cambios en la producción con el modo de implementación avanzado habilitado. Un webhook sirve para implementar el encabezado de una rama y el otro, para implementar una etiqueta o SHA de Git específica.

El webhook para implementar el encabezado de una rama usa este formato:

<Looker URL>/webhooks/projects/<LookML project name>/deploy/branch/<Git branch name>

El webhook para implementar una etiqueta o SHA de confirmación usa este formato:

<Looker URL>/webhooks/projects/<LookML project name>/deploy/ref/<commit SHA or tag>

Reemplaza la información entre los corchetes angulares < > por la información específica de tu dirección de instancia, proyecto de LookML y nombre de la rama o SHA/etiqueta de confirmación. Este es un ejemplo de webhook para implementar el nombre de etiqueta v1.0 para el proyecto e_faa en la instancia docsexamples.dev.looker.com de Looker:

https://docsexamples.dev.looker.com/webhooks/projects/e_faa/deploy/ref/v1.0

Implementa con la API

En el caso de los proyectos con el modo de implementación avanzado, puedes usar la API de Looker para implementar cambios en la producción.

Para implementar con la API, el usuario de la API que realice la llamada deberá tener el permiso deploy. Consulta las páginas de documentación Autenticación de la API de Looker y Comienza a usar la API para obtener más información sobre la autenticación y el uso de la API de Looker.

Para implementar con la API, usa el extremo deploy_ref_to_production. Se puede llamar a este extremo de varias maneras diferentes. Los siguientes ejemplos son para los métodos HTTPS y SDK.

HTTPS

Para implementar de forma manual con el extremo de API de deploy_ref_to_production, consulta los siguientes ejemplos, en los que se usa el método HTTPS. Para obtener más información y ejemplos de llamadas manuales a la API mediante solicitudes CURL, consulta el archivo readme de GitHub Cómo autenticarte en la API o usa el Explorador de APIs. Puedes instalar el Explorador de APIs en tu instancia de Looker desde Looker Marketplace.

Usa los siguientes ejemplos en una solicitud HTTPS para implementar el encabezado de una rama, o bien una etiqueta o SHA de confirmación específica a través del extremo de API de deploy_ref_to_production:

Implementa el encabezado de una rama: <HOST_URL>/api/4.0/projects/<PROJECT_ID>/deploy_ref_to_production?branch=<BRANCH_NAME>

Implementa un SHA o una etiqueta de confirmación: <HOST_URL>/api/4.0/projects/<PROJECT_ID>/deploy_ref_to_production?ref=<SHA_OR_TAG>

SDK

Como alternativa, usa uno de los SDK de Looker en lugar de realizar solicitudes manuales a la API. Los SDKs controlan los detalles de la autenticación, la serialización de parámetros y respuestas, y otras inquietudes.

La implementación con deploy_ref_to_production con el método del SDK se ve de la siguiente manera:

Implementa el encabezado de una rama: deploy_ref_to_production(<PROJECT_ID>, {branch: <BRANCH_NAME>})

Implementa un SHA o una etiqueta de confirmación: deploy_ref_to_production(<PROJECT_ID>, {ref: <SHA_OR_TAG>})