Configurar los ajustes de control de versiones del proyecto

En esta página se describe cómo configurar los elementos de tu proyecto para integrarlos con Git y controlar las versiones.

Configuración del proyecto

Para ver la configuración de tu proyecto, ábrelo y, a continuación, selecciona el icono Configuración en el menú de iconos del IDE de Looker.

Desde aquí puedes acceder a tres pestañas de Configuración del proyecto:

Configuración

En la pestaña Configuración de la página Configuración del proyecto, se abre la página Configuración del proyecto. En la página Configuración del proyecto, puede configurar los siguientes ajustes:

  • Nombre: el nombre del proyecto. Para cambiar el nombre del proyecto, edita el texto y haz clic en el botón Guardar configuración del proyecto. Para obtener más información, consulta la página de documentación Acceder y editar información de proyectos.
  • Nombre de la rama de producción de Git: especifica el nombre de la rama de Git que se usará como destino de combinación de las ramas de desarrollo de tu proyecto. La rama de Git debe existir en tu repositorio de Git. Consulta más información en la sección Nombre de la rama de producción de Git de esta página.

  • Calidad del código: determina si se debe exigir a los desarrolladores que ejecuten correctamente el validador de LookML en el proyecto antes de confirmar los cambios en él. Calidad del código tiene las siguientes opciones:

    • Requerir que se corrijan los errores y las advertencias antes de confirmar: los desarrolladores de Looker solo pueden confirmar los cambios después de ejecutar correctamente el validador de LookML y resolver todos los errores y las advertencias. Esta es la opción recomendada.
    • Solo se requiere corregir los errores antes de confirmar: los desarrolladores de Looker solo pueden confirmar los cambios después de ejecutar correctamente el validador de LookML y resolver todos los errores. Los desarrolladores pueden confirmar los cambios aunque haya advertencias. Aunque no es recomendable, esta opción puede ser útil, por ejemplo, si se introducen nuevas advertencias en el LookML que funciona después de una actualización de Looker.
    • Permitir confirmar código incorrecto: los desarrolladores de Looker pueden confirmar cambios sin ejecutar el validador de LookML y sin importar si hay errores o advertencias en el LookML. No se recomienda esta opción, ya que puede dar lugar a LookML que no funcione o que produzca resultados erróneos.

  • Requerir que se superen las pruebas de datos antes de implementar este proyecto en producción: si el proyecto de LookML tiene uno o varios parámetros test, esta opción requiere que los desarrolladores ejecuten las pruebas de datos antes de implementar cualquier cambio. Si las pruebas de datos se superan, el IDE permitirá al desarrollador implementar los cambios en producción. Consulta la página de documentación del parámetro test para obtener información sobre cómo configurar pruebas de datos en tu proyecto de LookML. Consulta la página de documentación Usar el control de versiones y la implementación para obtener información sobre cómo ejecutar pruebas de datos en tu proyecto. De forma predeterminada, la opción Require data tests to pass before deploying this project to production (Requerir que las pruebas de datos se superen antes de implementar este proyecto en producción) está habilitada en los nuevos proyectos de LookML.

  • Integración con Git: especifica los niveles de integración con tu proveedor de Git. Para obtener más información, consulta Opciones de integración de Git.

  • Habilitar el modo de implementación avanzado: un ajuste que, cuando está habilitado, permite a los usuarios implementar cualquier SHA, etiqueta o rama en producción. Consulta la página de documentación Modo de despliegue avanzado para obtener más información sobre cómo usar el control de versiones con el modo de despliegue avanzado habilitado.

  • Secreto de implementación de webhook: configura la autenticación para implementar cambios en producción en tu instancia de Looker. Para obtener más información, consulta la página de documentación sobre cómo configurar el secreto de implementación del webhook.

  • Restablecer conexión de Git: este botón abre la ventana Configurar Git, donde puedes actualizar los ajustes de conexión de tu repositorio de Git.

    Al restablecer la conexión de Git, se conservará el historial de Git de la rama principal. También conservará el historial de la rama personal de cada desarrollador de Looker una vez que sincronice su modo de desarrollo. Para conservar el historial de todas las ramas, consulta la página de prácticas recomendadas Migrar a un nuevo repositorio de Git.

  • Eliminar proyecto: este botón elimina el proyecto y todo el LookML del proyecto en todos los entornos de desarrollo y producción de tu instancia de Looker.

  • Resumen de Git: en esta sección se muestra la configuración de Git del proyecto y la información de la rama de Git del usuario actual.

