Configurer les paramètres de contrôle des versions du projet

Cette page explique comment configurer des éléments de votre projet à intégrer à Git pour le contrôle des versions.

Paramètres du projet

Vous devez être administrateur Looker pour modifier les options sur la page Paramètres du projet. Les développeurs Looker qui ne sont pas administrateurs peuvent afficher la page Paramètres du projet, mais ne peuvent pas modifier ses options.

La page Paramètres du projet comporte des options de configuration pour votre projet. Pour afficher cette page, ouvrez votre projet, puis sélectionnez l'icône Paramètres dans le menu des icônes situé à gauche.

Vous pouvez alors accéder à trois sections:

Configuration

Dans l'onglet Configuration de la page Paramètres des projets, vous pouvez configurer les paramètres suivants:

  • Nom: le nom de votre projet. Pour renommer votre projet, modifiez le texte et cliquez sur le bouton Save Project Configuration (Enregistrer la configuration du projet). Pour en savoir plus, consultez Accéder aux informations du projet et les modifier.
  • Git Production Branch Name (Nom de la branche de production Git) : spécifiez la branche Git à utiliser comme cible de fusion pour les branches de développement de votre projet. La branche Git doit exister dans votre dépôt Git. Pour en savoir plus, consultez la section Nom de la branche Git de production sur cette page.

  • Qualité du code: détermine si les développeurs doivent exécuter ou non l'outil LookML Validator sur le projet avant d'apporter des modifications au projet. Vous disposez des options suivantes pour Qualité du code:

    • Exiger la correction des erreurs et des avertissements avant de les valider: les développeurs Looker ne peuvent valider des modifications qu'après avoir exécuté l'outil de validation LookML, et corrigé toutes les erreurs et les avertissements. Il s'agit de la configuration recommandée.
    • Exiger uniquement la correction des erreurs avant de valider: les développeurs Looker ne peuvent valider des modifications qu'après avoir exécuté l'outil de validation LookML et résolu toutes les erreurs. Les développeurs peuvent appliquer des modifications lorsqu'il existe des avertissements. Bien que cela ne soit pas recommandé, cette option peut être utile, par exemple, si de nouveaux avertissements sont introduits dans LookML fonctionnel après une mise à jour de Looker.
    • Autoriser le commit d'un code défectueux: les développeurs Looker peuvent valider des modifications sans exécuter le programme de validation LookML, et qu'il existe des erreurs ou des avertissements dans LookML. Cette option n'est pas recommandée, car elle peut entraîner un dysfonctionnement de LookML ou des résultats incorrects.

  • Exiger que les tests de données soient concluants avant de déployer ce projet en production: les développeurs doivent exécuter des tests de données avant de déployer des modifications. Si les tests de données réussissent, l'IDE permet au développeur de déployer les modifications en production. Consultez la page de documentation sur le paramètre test pour savoir comment configurer des tests de données dans votre projet LookML. Consultez la page de documentation Utiliser le contrôle des versions et le déploiement pour en savoir plus sur l'exécution de tests de données dans votre projet.

  • Git Integration (Intégration Git) : spécifie les niveaux d'intégration à votre fournisseur Git. Pour en savoir plus, consultez Options d'intégration Git.

  • Enable Advanced Deploy Mode (Activer le mode de déploiement avancé) : lorsqu'il est activé, ce paramètre permet aux utilisateurs de déployer n'importe quel SHA, tag ou branche en production. Consultez la page de documentation Mode de déploiement avancé pour en savoir plus sur l'utilisation du contrôle des versions avec le mode de déploiement avancé activé.

  • Webhook Deploy Secret: configure l'authentification pour le déploiement des modifications en production sur votre instance Looker. Pour en savoir plus, consultez la page de configuration du secret de déploiement du webhook.

  • Réinitialiser la connexion Git: ce bouton ouvre la fenêtre Configurer Git, dans laquelle vous pouvez mettre à jour les paramètres de connexion pour votre dépôt Git.

    Si vous réinitialisez votre connexion Git, l'historique Git de la branche maître est conservé. Il conserve également l'historique de la branche personnelle de chaque développeur Looker une fois son mode développeur développé. Pour conserver l'historique de toutes les branches, consultez la page Bonnes pratiques pour migrer vers un nouveau dépôt Git.

  • Supprimer le projet: ce bouton supprime le projet et supprime tous les éléments LookML du projet dans tous les environnements de développement et de production de votre instance Looker.

  • Résumé Git: cette section indique la configuration Git du projet et les informations de la branche Git de l'utilisateur actuel.

Nom de la branche de production Git

