Mode Déploiement avancé

Avec l'intégration Git par défaut de Looker, les développeurs Looker valident leurs modifications dans leur branche de développement, puis fusionnent leur branche de développement avec la branche de production. Ensuite, lors du déploiement dans l'environnement Looker, Looker utilise le dernier commit sur 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 les autres options d'implémentations Git avancées.

Pour les implémentations Git avancées pour lesquelles vous ne souhaitez pas que le dernier commit de votre branche de production soit utilisé 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 webhook ou le point de terminaison de l'API en mode de déploiement avancé.

Le mode de déploiement avancé permet de consolider les dépôts dans des 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 de déploiement avancé

Pour activer le mode de déploiement avancé:

  1. Dans l'IDE Looker, accédez à la page Project Configuration (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 de déploiement avancé

Lorsque le mode de déploiement avancé est activé, le déploiement en production depuis Looker n'est plus une option pour les développeurs. 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 les 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.

Deployment Manager

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 l'ensemble des commits et des tags déjà déployés en 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 que vos développeurs Looker ont fusionnés avec 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 quel commit est la version actuelle utilisée pour la production.

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

Déployer un commit à partir de Deployment Manager

Il existe plusieurs façons de déployer un commit à partir du Gestionnaire de déploiement :

  1. Pour déployer un commit qui n'a pas encore été déployé, cliquez sur le bouton Select Commit (Sélectionner un commit) pour faire votre choix parmi tous les commits fusionnés avec la branche de production distante. (Si vous souhaitez déployer un commit à partir d'une autre branche, utilisez le webhook ou le point de terminaison de l'API en mode de déploiement avancé.)
  2. Pour déployer le dernier commit fusionné sur la branche de production distante, cliquez sur le bouton Déployer le plus récent.
  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 été déployé précédemment, Deployment Manager affiche le menu Deploy Commit (Déployer le commit). Pour déployer un commit à partir du menu 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 à propos des 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. Consultez la documentation de référence Git pour connaître les règles de dénomination des références dans Git.
  3. Vous pouvez éventuellement ajouter une description à la balise pour fournir des informations supplémentaires sur le commit.

  4. Sélectionnez Déployer 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 en 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é. Un webhook sert à déployer l'en-tête d'une branche, et l'autre sert à déployer un SHA ou un tag 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 à votre adresse d'instance, à votre projet LookML et au nom de la branche ou à la balise/SHA 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 en 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 obtenir plus d'informations et des exemples d'appel manuel de l'API à l'aide de requêtes CURL, consultez le fichier README de GitHub Comment s'authentifier auprès de l'API ou utilisez l'explorateur d'API. Vous pouvez installer API Explorer sur votre instance Looker à partir de 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 de commit ou un tag : <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 de 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éployez un SHA ou une balise de commit : deploy_ref_to_production(<PROJECT_ID>, {ref: <SHA_OR_TAG>})