Nombre de la rama de producción de Git

Con la integración predeterminada de Git de Looker, todos los desarrolladores de Looker combinan sus cambios en una rama principal llamada master. Puedes usar el campo Nombre de la rama de producción de Git para especificar qué rama de tu repositorio de Git debe usar Looker como rama de destino en la que se combinarán las ramas de tus desarrolladores de Looker. Consulta la página de documentación Usar el control de versiones e implementar para ver el flujo de trabajo predeterminado de Git y otras opciones de implementaciones avanzadas de Git.

En el caso de los proyectos que ya tengas, te recomendamos que hagas lo siguiente antes de cambiar el nombre de la rama de producción de Git:

  • Pide a todos los desarrolladores del proyecto de Looker que confirmen sus cambios y combinen sus ramas con la rama de producción actual. Después, deben pausar su trabajo hasta que se actualice y se guarde el nombre de la rama de producción de Git en la configuración del proyecto de Looker.
  • Si tu proyecto usa solicitudes de extracción integradas, finaliza y combina las solicitudes de extracción abiertas, según corresponda.
  • Realiza las preparaciones necesarias en el proveedor de Git, como crear una rama en tu repositorio, cambiar el nombre de la rama de Git predeterminada o cualquier otra acción que sea necesaria para preparar la rama de forma que Looker pueda usarla como rama de destino para la combinación. Como mínimo, debes verificar que la rama que quieres usar es una rama que ya existe en tu repositorio de Git.

Para cambiar la rama de Git que usa tu proyecto como destino de combinación de las ramas de desarrollo, sigue estos pasos:

  1. Selecciona el icono Configuración en el menú de iconos del IDE de Looker para ver la configuración del proyecto. La pestaña Configuración se abrirá de forma predeterminada.
  2. En el campo Nombre de rama de producción de Git, introduce el nombre de la rama de Git que quieras usar como rama de producción de tu proyecto de Looker.
  3. Haz clic en el botón Guardar configuración del proyecto para guardar el cambio.

Importar credenciales

En la sección Importar credenciales, puedes gestionar las credenciales de autenticación de repositorios remotos privados. Para obtener más información, consulta la página de documentación Importar archivos de otros proyectos .

Gestión de sucursales

En la pestaña Gestión de ramas de la página Configuración del proyecto, puedes ver todas las ramas de Git asociadas al proyecto. Para obtener más información, consulta la página de documentación sobre uso del control de versiones y la implementación.

Opciones de integración de Git

Una vez que configures tu conexión Git, Looker usará tu proveedor de Git para gestionar tus archivos de origen de LookML, tal como se describe en la página de documentación Usar el control de versiones y la implementación.