Avec l'intégration Git par défaut de Looker, tous les développeurs Looker fusionnent leurs modifications dans une branche appelée master. Le champ Git Production Branch Name (Nom de la branche Git de production) vous permet de spécifier la branche de votre dépôt Git que Looker doit utiliser comme branche cible dans laquelle les branches de vos développeurs Looker sont fusionnées. (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 Git avancée.)

Pour les projets existants, envisagez d'effectuer les opérations suivantes avant de modifier le nom de la branche de production Git:

  • Demandez à tous les développeurs du projet Looker d'approuver leurs modifications et de fusionner leurs branches avec la branche de production existante, puis de suspendre leur travail jusqu'à ce que le nom de la branche de production Git soit mis à jour et enregistré dans la configuration du projet Looker.
  • Si votre projet utilise des demandes d'extraction intégrées, finalisez et fusionnez toutes les demandes d'extraction ouvertes, le cas échéant.
  • Effectuez les préparations nécessaires côté fournisseur fournisseur Git. Par exemple, vous pouvez créer une branche dans votre dépôt, renommer la branche Git par défaut existante ou prendre les mesures nécessaires pour préparer la branche afin que Looker puisse l'utiliser en tant que branche cible pour la fusion. Au moins, vous devez vérifier que la branche que vous souhaitez utiliser est une branche existante de votre dépôt Git.

Pour modifier la branche Git que votre projet utilise comme cible de fusion pour les branches de développement:

  1. Sélectionnez l'icône Paramètres dans le menu des icônes situé à gauche pour afficher la page Paramètres du projet. L'onglet Configuration s'ouvre par défaut.
  2. Dans le champ Git Production Branch Name (Nom de la branche Git de production), saisissez le nom de la branche Git que vous souhaitez utiliser comme branche de production pour votre projet Looker.
  3. Faites défiler la page vers le bas, puis cliquez sur le bouton Save Project Configuration (Enregistrer la configuration du projet) pour enregistrer vos modifications.

Importer des identifiants

La section Importer des identifiants vous permet de gérer les identifiants d'authentification pour les dépôts distants privés. Pour en savoir plus, consultez la page de documentation Importer des fichiers à partir d'autres projets .

Gestion des branches

L'onglet Gestion des branches de la page Paramètres des projets affiche toutes les branches Git associées au projet. Pour en savoir plus, consultez la page de documentation Utiliser le contrôle des versions et le déploiement.

Options d'intégration Git

Une fois que vous avez configuré votre connexion Git, Looker utilisera votre fournisseur Git pour gérer vos fichiers sources LookML, comme décrit dans la page Utiliser le contrôle des versions et le déploiement.

Si vous êtes un administrateur Looker, vous pouvez configurer des options supplémentaires pour l'intégration de Looker à Git à l'aide des options Intégration Git dans l'onglet Configuration de la page Paramètres du projet:

  • Désactivé: Looker n'affiche pas les liens externes vers l'interface de votre fournisseur Git.
  • Afficher les liens: Looker fournit des liens externes vers l'interface de votre fournisseur Git afin que vos développeurs puissent consulter le projet dans l'interface du fournisseur Git. Looker fournit également des liens pour chaque fichier de projet afin que vos développeurs puissent consulter l'historique du fichier et les informations sur la faute dans Git dans l'interface de votre fournisseur Git. Pour en savoir plus sur les associations, consultez la section Intégrer des liens externes dans votre fournisseur Git.
  • Demandes d'extraction recommandées: en plus de fournir des liens externes vers l'interface de votre fournisseur Git, Looker offre aux développeurs la possibilité d'envoyer une demande d'extraction#39;extraction afin qu'un autre développeur puisse approuver les modifications avant de les ajouter au projet. Pour en savoir plus sur la configuration, consultez la section Intégrer les demandes d'extraction pour votre projet.
  • Demandes d'extraction requises: elles sont identiques à celles mentionnées ci-dessus, à la différence que les développeurs LookML doivent ouvrir une demande d'extraction;extraction pour soumettre des modifications au projet. Pour en savoir plus sur la configuration, consultez la section Intégrer les demandes d'extraction pour votre projet.

Pour enregistrer vos paramètres d'intégration Git, faites défiler la page vers le bas et cliquez sur Enregistrer la configuration du projet dans la section Déploiement.

Si vous avez activé l'une des options d'intégration Git supplémentaires (Afficher les liens, Demandes d'extraction recommandées ou Demandes d'extraction requises), Looker fournit des liens externes vers l'interface de votre fournisseur Git. Ces liens externes ouvrent un nouvel onglet de navigateur sur le site de votre fournisseur Git.

