Créer une suite d'intégration continue

Une suite d'intégration continue (CI) est un ensemble d'instructions de validation associées à votre projet LookML. Un utilisateur Looker disposant de l'autorisation manage_ci peut configurer les éléments suivants dans une suite d'intégration continue :

Avant de commencer

Avant de pouvoir créer une suite d'intégration continue, vous devez disposer des éléments suivants :

Créer une suite d'intégration continue

Vous pouvez configurer et exécuter les validateurs sur la page Suites de l'IDE Looker :

Page "Suites d'intégration continue"

Pour créer une suite d'intégration continue, procédez comme suit :

  1. Dans l'IDE Looker, cliquez sur l'icône Intégration continue dans la barre de navigation de l'IDE.
  2. Cliquez sur l'onglet Suites pour ouvrir la page Suites.
  3. Sur la page Suites, vous pouvez créer une suite ou en modifier une existante :
    • Pour créer une suite, cliquez sur le bouton Créer une suite.
    • Pour modifier une suite existante, cliquez sur le bouton Modifier la suite correspondant à la suite.
  4. Saisissez un nom dans le champ Nom de la suite. Si vous modifiez une suite existante, vous pouvez cliquer sur l'icône en forme de crayon pour modifier le nom de la suite.
  5. (Facultatif) Activez l'option Déclencher selon une programmation si vous souhaitez configurer des tests de validation automatiques selon une programmation récurrente. Pour en savoir plus, consultez la section Déclencher selon une planification de cette page.
  6. (Facultatif) Activez l'option Déclencher pour les demandes d'extraction de Looker si vous souhaitez configurer des tests de validation automatiques chaque fois qu'un développeur Looker envoie une demande d'extraction'extraction à votre dépôt. Pour en savoir plus, consultez la section Déclencher sur les demandes d'extraction de Looker de cette page.

    Si vous activez le déclenchement des demande d'extraction d'extraction pour une suite d'intégration continue, vous pouvez éventuellement utiliser le champ Uniquement pour la branche cible afin de spécifier que seules les demandes d'extraction vers des branches spécifiques du dépôt doivent déclencher l'exécution de la suite d'intégration continue. Pour en savoir plus, consultez la section Déclencher sur les demandes d'extraction de Looker de cette page.

  7. (Facultatif) Activez l'option Déclencher pour les demandes d'extraction de dbt Cloud si vous souhaitez configurer des tests de validation automatiques chaque fois qu'un job d'intégration continue dbt Cloud est exécuté. Pour en savoir plus, consultez la section Déclencher pour les demandes d'extraction de dbt Cloud de cette page.

  8. (Facultatif) Si vous souhaitez configurer des tests de validation automatiques chaque fois qu'une demande d'extraction est envoyée à un projet en amont (hub) importé, procédez comme suit :

    1. Activez l'option Déclencher pour les demandes d'extraction de projets importés.
    2. Sous Sélectionner les projets en amont auxquels vous abonner, cochez la case correspondant à chaque projet de hub importé qui doit déclencher une exécution de cette suite d'intégration continue. Vous devez sélectionner au moins un projet en amont.

    Pour en savoir plus, consultez la section Déclencher pour les demandes d'extraction de projets importés de cette page.

  9. (Facultatif) Activez l'option Activer les alertes par e-mail si vous souhaitez recevoir des alertes par e-mail en fonction de l'état d'une exécution d'intégration continue. Pour en savoir plus, consultez la section Configurer les alertes de cette page.

  10. Vous pouvez également activer les boutons de validation pour activer un outil de validation et configurer ses options. Pour en savoir plus, consultez les pages de documentation de chacun des validateurs :

  11. Enregistrez vos modifications à l'aide de l'une des méthodes suivantes :

    • Si vous créez une suite, cliquez sur le bouton Créer une suite.
    • Si vous modifiez une suite existante, cliquez sur le bouton Mettre à jour la suite.

Déclencheurs

Les exécutions d'IC peuvent être déclenchées de plusieurs manières :

Déclenchement planifié

Vous pouvez configurer une suite d'intégration continue pour qu'elle se déclenche automatiquement selon un calendrier en activant l'option Déclencher selon un calendrier.