Si eres administrador de Looker, puedes configurar opciones adicionales para la integración de Looker con Git mediante las opciones de Integración con Git de la pestaña Configuración del panel de configuración del proyecto:

  • Desactivado: Looker no mostrará ningún enlace externo a la interfaz de su proveedor de Git.
  • Mostrar enlaces: Looker proporcionará enlaces externos a la interfaz de tu proveedor de Git para que tus desarrolladores puedan ver el proyecto en la interfaz del proveedor de Git. Looker también proporcionará enlaces a cada archivo de proyecto para que tus desarrolladores puedan ver el historial del archivo y la información de Git blame en la interfaz de tu proveedor de Git. Consulta la sección Integrar enlaces externos a tu proveedor de Git para obtener información sobre los enlaces.
  • Solicitudes de extracción recomendadas: además de proporcionar enlaces externos a la interfaz de tu proveedor de Git, Looker ofrecerá a los desarrolladores la opción de enviar una solicitud de extracción para que otro desarrollador pueda aprobar los cambios antes de añadirlos al proyecto. Consulta la sección Integrar solicitudes de extracción en tu proyecto para obtener información sobre cómo configurar esta opción.
  • Solicitudes de extracción obligatorias: es igual que Solicitudes de extracción recomendadas, pero tus desarrolladores de LookML tienen que abrir una solicitud de extracción para enviar cambios al proyecto. Consulta la sección Integrar solicitudes de extracción en tu proyecto para obtener información sobre cómo configurar esta opción.

Para guardar la configuración de la integración de Git, haz clic en Guardar configuración del proyecto en la sección Implementación.

Si has habilitado alguna de las opciones adicionales de integración de Git (Mostrar enlaces, Solicitudes de extracción recomendadas o Solicitudes de extracción obligatorias), Looker proporciona enlaces externos a la interfaz de tu proveedor de Git. Estos enlaces externos abren una nueva pestaña del navegador al sitio de tu proveedor de Git.

Para ver estos enlaces externos, tus desarrolladores deben tener una cuenta con tu proveedor de Git y acceso al repositorio de Git del proyecto.

En el menú de tres puntos Opciones de archivo de cada uno de sus archivos LookML, Looker proporciona enlaces al sitio de su proveedor de Git para ver el archivo, la información de Git blame del archivo y el historial de confirmaciones del archivo.

En el panel Acciones de Git, también puede usar la opción Ver proyecto en <Git provider> para abrir los archivos de su proyecto en el sitio de su proveedor de Git.

Integrar solicitudes de extracción en tu proyecto

Con la integración predeterminada de Git de Looker, los desarrolladores de Looker confirman sus cambios en la rama de desarrollo y, a continuación, combinan la rama de desarrollo con la de producción. Después, cuando implementes el entorno de Looker, Looker usará la confirmación más reciente de la rama de producción. Consulta la página de documentación Usar el control de versiones e implementar para ver el flujo de trabajo predeterminado de Git y otras opciones de implementaciones avanzadas de Git.

En lugar de permitir que los desarrolladores de Looker combinen su rama de desarrollo con la rama de producción de Looker, puedes configurar tu proyecto con la opción Solicitudes de extracción recomendadas o Solicitudes de extracción obligatorias:

  • Solicitudes de extracción recomendadas: después de que un desarrollador confirme los cambios en su rama de desarrollo, el botón de Git del IDE de Looker le pedirá que abra una solicitud de extracción para combinar su rama de desarrollo con la rama de producción. A continuación, el desarrollador puede abrir una solicitud de extracción para que otros desarrolladores de Looker la revisen y aprueben desde la interfaz web del proveedor de Git. También puede usar la opción Desplegar en producción del panel Acciones de Git para saltarse la creación de una solicitud de extracción y desplegar los cambios en producción. La opción Implementar en producción no está disponible si el proyecto tiene habilitado el modo de implementación avanzado.
  • Solicitudes de extracción obligatorias: después de que un desarrollador confirme los cambios en su rama de desarrollo, el botón de Git del IDE de Looker le pedirá que abra una solicitud de extracción. El desarrollador debe abrir una solicitud de extracción para combinar su rama de desarrollo con la rama de producción. A continuación, otros desarrolladores de Looker pueden revisar y aprobar la solicitud de extracción desde la interfaz web del proveedor de Git.

Looker admite la integración de solicitudes de extracción para los siguientes proveedores de Git:

  • GitHub
  • GitLab
  • Bitbucket Cloud
  • Bitbucket Server (anteriormente "Stash")