Pour afficher ces liens externes, vos développeurs doivent avoir un compte auprès de votre fournisseur Git et avoir accès au dépôt Git du projet.

Dans le menu Options de fichiers à trois points associé à chacun de vos fichiers LookML, Looker fournit des liens vers le site de votre fournisseur Git pour consulter le fichier, consulter les informations sur le blâme Git et afficher l'historique des commits du fichier.

Dans le panneau Actions Git, vous pouvez également utiliser l'option Afficher le projet sur <Git provider> pour ouvrir les fichiers de votre projet sur le site de votre fournisseur Git.

Intégrer des demandes d'extraction pour votre projet

Avec l'intégration Git par défaut de Looker, les développeurs Looker appliquent leurs modifications dans leur branche de développement, puis fusionnent leur branche de développement dans 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émentation Git avancée.)

Au lieu d'autoriser les développeurs Looker à fusionner leur branche de développement dans la branche de production Looker, vous pouvez configurer votre projet avec les options Demandes d'extraction recommandées ou Demandes d'extraction requises:

  • Demandes d'extraction recommandées: après qu'un développeur a validé les modifications apportées à sa branche de développement, le bouton Git de l'IDE Looker invite le développeur à ouvrir une demande d'extraction'extraction pour fusionner sa branche de développement avec la branche de production. Le développeur peut ensuite envoyer une demande d'extraction d'extraction à d'autres développeurs Looker afin qu'ils l'examinent et l'approuvent dans l'interface Web du fournisseur Git. À la place, le développeur peut utiliser l'option Déployer en production du panneau d'actions Git pour ignorer la création d'une demande d'extraction;extraction et déployer ses modifications en production. L'option Déployer en production n'est pas disponible si le projet est activé avec le mode de déploiement avancé.
  • Demandes d'extraction requises: après qu'un développeur a validé les modifications apportées à sa branche de développement, le bouton Git de l'IDE Looker invite le développeur à ouvrir une demande d'extraction'extraction. Le développeur doit ouvrir une demande d'extraction pour fusionner sa branche de développement dans la branche de production. Les autres développeurs Looker peuvent ensuite examiner et approuver la demande d'extraction depuis l'interface Web du fournisseur Git.

Looker est compatible avec l'intégration des demande d'extraction d'extraction pour les fournisseurs Git suivants:

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

Voici quelques remarques supplémentaires sur l'utilisation des demandes d'extraction avec Looker:

  • Pour ouvrir des demandes d'extraction, vos développeurs doivent avoir un compte auprès de votre fournisseur Git et avoir accès au dépôt Git du projet.

  • Si la fonctionnalité Liste d'autorisation d'adresses IP est activée sur votre instance, vous devez ajouter à la liste d'autorisation la plage d'adresses IP à partir desquelles votre fournisseur Git envoie des requêtes sortantes pour intégrer les demandes d'extraction aux projets LookML. Par exemple, les adresses IP GitHub actuelles sont répertoriées dans le journal des modifications GitHub. Les adresses IP sont susceptibles d'être modifiées et seront différentes pour les autres fournisseurs Git.

  • Si vous avez activé le mode de déploiement avancé, il n'est pas nécessaire de configurer un webhook dans la section Configurer votre projet avec des demandes d'extraction intégrées, car le mode de déploiement avancé sépare les fonctions de fusion et de déploiement.

  • Si un développeur Looker a émis une demande d'extraction que vous souhaitez rétablir, consultez l'article Rétablir les demandes d'extraction de Looker via GitHub pour en savoir plus.

  • Les demandes d'extraction Git peuvent permettre d'utiliser une instance de préproduction pour Looker. Vous pouvez donc disposer d'une instance de préproduction et d'une instance de production, en activant les demandes d'extraction dans l'instance de préproduction. Tout le développement et la révision du code peuvent être effectués dans l'environnement de préproduction, et le code examiné peut ensuite être déployé sur l'instance de production si nécessaire. Pour ce faire, consultez l'article de la communauté intitulé Workflow Git à l'aide d'un dépôt sur plusieurs instances : développement, préproduction et production.

  • Looker fusionne les modifications d'une branche de développement Looker dans la branche de production à l'aide de la méthode de fusion des commits. Lorsque vous utilisez l'interface de votre fournisseur Git, assurez-vous que vos développeurs n'utilisent pas la fusion de squash ni la fusion de rebase. Pour en savoir plus, consultez la section Options de fusion dans l'interface du fournisseur Git.

Configurer votre projet avec des demandes d'extraction intégrées

