Partager via


Contrôle de code source dans Synapse Studio

Par défaut, Synapse Studio crée le code directement pour le service Synapse. Si vous avez besoin de collaboration à l’aide de Git pour le contrôle de code source, Synapse Studio vous permet d’associer votre espace de travail à un référentiel Git, Azure DevOps ou GitHub.

Cet article explique comment configurer et travailler dans un espace de travail Synapse avec le référentiel git activé. Nous mettons également en évidence quelques bonnes pratiques et un guide de dépannage.

Notes

Pour utiliser GitHub dans Azure Gov et Microsoft Azure géré par 21Vianet, vous pouvez apporter votre propre application OAuth GitHub dans Synapse Studio pour l’intégration git. L’expérience de configuration est la même avec ADF. Vous pouvez consulter le blog d’annonce.

Prérequis

Les utilisateurs doivent disposer au moins du rôle Azure Contributeur (contrôle d’accès en fonction du rôle Azure) sur l’espace de travail Synapse pour configurer, modifier des paramètres et déconnecter un référentiel Git avec Synapse.

Configurer le référentiel Git dans Synapse Studio

Après avoir lancé Synapse Studio, vous pouvez configurer un référentiel Git dans votre espace de travail. Un espace de travail Synapse Studio ne peut être associé qu’à un seul référentiel Git à la fois.

Méthode de configuration 1 : barre globale

Dans la barre globale de Synapse Studio, sélectionnez le menu déroulant Synapse Live , puis Configurer un référentiel de code.

Configure the code repository settings from authoring

Méthode de configuration 2 : Gérer le hub

Accédez au hub de gestion de Synapse Studio. Sélectionnez Configuration Git dans la section Contrôle de code source. Si vous n’avez pas de référentiel connecté, cliquez sur Configure (Configurer).

Configure the code repository settings from management hub

Vous pouvez connecter le référentiel Git Azure DevOps ou GitHub dans votre espace de travail.

Se connecter au référentiel Git Azure DevOps

Vous pouvez associer un espace de travail Synapse à un référentiel Azure DevOps pour le contrôle de code source, la collaboration, la gestion des versions, etc. Si vous n’avez pas de référentiel Azure DevOps, suivez ces instructions pour créer vos ressources de référentiel.

Paramètres du référentiel Git Azure DevOps

Quand vous vous connectez à votre dépôt Git, commencez par sélectionner le type de dépôt Git Azure DevOps, puis sélectionnez un locataire Microsoft Entra dans la liste déroulante et cliquez sur Continuer.

Configure the code repository settings

Le volet de configuration affiche les paramètres Azure DevOps git suivants :

Paramètre Description Valeur
Type de référentiel Type du dépôt de code Azure Repos.
Azure DevOps Git ou GitHub
Connexion inter-locataire Case à cocher pour se connecter avec un compte inter-locataire. non sélectionné (par défaut)
Microsoft Entra ID Votre nom de locataire Microsoft Entra. <your tenant name>
Compte Azure DevOps Nom de votre organisation Azure Repos. Vous trouverez le nom de votre organisation Azure Repos sur https://{organization name}.visualstudio.com. Vous pouvez vous connecter à votre organisation Azure Repos pour accéder à votre profil Visual Studio et visualiser vos dépôts et projets. <your organization name>
Nom du projet Nom de votre projet Azure Repos. Vous trouverez le nom de votre projet Azure Repos sur https://{organization name}.visualstudio.com/{project name}. <your Azure Repos project name>
RepositoryName Nom de votre dépôt de code Azure Repos. Les projets Azure Repos contiennent des dépôts Git pour gérer votre code source à mesure que votre projet se développe. Vous pouvez créer un nouveau référentiel ou utiliser un référentiel existant déjà présent dans le projet. <your Azure Repos code repository name>
Branche de collaboration Votre branche de collaboration Azure Repos utilisée pour la publication. Par défaut, il s’agit de master. Modifiez ce paramètre au cas où vous souhaitez publier des ressources à partir d’une autre branche. Vous pouvez sélectionner des branches existantes ou en créer de nouvelles. <your collaboration branch name>
Dossier racine Votre dossier racine de votre branche de collaboration Azure Repos. <your root folder name>
Import existing resources to repository (Importer des ressources existantes dans le référentiel) Indique s’il convient d’importer des ressources existantes à partir de Synapse Studio dans un référentiel Azure Repos Git. Cochez la case pour importer vos ressources d’espace de travail (à l’exception des pools) dans le référentiel Git associé au format JSON. Cette action exporte chaque ressource individuellement. Lorsque cette case n’est pas cochée, les ressources existantes ne sont pas importées. Cochée (par défaut)
Importer la ressource dans cette branche Sélectionnez la branche dans laquelle les ressources (script SQL, notebook, définition de travail Spark, jeu de données, flux de données, etc.) sont importées.