A continuación, se indican algunas notas adicionales sobre el uso de solicitudes de extracción con Looker:

  • Para abrir solicitudes de extracción, tus desarrolladores deben tener una cuenta con tu proveedor de Git y acceso al repositorio de Git del proyecto.

  • Si la función Lista de permitidos de IPs está habilitada en tu instancia, para integrar solicitudes de extracción con cualquier proyecto de LookML, tendrás que añadir a la lista de permitidos el intervalo de direcciones IP desde el que tu proveedor de Git realiza solicitudes salientes. Por ejemplo, las direcciones IP actuales de GitHub se indican en el registro de cambios de GitHub. Las IPs están sujetas a cambios y serán diferentes para otros proveedores de Git.

  • Si has habilitado el modo de despliegue avanzado, no es necesario que configures un webhook en la sección Configurar tu proyecto con solicitudes de extracción integradas, ya que el modo de despliegue avanzado separa las funciones de combinación y despliegue.

  • Si un desarrollador de Looker ha enviado una solicitud de extracción que quieres revertir, consulta la publicación de la comunidad Cómo revertir solicitudes de extracción de Looker a través de GitHub para obtener más información.

  • Las solicitudes de extracción de Git permiten usar una instancia de staging para Looker, de modo que puedes tener una instancia de staging y una de producción, con las solicitudes de extracción habilitadas en la instancia de staging. Todo el desarrollo y la revisión del código se pueden llevar a cabo en el entorno de staging. Después, el código revisado se puede implementar en la instancia de producción. Para configurarlo, consulta la publicación de la comunidad Flujo de trabajo de Git con un repositorio en varias instancias: desarrollo, preproducción y producción.

  • Looker combina los cambios de una rama de desarrollo de Looker en la rama de producción mediante el método de combinación confirmación de combinación. Cuando utilicen la interfaz de tu proveedor de Git, asegúrate de que tus desarrolladores no usen combinación de squash ni combinación de rebase. Para obtener más información, consulta la sección Opciones de combinación en la interfaz del proveedor de Git.

Configurar un proyecto con solicitudes de extracción integradas

Para configurar tu proyecto de Looker con solicitudes de extracción de Git, sigue estos pasos:

  1. En tu proyecto, selecciona Configuración en el menú del icono del IDE de Looker.
  2. En la sección Integración de Git de la pestaña Configuración, selecciona Solicitudes de extracción recomendadas o Solicitudes de extracción obligatorias.
  3. Si quieres configurar un webhook de implementación automática en la interfaz de tu proveedor de Git, copia la información del webhook y pégala en un archivo de texto. Si tu proyecto está configurado para usar el modo de implementación avanzado, puedes saltarte este paso. También puede decidirlo más adelante y volver a la configuración del proyecto para obtener la información del webhook.
  4. También puedes configurar un secreto de implementación de webhook para autenticar un webhook de implementación automática de tu proveedor de Git o un webhook de modo de implementación avanzado. Para crear un secreto de webhook, haz clic en Definir secreto de webhook. Copia el secreto de implementación y pégalo en un archivo de texto para usarlo cuando añadas el webhook a la interfaz de tu proveedor de Git. También puedes decidirlo más adelante y volver a la configuración del proyecto para añadir un secreto de implementación. Para obtener más información, consulta la página de documentación sobre cómo configurar el secreto de implementación del webhook.
  5. Haz clic en Guardar configuración del proyecto.

Ahora, cada vez que un desarrollador de Looker confirme los cambios en tu proyecto, el IDE de Looker mostrará el botón Abrir solicitud de extracción. El botón abre una nueva pestaña del navegador que lleva directamente a la página de la nueva solicitud de extracción en el sitio web de tu proveedor de Git.

