Mode de déploiement avancé

Avec l'intégration Git par défaut dans Looker, 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 les autres options d'implémentation avancée de Git.

Pour les implémentations Git avancées où 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 autre SHA ou tag de commit à 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 depuis 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 des manières suivantes:

Activer le mode de déploiement avancé

Pour activer le mode de déploiement avancé:

  1. Accédez à l'onglet Configuration de la page Project Settings (Paramètres du projet) en sélectionnant l'icône Settings (Paramètres) dans le menu des icônes.
  2. Cochez la case Activer le mode de déploiement avancé dans la section Déploiement.
  3. Sélectionnez le bouton Save Project Configuration (Enregistrer la configuration du projet) pour enregistrer vos modifications.

Contrôle des versions avec mode de déploiement avancé

Lorsque le mode de déploiement avancé est activé, les développeurs n'ont plus la possibilité de déployer en production. Au lieu de cela, lorsque le développeur effectue un commit, le bouton Git l'invite à fusionner ses modifications avec la branche principale, au lieu de le 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 un tag dans leur environnement de production Looker.

Vous pouvez accéder à Deployment Manager en sélectionnant l'icône Déployer dans le menu des icônes.

Deployment Manager affiche tous les commits et tous les 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 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 le commit qui est la version actuellement utilisée pour la production.

Si la branche de production comporte des commits plus récents que le commit déployé, le gestionnaire de déploiement affiche ces informations et affiche 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 de Deployment Manager:

  1. Pour déployer un commit qui n'a pas encore été déployé, cliquez sur le bouton Select Commit (Sélectionner un commit) et sélectionnez un commit parmi ceux qui ont été fusionnés avec la branche de production distante. Si vous souhaitez déployer un commit depuis 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 dernier.
  3. Pour déployer un commit ou un tag déjà déployé, cliquez sur le menu à trois points Options dans Deployment Manager, 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 Déployer un commit. Pour déployer un commit depuis le menu Déployer un commit, procédez comme suit:

  1. Pour déployer le commit sans lui attribuer de tag, sélectionnez Déployer sans tag, puis Déployer dans l'environnement. Sinon, laissez l'option Tager et déployer sélectionnée.
  2. Spécifiez un tag pour le commit. Un tag Git indique la signification 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 au sein du dépôt Git. Vous ne pouvez pas utiliser le même tag 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. Si vous le souhaitez, vous pouvez ajouter une description pour le tag afin de fournir plus de détails sur le commit.

  4. Sélectionnez Déployer dans l'environnement pour déployer le commit sur 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 la version actuelle de 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 depuis la page Paramètres du projet. Cela permet de garantir 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 avec le mode de déploiement avancé activé. Un webhook permet de déployer l'en-tête d'une branche, et l'autre de déployer un SHA ou tag Git spécifique.

Le webhook pour déployer l'en-tête d'une branche utilise le format suivant:

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

Le webhook pour 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 chevrons < > par celles spécifiques à l'adresse de l'instance, au projet LookML et au nom de la branche ou au commit SHA/tag. Voici un exemple de webhook permettant de déployer le nom de tag 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 utilisant le mode de déploiement avancé, vous pouvez utiliser l'API Looker pour déployer les modifications en production.

Pour procéder au déploiement avec l'API, l'utilisateur de l'API qui effectue l'appel doit disposer de l'autorisation deploy. Consultez les pages de documentation Authentification via l'API Looker et Premiers pas avec l'API pour en savoir plus sur l'authentification et l'utilisation de l'API Looker.

Pour déployer 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 déployer manuellement à 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'appels manuels à l'API à l'aide de requêtes CURL, consultez le fichier GitHub Comment s'authentifier auprès de l'API ou utilisez l'explorateur d'API. Vous pouvez installer APIs Explorer sur votre instance Looker à partir de Looker Marketplace.

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

Déployez l'en-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 un tag 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 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, ainsi que d'autres aspects.

Le déploiement avec deploy_ref_to_production à l'aide de la méthode SDK se présente comme suit:

Déployez l'en-tête d'une branche : deploy_ref_to_production(<PROJECT_ID>, {branch: <BRANCH_NAME>})

Déployez un SHA ou un tag de commit :deploy_ref_to_production(<PROJECT_ID>, {ref: <SHA_OR_TAG>})