Lorsque cette option est activée, vous pouvez sélectionner la fréquence et les spécificités de l'exécution automatique de votre suite d'intégration continue :

  • Mensuelle, à un jour et une heure spécifiques
  • Hebdomadaire, à un jour et une heure spécifiques
  • Tous les jours, à une heure précise
  • Toutes les heures ou toutes les 2, 3, 4, 6, 8 ou 12 heures, à partir d'une heure précise de la journée et jusqu'à une heure précise de la journée
  • Minutes : toutes les 5, 10, 15, 20 ou 30 minutes, avec des heures de début et de fin spécifiques
  • Certains mois de l'année, à un jour et une heure spécifiques
  • Certains jours de la semaine à une heure précise

Déclencher pour les demandes d'extraction de Looker

Pour configurer une suite d'intégration continue afin qu'elle se déclenche automatiquement lors d'une demande d'extraction d'extraction, activez l'option Déclencher lors des demandes d'extraction de Looker. Pour utiliser le déclenchement par demande d'extraction, votre dépôt Git doit être configuré par votre administrateur Looker sur la page Intégration continue de Looker.

Si vous activez les déclencheurs de demande d'extraction d'extraction pour une suite d'intégration continue, vous pouvez éventuellement spécifier que seules les demandes d'extraction vers des branches spécifiques du dépôt doivent déclencher l'exécution de la suite d'intégration continue. Pour limiter les déclencheurs automatiques de demande d'extraction d'extraction des exécutions d'IC à des branches spécifiques de votre dépôt, saisissez une liste de branches séparées par une virgule dans le champ Uniquement pour la branche cible.

Par exemple, si un dépôt comporte trois branches nommées main, release_1 et dev, vous pouvez saisir main, release_1 dans le champ Uniquement pour la branche cible. Cela signifie que les exécutions d'intégration continue seront déclenchées lorsqu'un développeur Looker enverra une demande d'extraction d'extraction à la branche main ou release_1. Si un développeur Looker envoie une demande d'extraction à la branche dev, cela ne déclenchera pas l'exécution automatique de la suite d'intégration continue.

Déclencher pour les demandes d'extraction de dbt Cloud

Si vous avez configuré l'intégration dbt Cloud sur votre instance, vous pouvez configurer une suite d'IC pour qu'elle se déclenche automatiquement lorsqu'un job d'IC dbt Cloud se termine. La suite CI vérifie si les modifications apportées à vos modèles dbt entraîneront des erreurs SQL dans vos explorations Looker avant le déploiement des modifications dbt.

Pour configurer ce déclencheur, activez l'option Déclencher sur les demandes d'extraction de dbt Cloud lors de la création ou de la modification d'une suite d'intégration continue.

Une fois ce déclencheur activé, configurez les options suivantes :

  • Job dbt Cloud : dans le champ déroulant, sélectionnez le job d'intégration continue dbt Cloud qui doit déclencher cette suite.

  • Attribut utilisateur du schéma : sélectionnez l'attribut utilisateur Looker qui contient le nom du schéma pour votre connexion à la base de données. Seuls les attributs utilisateur qui ont été activés pour l'intégration continue dans le panneau Admin s'afficheront dans cette liste.

Lorsque vous enregistrez la suite avec ce déclencheur activé, Looker enregistre automatiquement un webhook dans votre compte dbt Cloud pour écouter les jobs terminés.

Pour les exécutions déclenchées par dbt Cloud, Looker identifie de manière dynamique le schéma temporaire créé par l'exécution dbt Cloud et remplace l'attribut utilisateur sélectionné par ce nom de schéma temporaire pendant l'exécution de l'intégration continue.

Déclencher pour les demandes d'extraction de projets importés

Si votre projet Looker utilise des importations de projets locaux pour importer d'autres projets depuis la même instance Looker, vous pouvez configurer une suite d'intégration continue pour tester les projets en aval (appelés projets spoke) chaque fois qu'une demande d'extraction'extraction est ouverte ou mise à jour sur un projet en amont importé (appelé projet hub).

Par exemple, supposons que vous disposiez d'un projet hub company_bi importé dans les projets spoke marketing et finance. Vous pouvez configurer un déclencheur dans les projets marketing et finance pour valider ces projets spoke chaque fois qu'une demande d'extraction'extraction est envoyée au dépôt company_bi.