Una vez que hayas configurado tu proyecto de Looker para usar solicitudes de extracción, haz una de las siguientes acciones para configurar cómo se implementan las confirmaciones en tu entorno de producción:

  • Para desplegar automáticamente las últimas confirmaciones que se combinen en tu rama de producción, usa la interfaz de tu proveedor de Git para añadir un webhook, tal como se describe en la siguiente sección de esta página.
  • Para especificar manualmente qué ramas o confirmaciones se implementan, habilita el modo de implementación avanzada. Consulta la página de documentación sobre el modo de despliegue avanzado para obtener información sobre cómo habilitarlo y gestionarlo.

Añadir un webhook a tu proveedor de Git

En los proyectos de Looker en los que estén habilitadas las solicitudes de extracción, puedes configurar un webhook de implementación en la interfaz de tu proveedor de Git. Este webhook activará Looker para que despliegue la confirmación más reciente de la rama de producción cada vez que combines una solicitud de extracción en la interfaz del proveedor de Git.

En la mayoría de los casos, no es recomendable configurar un webhook de implementación automática si el proyecto está configurado para usar el modo de implementación avanzada. El modo de despliegue avanzado te permite seleccionar la confirmación y la rama que quieras desplegar, por lo que, en la mayoría de los casos, configurar un webhook de despliegue automático anularía las funciones del modo de despliegue avanzado.

Para añadir un webhook de implementación automática en la interfaz de tu proveedor de Git, primero ve a los ajustes de tu proyecto en Looker haciendo clic en el icono Configuración del menú de iconos del IDE de Looker del proyecto. A continuación, copia el webhook de la sección Integración de Git.

El webhook tiene el formato <instance_url>/webhooks/projects/<project_name>/deploy.

Sustituye <instance_url> por la URL de tu instancia de Looker. Por ejemplo, si la URL de tu instancia de Looker es example.looker.com y el nombre de tu proyecto es e_faa, el webhook tendría este aspecto:

https://example.looker.com/webhooks/projects/e_faa/deploy

En la configuración del proyecto de Looker, también puedes obtener un secreto de implementación de webhook para autenticar las integraciones de Git de tu proyecto con tu proveedor de Git. Para obtener más información, consulta la página de documentación sobre cómo configurar el secreto de implementación del webhook.

Una vez que tengas la URL del webhook y el secreto del webhook de implementación, puedes introducirlos en la interfaz de tu proveedor de Git. Si tu proveedor de Git es GitHub, sigue estos pasos:

  1. Ve a la configuración del repositorio de tu proyecto en tu repositorio de GitHub.
  2. En la configuración de tu repositorio, haz clic en Webhooks. Haz clic en Añadir webhook para abrir la ventana Añadir webhook.
  3. En el campo URL de carga útil, pega la información del webhook que has copiado de la sección Integración con Git de Looker.
  4. También puedes añadir un secreto de implementación de webhook que autentique las integraciones de Git de tu proyecto con tu proveedor de Git. Copia el secreto de implementación de la configuración del proyecto de LookML y pégalo en el campo Secreto de la interfaz del proveedor de Git. Para obtener más información, consulta la página de documentación sobre cómo configurar el secreto de implementación del webhook.
  5. Seleccione la opción Solo el evento push en el campo ¿Qué eventos quiere que activen este webhook?.
  6. Haz clic en Añadir webhook.

Usar un webhook de implementación para extraer datos de un repositorio de Git remoto

Cuando las solicitudes de extracción están habilitadas en tu proyecto de LookML y los webhooks de implementación no están automatizados, puede que el LookML que ves en el modo Producción de Looker no coincida con el LookML de la rama principal de tu repositorio de Git. Esto puede ocurrir en las siguientes situaciones:

  • Cuando las solicitudes de extracción estén habilitadas en el repositorio
  • Cuando se ha editado el LookML fuera del entorno de desarrollo de Looker, por ejemplo:
    • En el propio repositorio de Git
    • En otra instancia de Looker, como una instancia de staging