Vous pouvez également utiliser le lien du référentiel pour pointer rapidement vers le référentiel git auquel vous souhaitez vous connecter.

Remarque

Azure Synapse ne prend pas en charge la connexion au référentiel sur site Azure DevOps.

Utiliser un autre locataire Microsoft Entra

Le dépôt Git Azure Repos peut se trouver dans un autre locataire Microsoft Entra. Pour spécifier un autre locataire Microsoft Entra, vous devez avoir des autorisations d’administrateur sur l’abonnement Azure que vous utilisez. Pour plus d’informations, consultez la rubrique Modifier l’administrateur d’abonnement.

Important

Pour se connecter à une autre instance Microsoft Entra ID, l’utilisateur connecté doit être membre de cet annuaire Active Directory.

Ajouter votre compte Microsoft personnel

Pour utiliser un compte Microsoft personnel à des fins d'intégration de Git, vous pouvez lier votre référentiel Azure personnel au répertoire Active Directory de votre organisation.

  1. Ajoutez votre compte Microsoft personnel au répertoire Active Directory de votre organisation en tant qu’invité. Pour plus d’informations, consultez Ajouter des utilisateurs Microsoft Entra B2B Collaboration dans le portail Azure.

  2. Connectez-vous au portail Azure avec votre compte Microsoft personnel. Basculez ensuite vers le répertoire Active Directory de votre organisation.

  3. Accédez à la section Azure DevOps qui affiche désormais votre référentiel personnel. Sélectionnez le référentiel et connectez-vous à Active Directory.

Au terme de cette procédure de configuration, votre référentiel personnel est disponible lorsque vous configurez l’intégration de Git dans Synapse Studio.

Pour plus d’informations sur la connexion d’Azure Repos à l’annuaire Active Directory de votre organisation, consultez Connecter votre organisation à Microsoft Entra ID.

Utiliser un compte Azure DevOps inter-locataire

Lorsque votre Azure DevOps n'est pas dans le même locataire que l'espace de travail Synapse, vous pouvez configurer l'espace de travail avec un compte Azure DevOps de locataire croisé.

  1. Sélectionnez l’option Connexion inter-locataire, puis cliquez sur Continuer

    Select the cross tenant sign in

  2. Sélectionnez OK dans la boîte de dialogue.

    Confirm the cross tenant sign in

  3. Cliquez sur Utiliser un autre compte, puis connectez-vous avec votre compte Azure DevOps.

    Use another account

  4. Une fois connecté, choisissez le répertoire et référentiel, puis configurez-le en conséquence.

    Choose the directory

    Remarque

    Pour vous connecter à l’espace de travail, vous devez utiliser la première connexion pour vous connecter au compte d’utilisateur de votre espace de travail Synapse. Votre compte Azure DevOps inter-locataire est utilisé uniquement pour la connexion et l’accès au référentiel Azure DevOps associé à cet espace de travail Synapse.

Se connecter avec GitHub

Vous pouvez associer un espace de travail à un référentiel GitHub pour le contrôle du code source, la collaboration et la gestion des versions. Si vous n’avez pas un compte ou un référentiel GitHub, suivez ces instructions pour créer vos ressources.