Avant de configurer ce déclencheur, tenez compte des conditions préalables et des comportements suivants :

  • Importations de projets locaux uniquement : tous les projets hub abonnés doivent être importés localement dans le projet spoke à l'aide du paramètre local_dependency dans manifest.lkml sur la même instance Looker. Les projets distants (importations qui utilisent le paramètre remote_dependency dans le fichier manifeste du projet) ne sont pas acceptés.
  • Git et mode Production : le projet spoke et les projets hub importés doivent être déployés en mode Production et l'application GitHub d'intégration continue doit être configurée pour leurs dépôts Git.
  • Autorisations : le rôle Utilisateurs Looker CI doit disposer de l'autorisation develop pour les modèles du projet spoke et des projets hub importés.
  • Comportement du validateur : étant donné que le projet spoke est validé par rapport à sa version en production et qu'il n'existe aucun état Git de branche de développement auquel le comparer, la validation incrémentielle est automatiquement désactivée pour les exécutions déclenchées par les demandes d'extraction de projets importés, quel que soit le paramètre de la suite. Nous vous recommandons également de désactiver le validateur LookML d'IC et le validateur de style d'IC sur les suites qui ne sont déclenchées que par des demandes d'extraction de projets importés, car ces validateurs ne vérifient que les fichiers du projet spoke et ne sont pas affectés par les modifications en amont.

Pour configurer un projet spoke afin qu'il exécute la validation d'intégration continue lorsque des demandes d'extraction sont envoyées à un ou plusieurs projets hub importés, procédez comme suit lors de la création ou de la modification d'une suite d'intégration continue dans le projet spoke :

  1. Activez l'option Déclencher pour les demandes d'extraction de projets importés.
  2. Sous Sélectionner les projets en amont auxquels vous abonner, cochez la case correspondant à chaque projet de hub importé qui doit déclencher une exécution de cette suite d'intégration continue. Vous devez sélectionner au moins un projet en amont.

Si vous souhaitez que les modifications apportées à un projet hub déclenchent des exécutions de validation dans plusieurs projets spoke, vous devez configurer une suite d'intégration continue dans chaque projet spoke.

Lorsque vous enregistrez la suite CI, Looker crée automatiquement un abonnement webhook sur le dépôt de chaque projet hub sélectionné pour les événements de demande d'extraction d'extraction. Lorsqu'une demande d'extraction est envoyée au dépôt d'un projet hub abonné, Looker déclenche une exécution CI dans le projet spoke. L'exécution valide la version en production du projet spoke tout en épinglant temporairement le projet hub importé au commit de la demande d'extraction d'extraction. Looker signale le résultat de l'exécution de l'intégration continue du projet spoke en tant qu'état de commit sur la demande d'extraction du projet hub. Vous pouvez également afficher les détails de l'exécution sur la page Exécutions du projet spoke dans l'IDE Looker, où la colonne Déclencheur affiche Importation de projet et la page des résultats d'exécution inclut une section Importations de projet. Pour en savoir plus sur l'exécution de ces suites et l'inspection de leurs résultats, consultez Exécuter des suites d'intégration continue et Afficher les résultats d'une exécution d'intégration continue.

Configurer les alertes

Pour recevoir des alertes par e-mail en fonction de l'état de vos exécutions d'intégration continue, vous pouvez configurer des alertes pour une suite d'intégration continue. Cela vous permet de surveiller les exécutions d'intégration continue sans avoir à consulter la page Exécutions dans l'IDE Looker.

Pour configurer des alertes par e-mail pour une suite d'intégration continue, procédez comme suit lors de la création ou de la modification d'une suite d'intégration continue :

  1. Activez l'option Activer les alertes par e-mail.
  2. Dans le champ Adresses e-mail, saisissez une liste d'adresses e-mail séparées par une virgule qui doivent recevoir les alertes.
  3. Cochez les cases correspondant aux états de job qui doivent déclencher une alerte :
    • Échec : déclenche l'envoi d'un e-mail lorsqu'une exécution d'intégration continue échoue aux tests de validation.
    • Erreur : déclenche l'envoi d'un e-mail lorsqu'une exécution d'intégration continue rencontre une erreur système ou de configuration.
    • Réussie : déclenche l'envoi d'un e-mail lorsqu'une exécution CI se termine correctement.
    • Annulée : déclenche l'envoi d'un e-mail lorsqu'une exécution d'intégration continue est annulée.

Supprimer une suite

Pour supprimer une suite d'intégration continue, procédez comme suit :

  1. Dans l'IDE Looker, cliquez sur l'icône Intégration continue dans la barre de navigation de l'IDE.
  2. Cliquez sur l'onglet Suites pour ouvrir la page Suites.
  3. Sur la page Suites, cliquez sur le bouton Modifier la suite correspondant à la suite.
  4. Sur la page de la suite, cliquez sur le bouton Supprimer la suite.
  5. Dans la boîte de dialogue de confirmation, cliquez sur le bouton Supprimer la suite.