Para sincronizar la rama de producción de Looker con la rama principal del repositorio, puedes usar un webhook de implementación:

  1. Abre una pestaña nueva del navegador y escribe la siguiente URL. Sustituye <instance_url> por la URL de tu instancia de Looker y <project_name> por el nombre de tu proyecto de LookML:

    <instance_url>/webhooks/projects/<project name>/deploy
    
  2. Después de ejecutar la URL del webhook de implementación, se mostrará una página web en blanco con un mensaje de éxito similar al siguiente:

    {"operations":[{"error":false,"error_code":0,"command":"Checkout Branch #\u003cLooker::GitBranch:0x5798672b\u003e","node_id":728,"results":["Success"]},{"error":false,"error_code":0,"command":"jgit revert_repo","node_id":728,"results":["Success"]}],"new_head":"05f772af48709fc2799fefe408e3fdd895a63284","old_head":"77412cad9fd7ed3eed1627afa201fdf7dcb97dd1"}
    

Ahora, el modo Producción de Looker se ha actualizado para reflejar la rama principal de Git remota. Tu rama de desarrollador personal y las ramas compartidas no se verán afectadas.

Extraer datos de un repositorio de Git remoto para webhooks con secretos de implementación

Si tu proyecto de LookML también requiere un secreto de webhook de implementación para enviar cambios de tu rama principal a tu rama de producción, recibirás uno de los siguientes errores cuando sincronices la rama de producción con la rama principal del repositorio mediante el método descrito en la sección anterior, Usar un webhook de implementación para extraer datos de un repositorio Git remoto:

{"error":"Uh oh! Something went wrong."}

O:

{"error":"Not found."}

En lugar de usar el webhook de implementación, puedes ejecutar el siguiente comando cURL en tu terminal con el secreto del webhook. Asegúrate de sustituir los siguientes campos:

  • Sustituye <instance_URL> por la URL de tu instancia de Looker.
  • Sustituye <deploy_secret> por el secreto de implementación de tu proyecto.
  • Sustituye <project_name> por el nombre de tu proyecto de LookML.
curl -i -X POST -H "X-Looker-Deploy-Secret:<deploy_secret>" https://<instance_url>/webhooks/projects/<project_name>/deploy

Por ejemplo, si quieres sincronizar una rama de producción del proyecto ecommerce_project de la instancia Brettcase con la rama principal del repositorio, haz lo siguiente:

curl -i -X POST -H "X-Looker-Deploy-Secret:123123123secretgoeshere123123123" https://brettcase.looker.com/webhooks/projects/ecommerce_project/deploy

Opciones de combinación en la interfaz del proveedor de Git

Si tu proyecto de Looker está integrado con solicitudes de extracción, tus desarrolladores usan la interfaz de tu proveedor de Git para enviar solicitudes de extracción y combinar los cambios en la rama de producción.

Looker admite el método merge commit para combinar los cambios de una rama de desarrollo en la rama de producción. Sin embargo, la interfaz de tu proveedor de Git puede mostrar opciones adicionales para combinar, como Combinar y comprimir o Rebase y combinar.

Looker no admite combinaciones de compresión ni combinaciones de cambio de base, por lo que tus desarrolladores deben evitar usar estas opciones. Si es posible, lo más recomendable es inhabilitar estas opciones en tu repositorio. Para inhabilitar estas opciones en un repositorio de GitHub, sigue estos pasos:

  1. Ve a la pestaña Configuración para acceder a la configuración del repositorio de tu proyecto en GitHub.

    NOTA: En los proyectos configurados con la integración de Git, puedes usar la opción Ver proyecto en Git del menú Git del proyecto en Looker.

  2. En la configuración de tu repositorio, haz clic en Opciones en el menú de navegación.

  3. Ve a la sección Botón Combinar y deja marcada solo la opción Permitir commits de combinación. Inhabilita las opciones Permitir combinar con compresión y Permitir combinar con rebase.

Una vez que hayas inhabilitado las opciones de combinación, no estarán disponibles en GitHub cuando tus desarrolladores combinen una rama del repositorio.