L’intégration de GitHub à Synapse Studio prend à la fois en charge le service GitHub public (https://github.com) que GitHub Enterprise. Vous pouvez utiliser des référentiels GitHub publics et privés à condition de disposer des autorisations de lecture et d'écriture pour ceux-ci dans GitHub.

Paramètres GitHub

Quand vous vous connectez à votre référentiel Git, commencez par sélectionner votre type de référentiel comme GitHub, puis indiquez votre compte d’GitHub, votre URL GitHub Enterprise Server si vous utilisez GitHub Enterprise Server, ou le nom de votre organisation GitHub Enterprise si vous utilisez GitHub Enterprise Cloud. Sélectionnez Continuer.

Notes

Si vous utilisez GitHub Enterprise Cloud, laissez la case Utiliser GitHub Enterprise Server désélectionnée.

GitHub repository settings

Le volet de configuration affiche les paramètres du dépôt GitHub suivants :

Paramètre Description Valeur
Type de référentiel Type du dépôt de code Azure Repos. GitHub
Utiliser GitHub Enterprise Cochez la case pour sélectionner GitHub Enterprise non sélectionné (par défaut)
URL GitHub Enterprise URL racine de GitHub Enterprise (doit être HTTPS pour un serveur local GitHub Enterprise). Par exemple : https://github.mydomain.com. Obligatoire uniquement si l’option Utiliser GitHub Enterprise est sélectionnée <your GitHub enterprise url>
Compte GitHub Le nom de votre compte GitHub. Vous pouvez trouver ce nom dans https://github.com/{account nom}/{nom du référentiel}. En naviguant sur cette page, vous êtes invité à entrer les informations d’identification GitHub OAuth sur votre compte GitHub. <your GitHub account name>
Nom du dépôt Le nom de votre référentiel de code GitHub. Les comptes GitHub contiennent des référentiels Git pour gérer votre code source. Vous pouvez créer un nouveau référentiel ou utiliser un référentiel existant déjà présent dans le compte. <your repository name>
Branche de collaboration Votre branche de collaboration GitHub utilisée pour la publication. Par défaut, il s’agit de la branche principale. Modifiez ce paramètre au cas où vous souhaitez publier des ressources à partir d’une autre branche. <your collaboration branch>
Dossier racine Votre dossier racine de votre branche de collaboration GitHub. <your root folder name>
Import existing resources to repository (Importer des ressources existantes dans le référentiel) Indique s’il convient d’importer des ressources existantes à partir de Synapse Studio dans un référentiel Git. Cochez la case pour importer vos ressources d’espace de travail (à l’exception des pools) dans le référentiel Git associé au format JSON. Cette action exporte chaque ressource individuellement. Lorsque cette case n’est pas cochée, les ressources existantes ne sont pas importées. Activée (par défaut)
Importer la ressource dans cette branche Sélectionnez la branche dans laquelle les ressources (script SQL, notebook, définition de travail Spark, jeu de données, flux de données, etc.) sont importées.

Organisations GitHub

La connexion à une organisation GitHub nécessite que l’organisation accorde l’autorisation à Synapse Studio. Un utilisateur disposant d’autorisations d’administrateur sur l’organisation doit effectuer les étapes ci-dessous.

Première connexion à GitHub

Si vous vous connectez à GitHub à partir de Synapse Studio pour la première fois, procédez comme suit pour vous connecter à une organisation GitHub.

  1. Dans le volet Configuration git, entrez le nom de l’organisation dans le champ Compte GitHub. Une invite de connexion à GitHub s'affiche.

  2. Connectez-vous à l’aide des informations d’identification de l’utilisateur.

  3. Il vous est demandé d'autoriser Synapse en tant qu'application appelée Azure Synapse. Sur cet écran, vous voyez une option pour accorder à Synapse l'autorisation d'accéder à l'organisation. Si vous ne voyez pas l’option permettant d’accorder une autorisation, demandez à un administrateur d’accorder manuellement l’autorisation par le biais de GitHub.

Une fois que vous avez suivi ces étapes, votre espace de travail peut se connecter aux référentiels publics et privés au sein de votre organisation. Si vous ne parvenez pas à vous connecter, essayez de vider le cache du navigateur et réessayez.

Déjà connecté à GitHub à l’aide d’un compte personnel

Si vous êtes déjà connecté à GitHub et que vous avez accordé uniquement l’autorisation d’accéder à un compte personnel, suivez les étapes ci-dessous pour accorder des autorisations à une organisation.

  1. Accédez à GitHub et ouvrez Paramètres.

    Open GitHub settings

  2. Sélectionnez Applications. Dans l’onglet Applications OAuth autorisées, Azure Synapse apparaît.

    Authorize OAuth Apps

  3. Sélectionnez Azure Synapse et accordez l’accès à votre organisation.

    Grant organization permission

Une fois ces étapes terminées, votre espace de travail peut se connecter aux référentiels publics et privés au sein de votre organisation.

Gestion de versions

Les systèmes de contrôle de version (également appelés contrôle de code source) permettent aux développeurs de collaborer sur le code et de suivre les modifications. Le contrôle du code source est un outil essentiel pour les projets impliquant plusieurs développeurs.

Création de branches de fonctionnalités

Chaque référentiel Git associé à Synapse Studio comporte une branche de collaboration. (main ou master est la branche de collaboration par défaut). Les utilisateurs peuvent également créer des branches de fonctionnalités en cliquant sur + Nouvelle branche dans la liste déroulante des branches.

Create new branch

Une fois que le volet Nouvelle branche s’affiche, entrez le nom de votre branche de fonctionnalité, puis sélectionnez une branche à partir de laquelle vous souhaitez baser le travail.

Create branch based on private branch

Lorsque vous êtes prêt à fusionner les modifications de votre branche de fonctionnalité vers votre branche de collaboration, cliquez sur le menu déroulant de la branche et sélectionnez Créer une demande d'extraction. Cette action vous dirigera vers un fournisseur Git où vous pouvez augmenter les demandes de tirage, procéder à des révisions du code et fusionner les modifications dans votre branche de collaboration. Vous n'êtes autorisé à publier sur le service Synapse qu'à partir de votre branche de collaboration.

Create a new pull request

Configurer les paramètres de publication

Par défaut, Synapse Studio génère les modèles d’espace de travail et les enregistre dans une branche appelée workspace_publish. Pour configurer une branche de publication personnalisée, ajoutez un fichier publish_config.json au dossier racine dans la branche de collaboration. Lors de la publication, Synapse Studio lit ce fichier, recherche le champ publishBranch et enregistre les fichiers de modèle d'espace de travail à l'emplacement spécifié. Si la branche n'existe pas, Synapse Studio la créera automatiquement. Vous trouverez ci-dessous un exemple de ce à quoi ressemble ce fichier :

{
    "publishBranch": "workspace_publish"
}

Synapse Studio peut avoir une seule branche de publication à la fois. Lorsque vous spécifiez une nouvelle branche de publication, la branche de publication d'origine n'est pas supprimée. Si vous souhaitez la supprimer, faites-le manuellement.

Publier les modifications de code

Après avoir fusionné les modifications apportées à la branche de collaboration, cliquez sur Publier pour publier manuellement vos modifications de code dans la branche de collaboration sur le service Synapse.

Publish changes

Un volet latéral s'ouvre dans lequel vous confirmez que la branche de publication et les modifications en attente sont correctes. Une fois que vous avez vérifié vos modifications, cliquez sur OK pour confirmer la publication.

Confirm the correct publish branch

Important

La branche de collaboration n’est pas représentative de ce qui est déployé dans le service. Les modifications apportées à la branche de collaboration doivent être publiées manuellement.

Passer à un autre dépôt Git

Pour basculer vers un autre référentiel Git, accédez à la page de configuration de Git dans le hub de gestion, sous Contrôle de code source. Sélectionnez Déconnecter.

Git icon

Entrez le nom de votre espace de travail, puis cliquez sur Déconnecter pour supprimer le référentiel Git associé à votre espace de travail.

Après avoir supprimé l’association avec le dépôt actuel, vous pouvez configurer vos paramètres Git pour utiliser un autre dépôt, puis importer des ressources existantes dans le nouveau dépôt.

Important

La suppression de la configuration Git d’un espace de travail ne supprime rien dans le référentiel. L'espace de travail Synapse contient toutes les ressources publiées. Vous pouvez continuer à le modifier directement par rapport au service.

Meilleures pratiques d'intégration Git

  • Autorisations. Une fois que vous avez un référentiel git connecté à votre espace de travail, toute personne pouvant accéder à votre référentiel git avec n'importe quel rôle dans votre espace de travail peut mettre à jour les artefacts, comme le script sql, le bloc-notes, la définition de tâche Spark, l'ensemble de données, le flux de données et le pipeline en mode git. En règle générale, vous ne souhaitez pas autoriser tous les membres de l’équipe à mettre à jour l’espace de travail. Accordez uniquement l’autorisation d’accès au référentiel git aux auteurs d’artefacts de l’espace de travail Synapse.
  • Collaboration. Il est recommandé de ne pas autoriser les archivages directs dans la branche de collaboration. Cette restriction peut aider à prévenir les bogues, car chaque enregistrement passe par un processus d'examen de demande d'extraction décrit dans Création de branches de fonctionnalités.
  • Mode réel Synapse. Après la publication en mode git, toutes les modifications sont reflétées en mode synapse en direct. En mode réel Synapse, la publication est désactivée. Vous pouvez afficher et exécuter des artefacts en mode réel si vous avez reçu l’autorisation appropriée.
  • Modifier les artefacts dans Studio. Synapse Studio est le seul endroit où vous pouvez activer le contrôle de code source de l’espace de travail et synchroniser automatiquement les modifications dans Git. Toute modification via SDK, PowerShell, n'est pas synchronisée avec git. Nous vous recommandons de toujours modifier l’artefact dans Studio lorsque git est activé.

Résolution des problèmes d’intégration Git

Accès au mode git

Si vous avez reçu l'autorisation d'accéder au référentiel git GitHub lié à votre espace de travail, mais que vous ne pouvez pas accéder au mode Git :

  1. Effacez le cache de votre navigateur et actualisez la page.

  2. Connectez-vous à votre compte GitHub.

Branche de publication obsolète

Si la branche de publication n’est pas synchronisée avec la branche de collaboration et contient des ressources obsolètes malgré une publication récente, essayez d’effectuer les étapes suivantes :

  1. Supprimez votre dépôt Git actuel

  2. Reconfigurez Git avec les mêmes paramètres, mais vérifiez que l’option Import existing resources to repository (Importer des ressources existantes dans le référentiel) est sélectionnée, puis choisissez la même branche.

  3. Créez une demande de tirage pour fusionner les modifications apportées à la branche de collaboration

Fonctionnalités non prises en charge

  • Synapse Studio n’autorise pas le cherry-picking des validations ni la publication sélective des ressources.
  • Synapse Studio ne prend pas en charge les messages de validation personnalisés.
  • De par sa conception, l'action de suppression dans Studio s'engage à git directement

Étapes suivantes