Mode Déploiement avancé

Avec l'intégration Git Looker par défaut, les développeurs Looker valident leurs modifications dans leur branche de développement, puis fusionnent leur branche de développement dans la branche de production. Ensuite, lorsque vous déployez dans l'environnement Looker, Looker utilise le dernier commit de la branche de production. (Consultez la page de documentation Utiliser le contrôle des versions et le déploiement pour connaître le workflow Git par défaut et d'autres options pour les implémentations Git avancées.)

Pour les implémentations Git avancées pour lesquelles vous ne souhaitez pas utiliser le dernier commit de votre branche de production pour votre environnement Looker, un administrateur Looker peut activer le mode de déploiement avancé. Lorsqu'il est activé, le mode de déploiement avancé permet à un développeur disposant de l'autorisation deploy de spécifier un SHA ou une balise de commit différent à déployer dans votre environnement de production Looker, au lieu d'utiliser le dernier commit de la branche de production. Si vous souhaitez déployer un commit à partir d'une autre branche, vous pouvez utiliser le mode de déploiement avancé webhook ou point de terminaison d'API.

Le mode de déploiement avancé permet de consolider les dépôts dans les workflows de développement multi-environnements, où chaque environnement pointe vers une version différente d'un codebase. Elle permet également à un ou plusieurs développeurs ou administrateurs de mieux contrôler les modifications déployées en production.

Lorsque le mode de déploiement avancé est activé, Looker n'invite pas les développeurs à déployer leurs modifications en production. À la place, Looker invite les développeurs à fusionner leurs modifications dans la branche de production. À partir de là, les modifications ne peuvent être déployées que de la manière suivante:

Activer le mode Déploiement avancé

Pour activer le mode Déploiement avancé:

  1. Dans l'IDE Looker, accédez à la page Configuration du projet en sélectionnant l'icône Settings (Paramètres) dans le menu des icônes, puis l'onglet Configuration.
  2. Sur la page Configuration du projet, cochez la case Activer le mode de déploiement avancé dans la section Déploiement.
  3. Sélectionnez le bouton Enregistrer la configuration du projet pour enregistrer votre modification.

Contrôle des versions avec le mode Déploiement avancé

Lorsque le mode de déploiement avancé est activé, les développeurs ne peuvent plus déployer en production depuis Looker. Au lieu de cela, lorsque le développeur effectue un commit, le bouton Git l'invite à fusionner ses modifications dans la branche principale au lieu de le demander de déployer en production.

Les modifications sont déployées en production à l'aide d'un webhook, de l'API ou du gestionnaire de déploiement.

Gestionnaire de déploiement

Pour les projets dont le mode de déploiement avancé est activé, les développeurs Looker disposant de l'autorisation deploy peuvent utiliser le gestionnaire de déploiement pour déployer un commit ou une balise dans leur environnement de production Looker.

Pour accéder à Deployment Manager, sélectionnez l'icône Deploy (Déployer) dans le menu des icônes.

Deployment Manager affiche tous les commits et tags précédemment déployés à l'aide du mode de déploiement avancé.

Si vous n'avez pas encore utilisé le mode de déploiement avancé pour déployer un commit, cliquez sur le bouton Sélectionner un commit pour afficher l'historique des commits avec les commits que vos développeurs Looker ont fusionnés dans la branche de production.

Pour les projets qui ont utilisé le mode de déploiement avancé pour déployer un commit, l'historique des commits affiche également les tags associés à un commit, le cas échéant, et indique le commit correspondant à la version actuelle utilisée en production.

Si la branche de production contient des commits plus récents que le commit déployé, le gestionnaire de déploiement affiche ces informations et le commit le plus récent que vos développeurs Looker ont fusionné dans la branche de production.

Déployer un commit à partir du gestionnaire de déploiement

Vous pouvez déployer un commit de plusieurs manières à partir du Gestionnaire de déploiement:

  1. Pour déployer un commit qui n'a pas encore été déployé, cliquez sur le bouton Sélectionner un commit pour choisir parmi tous les commits qui ont été fusionnés dans la branche de production distante. (Si vous souhaitez déployer un commit à partir d'une autre branche, utilisez le mode de déploiement avancé webhook ou point de terminaison de l'API.)
  2. Pour déployer le commit fusionné le plus récemment sur la branche de production distante, cliquez sur le bouton Déployer la dernière version.
  3. Pour déployer un commit ou une balise déjà déployés, cliquez sur le menu à trois points Options  dans le gestionnaire de déploiement, puis sur Déployer en production.

Si vous choisissez un commit qui n'a pas encore été déployé, le gestionnaire de déploiement affiche le menu Déployer le commit. Pour déployer un commit à partir du menu Deploy Commit (Déployer le commit), procédez comme suit:

  1. Pour déployer le commit sans lui attribuer de balise, sélectionnez Déployer sans balise, puis Déployer dans l'environnement. Sinon, laissez l'option Taguer et déployer sélectionnée.
  2. Spécifiez un tag pour le commit. Une balise Git indique l'importance du commit dans l'historique du dépôt, par exemple un numéro de version ou un nom de version. Notez les points suivants concernant les tags Git:

    • Les tags Git doivent être uniques dans le dépôt Git. Vous ne pouvez pas utiliser la même balise pour deux commits différents dans votre dépôt.
    • Les tags Git ne peuvent pas contenir d'espaces ni certains caractères spéciaux. Pour connaître les règles d'attribution de noms aux références dans Git, consultez la documentation de référence Git.
  3. Vous pouvez éventuellement ajouter une description à la balise pour fournir des informations supplémentaires sur le commit.

  4. Sélectionnez Déploiement dans l'environnement pour déployer le commit dans la version de production de votre instance Looker.

Une fois que vous avez déployé un commit, le gestionnaire de déploiement le marque comme version actuelle dans votre environnement de production Looker.

Déployer avec des webhooks

Pour les projets avec le mode de déploiement avancé, vous pouvez utiliser le webhook de déploiement pour déployer les modifications en production.

Pour configurer le webhook de déploiement, vous devez d'abord ajouter un secret de webhook pour votre projet Looker sur la page Configuration du projet. L'ajout d'un secret de webhook garantit que seules les parties autorisées peuvent déclencher le webhook de déploiement.

Deux webhooks sont disponibles pour déployer des modifications en production lorsque le mode de déploiement avancé est activé. L'un des webhooks permet de déployer le pointeur HEAD d'une branche, et l'autre de déployer un SHA ou une balise Git spécifique.

Le webhook permettant de déployer la tête d'une branche utilise le format suivant:

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

Le webhook permettant de déployer un SHA ou un tag de commit utilise le format suivant:

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

Remplacez les informations entre crochets angulaires < > par les informations spécifiques à l'adresse de votre instance, au projet LookML et au nom de la branche ou à l'ID ou à la balise de commit. Voici un exemple de webhook pour déployer le nom de la balise v1.0 pour le projet e_faa sur l'instance Looker docsexamples.dev.looker.com:

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

Déployer avec l'API

Pour les projets avec le mode de déploiement avancé, vous pouvez utiliser l'API Looker pour déployer les modifications en production.

Pour effectuer un déploiement avec l'API, l'utilisateur de l'API qui effectue l'appel doit disposer de l'autorisation deploy. Pour en savoir plus sur l'authentification et l'utilisation de l'API Looker, consultez les pages de documentation Authentification de l'API Looker et Premiers pas avec l'API.

Pour le déploiement avec l'API, utilisez le point de terminaison deploy_ref_to_production. Ce point de terminaison peut être appelé de différentes manières. Les exemples suivants concernent les méthodes HTTPS et SDK.

HTTPS

Pour effectuer un déploiement manuel à l'aide du point de terminaison de l'API deploy_ref_to_production, consultez les exemples suivants, qui utilisent la méthode HTTPS. Pour en savoir plus et obtenir des exemples d'appel manuel de l'API à l'aide de requêtes CURL, consultez le fichier de documentation GitHub How to Authenticate to the API (Comment s'authentifier auprès de l'API) ou utilisez API Explorer. Vous pouvez installer l'explorateur d'API sur votre instance Looker depuis Looker Marketplace.

Utilisez les exemples suivants dans une requête HTTPS pour déployer la tête d'une branche, ou un SHA ou une balise de commit spécifique via le point de terminaison de l'API deploy_ref_to_production:

Déployer la tête d'une branche : <HOST_URL>/api/4.0/projects/<PROJECT_ID>/deploy_ref_to_production?branch=<BRANCH_NAME>

Déployez un SHA ou une balise de commit : <HOST_URL>/api/4.0/projects/<PROJECT_ID>/deploy_ref_to_production?ref=<SHA_OR_TAG>

SDK

Vous pouvez également utiliser l'un des SDK Looker au lieu d'envoyer des requêtes manuelles à l'API. Les SDK gèrent les détails de l'authentification, la sérialisation des paramètres et des réponses, et d'autres problèmes.

Le déploiement avec deploy_ref_to_production avec la méthode du SDK se présente comme suit:

Déployer la tête d'une branche : deploy_ref_to_production(<PROJECT_ID>, {branch: <BRANCH_NAME>})

Déploiement d'un SHA ou d'une balise de commit : deploy_ref_to_production(<PROJECT_ID>, {ref: <SHA_OR_TAG>})