Pour configurer votre projet Looker avec des demandes d'extraction Git:

  1. Dans votre projet, sélectionnez Paramètres du projet dans le menu des icônes situé à gauche.
  2. Dans la section Intégration Git de l'onglet Configuration, sélectionnez Demandes d'extraction recommandées ou Demandes d'extraction requises.
  3. Si vous souhaitez configurer un webhook de déploiement automatique sur l'interface de votre fournisseur Git, vous pouvez copier les informations du webhook et les coller dans un fichier texte. Si votre projet est configuré pour utiliser le mode de déploiement avancé, vous pouvez ignorer cette étape. Vous pouvez également décider plus tard et revenir aux paramètres du projet pour obtenir les informations sur le webhook.
  4. Vous pouvez également configurer un webhook de déploiement de secret pour authentifier un webhook de déploiement automatique depuis votre fournisseur Git ou un webhook de mode de déploiement avancé. Pour créer un secret de webhook, cliquez sur Définir un secret de webhook. Copiez le secret de déploiement et collez-le dans un fichier texte à utiliser lorsque vous ajoutez le webhook à l'interface de votre fournisseur Git. Vous pouvez également choisir ultérieurement et revenir aux paramètres du projet pour ajouter un secret de déploiement. Pour en savoir plus, consultez la page Configurer la clé secrète de déploiement du webhook.
  5. Cliquez sur Enregistrer la configuration du projet.

Désormais, lorsqu'un développeur Looker valide des modifications dans votre projet, l'IDE Looker affiche le bouton Ouvrir la demande d'extraction. Le bouton ouvre un nouvel onglet de navigateur vers la nouvelle page de demande d'extraction d'extraction sur le site Web de votre fournisseur Git.

Une fois votre projet Looker configuré pour utiliser les demandes d'extraction, procédez comme suit pour configurer le déploiement des commits dans votre environnement de production:

  • Pour déployer automatiquement les derniers commits fusionnés dans votre branche de production, utilisez l'interface de votre fournisseur Git afin d'ajouter un webhook, comme décrit dans la section suivante de cette page.
  • Pour spécifier manuellement les branches ou les commits à déployer, activez le mode de déploiement avancé. Pour en savoir plus sur l'activation et la gestion du mode de déploiement avancé, consultez la page de documentation Mode de déploiement avancé.

Ajouter un webhook à votre fournisseur Git

Pour les projets Looker activés pour les demandes d'extraction, vous pouvez configurer un webhook de déploiement sur l'interface de votre fournisseur Git. Ce webhook déclenche le déploiement du dernier commit à partir de la branche de production chaque fois que vous fusionnez une demande d'extraction d'extraction dans l'interface du fournisseur Git.

Dans la plupart des cas, il est préférable de ne pas configurer de webhook de déploiement automatique si votre projet est configuré pour utiliser le mode de déploiement avancé. Le mode de déploiement avancé vous permet de sélectionner le commit et la branche que vous souhaitez déployer. Par conséquent, dans la plupart des cas, la configuration d'un webhook de déploiement automatique annule les fonctionnalités du mode de déploiement avancé.

Pour ajouter un webhook de déploiement automatique sur l'interface de votre fournisseur Git, commencez par accéder aux paramètres de votre projet dans Looker en cliquant sur l'icône Paramètres dans le menu des icônes situé à gauche du projet. Copiez ensuite le webhook à partir de la section Intégration Git.

Le webhook prend la forme <instance_url>/webhooks/projects/<project_name>/deploy.

Remplacez <instance_url> par l'URL de votre instance Looker. Par exemple, si l'URL de votre instance Looker est example.looker.com et que le nom de votre projet est e_faa, le webhook se présentera comme suit:

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

Dans les paramètres du projet Looker, vous pouvez également obtenir un secret de déploiement de webhook pour authentifier les intégrations Git de votre projet auprès de votre fournisseur Git. Pour en savoir plus, consultez la page Configurer la clé secrète de déploiement du webhook.

Une fois que vous disposez de l'URL et du secret de déploiement du webhook, vous pouvez les saisir dans l'interface de votre fournisseur Git. Si votre fournisseur Git est GitHub, procédez comme suit:

  1. Accédez aux paramètres du dépôt de votre projet dans votre dépôt GitHub.
  2. Dans les paramètres de votre dépôt, cliquez sur Webhooks. Cliquez sur Ajouter un webhook pour ouvrir la fenêtre Ajouter un webhook.
  3. Dans la zone de texte URL de la charge utile, collez les informations de webhook que vous avez copiées depuis la section Intégration Git dans Looker.
  4. Vous pouvez éventuellement ajouter un secret de déploiement de webhook qui authentifie les intégrations Git de votre projet auprès de votre fournisseur Git. Copiez le secret de déploiement depuis les paramètres de votre projet LookML et collez-le dans la zone de texte Secret de l'interface du fournisseur Git. Pour en savoir plus, consultez la page Configurer la clé secrète de déploiement du webhook.
  5. Sélectionnez l'option Uniquement l'événement push dans le champ Quels événements souhaitez-vous déclencher ?.
  6. Cliquez sur Add webhook (Ajouter un Webhook).

