Modo de implementación avanzada

Con la integración predeterminada de Looker con Git, los desarrolladores de Looker confirman sus cambios en su rama de desarrollo y, luego, los combinan en la rama de producción. Luego, cuando realices la implementación en el entorno de Looker, este usará la confirmación más reciente de la rama de producción. (consulta la página de documentación Cómo control de versión y realizar implementaciones para obtener el flujo de trabajo predeterminado de Git y otras opciones para implementaciones avanzadas de Git).

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

El modo de implementación avanzado ayuda a consolidar repositorios en flujos de trabajo de desarrolladores de 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 se habilita el modo de implementación avanzado, Looker no les solicita a los desarrolladores que implementen sus cambios en producción. En su lugar, Looker les solicita a los desarrolladores que combinen sus cambios en la rama de producción. 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, haz lo siguiente:

  1. En el IDE de Looker, navega a la página Project Configuration seleccionando el ícono Settings en el menú de íconos y, luego, la pestaña Configuration.
  2. En la página Project Configuration, selecciona la casilla de verificación junto a Enable Advanced Deploy Mode en la sección Deployment.
  3. Selecciona el botón Guardar configuración del proyecto para guardar el cambio.

Control de versiones con el modo de implementación avanzada

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

Los cambios se implementan en producción con un webhook, la API o el administrador de implementaciones.

Administrador de Deployment

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

Para acceder al administrador de implementaciones, selecciona el ícono Deploy en el menú de íconos.

El administrador de implementaciones muestra todas las confirmaciones y etiquetas que se implementaron anteriormente con el modo de implementación avanzado.

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 en la rama de producción.

En el caso de los proyectos que hayan usado 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 hay, y también indicará qué confirmación es la versión actual que se usa para la producción.

Si la rama de producción tiene confirmaciones más recientes que la confirmación implementada, el administrador de implementaciones muestra esta información y la confirmación más reciente que tus desarrolladores de Looker fusionaron en la rama de producción.

Cómo implementar una confirmación desde el administrador de implementaciones

Existen varias formas de implementar una confirmación desde el administrador de implementaciones:

  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 en la rama de producción remota. (Si deseas implementar una confirmación desde una rama diferente, usa el webhook o el extremo de la API del modo de implementación avanzado).
  2. Para implementar la confirmación más reciente que se fusionó en la rama de producción remota, haz clic en el botón Implementar la versión más reciente.
  3. Para implementar una confirmación o etiqueta que se haya implementado anteriormente, haz clic en el menú de tres puntos Opciones del administrador de implementaciones y, luego, en Implementar en producción.

Si eliges una confirmación que no se implementó anteriormente, el administrador de implementaciones mostrará el menú Deploy Commit. Para implementar una confirmación desde el menú Deploy Commit, sigue estos pasos:

  1. Para implementar la confirmación sin asignarle una etiqueta, selecciona Implementar sin etiquetar y Implementar en el entorno. De lo contrario, mantén seleccionada la opción Etiquetar y, luego, implementar.
  2. Especifica una etiqueta para la confirmación. Una etiqueta de Git marca la importancia de la confirmación en el historial del repositorio, como un número de versión o un nombre de versión. Ten en cuenta lo siguiente sobre las etiquetas de 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 de Git no pueden contener espacios ni ciertos caracteres especiales. Consulta la documentación de referencia de Git para conocer las reglas de asignación de nombres de referencias en Git.
  3. De manera opcional, puedes agregar una descripción para la etiqueta para proporcionar 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, el administrador de implementaciones la marcará como la versión actual en tu entorno de producción de Looker.

Implementación con webhooks

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

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

Hay dos webhooks disponibles para implementar cambios en producción con el modo de implementación avanzado habilitado. Uno es para implementar el head de una rama y el otro es para implementar una etiqueta o un SHA de Git específicos.

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

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

Implementación con la API

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

Para implementar con la API, el usuario de la API que realiza la llamada deberá tener el permiso deploy. Consulta las páginas de documentación de autenticación de la API de Looker y Cómo comenzar a usar la API para obtener más información sobre cómo autenticar y usar 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. Los siguientes ejemplos son para los métodos HTTPS y SDK.

HTTPS

Para implementar manualmente con el extremo de API de deploy_ref_to_production, consulta los siguientes ejemplos, que usan el método HTTPS. Para obtener más información y ejemplos de cómo llamar a la API de forma manual con solicitudes CURL, consulta el archivo de lectura Cómo autenticarse en la API de GitHub 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 la cabeza de una rama o una SHA o etiqueta de confirmación específica a través del extremo de API de deploy_ref_to_production:

Implementa la cabeza 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 SDKs 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 la cabeza 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>})