Utiliser un webhook de déploiement pour extraire des données d'un dépôt Git distant

Lorsque les demandes d'extraction sont activées pour votre projet LookML et que les webhooks de déploiement ne sont pas automatisés, vous pouvez parfois constater que le LookML que vous voyez en mode production de Looker ne correspond pas au LookML sur la branche principale de votre dépôt Git. Cela peut se produire dans les cas suivants:

  • Lorsque les demandes d'extraction sont activées pour le dépôt
  • Lorsque le LookML a été modifié en dehors de l'environnement de développement de Looker, par exemple :
    • Dans le dépôt Git lui-même
    • Sur une autre instance Looker, comme une instance de préproduction

Vous pouvez synchroniser la branche de production de Looker avec la branche principale du dépôt en utilisant un webhook de déploiement:

  1. Ouvrez un nouvel onglet du navigateur et saisissez l'URL suivante, en remplaçant <instance_url> par l'URL de votre instance Looker et <project_name> par le nom de votre projet LookML:

    <instance_url>/webhooks/projects/<project name>/deploy
    
  2. Après avoir exécuté l'URL du webhook de déploiement, une page Web vide affiche un message de réussite semblable à celui-ci:

    {"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"}
    

Votre mode de production dans Looker a été mis à jour pour refléter votre branche principale Git distante. Votre branche développeur personnelle et les branches partagées ne sont pas concernées.

Effectuer une extraction depuis un dépôt Git distant pour les webhooks avec des secrets de déploiement

Si votre projet LookML nécessite également un secret de déploiement de webhook pour le transfert des modifications de votre branche principale vers la branche de production, vous recevrez l'une des erreurs suivantes lorsque vous synchroniserez la branche de production avec la branche principale du dépôt en utilisant la méthode décrite dans la section précédente, Utiliser un webhook de déploiement pour extraire des données d'un dépôt Git distant:

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

ou

{"error":"Not found."}

Au lieu d'utiliser le webhook de déploiement, vous pouvez exécuter la commande cURL suivante dans votre terminal à l'aide du secret du webhook. Veillez à remplacer les champs suivants:

  • Remplacez <instance_URL> par l'URL de votre instance Looker.
  • Remplacez <deploy_secret> par le secret de déploiement de votre projet.
  • Remplacez <project_name> par le nom de votre projet LookML.
curl -i -X POST -H "X-Looker-Deploy-Secret:<deploy_secret>" https://<instance_url>/webhooks/projects/<project_name>/deploy

Par exemple, si vous devez synchroniser une branche de production pour le projet_commerce sur l'instance Brettcase avec la branche principale du dépôt:

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

Options de fusion dans l'interface du fournisseur Git

Si votre projet Looker est intégré aux demandes d'extraction, vos développeurs utilisent l'interface de votre fournisseur Git pour envoyer des demandes d'extraction et fusionner les modifications dans la branche de production.

Looker accepte la méthode merge commit qui consiste à fusionner les modifications d'une branche de développement dans votre branche de production. Toutefois, l'interface de votre fournisseur Git peut afficher des options de fusion supplémentaires, telles que Squash and merge (Squash and merge) et Rebase and merge (Refondre et fusionner).

Looker n'est pas compatible avec la fusion de la fusion ou la fusion de la base. Vos développeurs doivent donc éviter d'utiliser ces options. Si possible, nous vous recommandons de désactiver ces options pour votre dépôt. Pour désactiver ces options dans un dépôt GitHub, procédez comme suit:

  1. Accédez à l'onglet Paramètres pour accéder aux paramètres du dépôt de votre projet sur GitHub.

    CONSEIL: Pour les projets configurés avec l'intégration Git, vous pouvez utiliser l'option Afficher le projet sur Git dans le menu Git du projet dans Looker.

  2. Dans les paramètres de votre dépôt, cliquez sur Options dans le menu de navigation de gauche.

  3. Faites défiler la page jusqu'à la section Bouton de fusion et ne cochez que l'option Autoriser les commits de la fusion. Décochez les options Autoriser la fusion du squash et Autoriser la fusion du rebase.

Si vous décochez ces options, elles ne seront plus disponibles lorsqu'une personne fusionnera une branche du dépôt.