Quellcodeverwaltung in Azure Data Factory

GILT FÜR: Azure Data Factory Azure Synapse Analytics

Tipp

Testen Sie Data Factory in Microsoft Fabric, eine All-in-One-Analyselösung für Unternehmen. Microsoft Fabric deckt alle Aufgaben ab, von der Datenverschiebung bis hin zu Data Science, Echtzeitanalysen, Business Intelligence und Berichterstellung. Erfahren Sie, wie Sie kostenlos eine neue Testversion starten!

Standardmäßig erfolgt die Erstellung mit der Azure Data Factory-Benutzeroberfläche (UX) direkt für den Data Factory-Dienst. Für diese Umgebung gelten die folgenden Einschränkungen:

  • Der Data Factory-Dienst umfasst kein Repository zum Speichern der JSON-Entitäten für Ihre Änderungen. Änderungen können nur über die Schaltfläche Alle veröffentlichen gespeichert werden, und sämtliche Änderungen werden direkt im Data Factory-Dienst veröffentlicht.
  • Der Data Factory-Dienst ist nicht für Kollaboration oder Versionskontrolle optimiert.
  • Die für die Bereitstellung von Data Factory erforderliche Azure Resource Manager-Vorlage ist nicht enthalten.

Um eine bessere Erstellung zu ermöglichen, können Sie mit Azure Data Factory ein Git-Repository mit Azure Repos oder GitHub konfigurieren. Git ist ein Versionskontrollsystem, das eine einfachere Änderungsnachverfolgung und Kollaboration ermöglicht. In diesem Artikel erfahren Sie, wie Sie ein Git-Repository konfigurieren und in diesem arbeiten. Außerdem finden Sie hier Informationen zu bewährten Methoden sowie einen Leitfaden zur Problembehandlung.

Sie können sich auch mit Continuous Integration und Continuous Delivery (CI/CD) in Azure Data Factory vertraut machen, um mehr über das größere CI/CD-Muster zu erfahren, in dem Quellcodeverwaltung ein wichtiger Aspekt ist.

Hinweis

Wir haben den öffentlichen GitHub-Support für Azure Gov und Microsoft Azure hinzugefügt, die von 21Vianet betrieben werden. Weitere Informationen finden Sie im Ankündigungsblog.

Um zu erfahren, wie die Integration von Azure Data Factory in Git funktioniert, sehen Sie sich das folgende 15-minütige Videotutorial an:

Vorteile der Git-Integration

Im Folgenden finden Sie eine Liste einiger der Vorteile der Git-Integration für die Erstellung:

  • Quellcodeverwaltung: Wenn sich Ihre Data Factory-Workloads zu einer unverzichtbaren Komponente entwickeln, sollten Sie Ihre Factory in Git integrieren, um verschiedene Vorteile der Quellcodeverwaltung nutzen zu können. Hierzu zählen etwa folgende:
    • Möglichkeit zum Nachverfolgen/Überwachen von Änderungen
    • Möglichkeit zum Rückgängigmachen von Änderungen, die Fehler verursacht haben
  • Partielle Speicherungen: Wenn Sie etwas mit dem Data Factory-Dienst erstellen, können Sie Änderungen nicht als Entwurf speichern, und alle Veröffentlichungen müssen die Data Factory-Validierung durchlaufen. Für den Fall, dass Ihre Pipelines noch nicht fertig sind oder Sie im Fall eines Computerabsturzes einfach Ihre Änderungen nicht verlieren möchten, ermöglicht die Git-Integration inkrementelle Änderungen von Data Factory-Ressourcen unabhängig von ihrem Zustand. Durch Konfigurieren eines Git-Repositorys können Sie Änderungen speichern und die Veröffentlichung erst dann durchführen, nachdem Sie Ihre Änderungen zu Ihrer Zufriedenheit getestet haben.
  • Zusammenarbeit und Kontrolle: Wenn mehrere Ihrer Teammitglieder Beiträge zur selben Factory liefern, empfiehlt es sich, Ihre Teamkollegen über einen Code Review-Prozess miteinander zusammenarbeiten zu lassen. Sie können die Factory auch so einrichten, dass nicht alle Mitwirkenden über die gleichen Berechtigungen verfügen. Einige Teammitglieder sind möglicherweise nur berechtigt, Änderungen über Git vorzunehmen, und nur bestimmte Personen im Team dürfen die Änderungen an der Factory veröffentlichen.
  • Verbesserung von CI/CD: Wenn Sie eine Bereitstellung in mehreren Umgebungen mit einem Continuous Delivery-Prozess durchführen, werden bestimmte Aktionen durch die Git-Integration vereinfacht. Zu diesen Aktionen zählen beispielsweise folgende:
    • Konfigurieren Ihrer Releasepipeline, sodass sie automatisch ausgelöst wird, sobald Änderungen an der Entwicklungsfactory vorgenommen wurden.
    • Anpassen der Eigenschaften in Ihrer Factory, die als Parameter in der Resource Manager-Vorlage verfügbar sind. Es kann hilfreich sein, nur die erforderlichen Eigenschaften als Parameter beizubehalten und alles andere hartzucodieren.
  • Höhere Leistung: Im Durchschnitt wird eine Factory mit Git-Integration 10-mal schneller geladen als eine für die Erstellung für den Data Factory-Dienst. Diese Leistungsverbesserung liegt daran, dass Ressourcen über Git heruntergeladen werden.

Hinweis

Das direkte Erstellen mit dem Data Factory-Dienst wird auf der Azure Data Factory-Benutzeroberfläche deaktiviert, wenn ein Git-Repository konfiguriert ist. Änderungen, die über PowerShell oder ein SDK vorgenommen wurden, werden direkt im Data Factory-Dienst veröffentlicht und nicht in Git eingegeben.

Herstellen einer Verbindung mit einem Git-Repository

Es gibt vier verschiedene Möglichkeiten, eine Verbindung zwischen einem Git-Repository und Ihrer Data Factory herzustellen – sowohl für Azure Repos als auch für GitHub. Nachdem Sie eine Verbindung mit einem Git-Repository hergestellt haben, können Sie Ihre Konfiguration im Verwaltungshub unter Git-Konfiguration im Abschnitt Quellcodeverwaltung anzeigen und verwalten.

Konfigurationsmethode 1: Startseite

Wählen Sie auf der Homepage von Azure Data Factory oben Coderepository einrichten aus.

Konfigurieren eines Coderepositorys auf der Homepage

Konfigurationsmethode 2: Erstellungsbereich

Wählen Sie auf der Azure Data Factory-Benutzeroberfläche im Erstellungsbereich das Dropdownmenü Data Factory und dann Coderepository einrichten aus.

Konfigurieren der Coderepositoryeinstellungen im Erstellungsbereich

Konfigurationsmethode 3: Verwaltungshub

Navigieren Sie zum Verwaltungshub in Azure Data Factory Studio. Wählen Sie Git-Konfiguration im Abschnitt Quellcodeverwaltung aus. Sollte kein Repository verbunden sein, wählen Sie Konfigurieren aus.

Konfigurieren der Coderepositoryeinstellungen im Verwaltungshub

Konfigurationsmethode 4: Während der Erstellung einer Factory

Wenn Sie im Azure-Portal eine neue Data Factory erstellen, können Sie auf der Registerkarte Git-Konfiguration Informationen zum Git-Repository konfigurieren.

Hinweis

Wenn Sie Git im Azure-Portal konfigurieren, müssen Einstellungen wie Projektname und Repositoryname manuell eingegeben werden, da keine Dropdownliste zur Verfügung steht.

Konfigurieren der Coderepositoryeinstellungen im Azure-Portal

Erstellen mit der Azure Repos Git-Integration

Das visuelle Erstellen mit der Azure Repos Git-Integration unterstützt die Quellcodeverwaltung und Kollaboration beim Arbeiten an Data Factory-Pipelines. Sie können eine Data Factory einem Azure Repos Git-Organisationsrepository u.a. für die Quellcodeverwaltung, Kollaboration, Versionsverwaltung zuordnen. Eine einzelne Azure Repos Git-Organisation kann über mehrere Repositorys verfügen. Allerdings kann ein Azure Repos Git-Repository nur einer einzigen Data Factory zugeordnet werden. Wenn Sie noch nicht über eine Azure Repos-Organisation oder ein -Repository verfügen, folgen Sie diesen Anweisungen zum Erstellen der Ressourcen.

Hinweis

Sie können Skript- und Datendateien in einem Azure Repos Git-Repository speichern. Allerdings müssen Sie die Dateien manuell in Azure Storage hochladen. Eine Data Factory-Pipeline lädt Skript- oder Datendateien, die in einem Azure Repos Git-Repository gespeichert sind, nicht automatisch in Azure Storage hoch. Zusätzliche Dateien wie z. B. ARM-Vorlagen, Skripts oder Konfigurationsdateien können im Repository außerhalb des zugeordneten Ordners gespeichert werden. Beachten Sie in diesem Fall, dass eine zusätzliche Aufgabe erforderlich ist, um die Dateien zu erstellen/bereitzustellen und mit ihnen zu interagieren, die außerhalb des zugeordneten Azure DevOps-Ordners gespeichert wurden.

Azure Repos-Einstellungen

Screenshot: Einstellungen zum Konfigurieren eines Repositorys

Der Konfigurationsbereich führt Sie schrittweise durch die Konfiguration der folgenden Coderepositoryeinstellungen:

Einstellung BESCHREIBUNG Wert
Repositorytyp Der Typ des Coderepositorys für Azure Repos.
Azure DevOps Git oder GitHub
Microsoft Entra ID Der Name Ihres Microsoft Entra-Mandanten. <your tenant name>
Azure Repos-Organisation Der Name Ihrer Azure Repos-Organisation. Sie können den Namen Ihrer Azure Repos-Organisation unter https://{organization name}.visualstudio.com finden. Sie können sich bei Ihrer Azure Repos-Organisation anmelden, um auf Ihr Visual Studio-Profil zuzugreifen und Ihre Repositorys und Projekte anzuzeigen. <your organization name>
Projektname Der Name Ihres Azure Repos-Projekts. Sie können den Namen Ihres Azure Repos-Projekts unter https://{organization name}.visualstudio.com/{project name} finden. <your Azure Repos project name>
Repositoryname Der Name Ihres Azure Repos-Coderepositorys. Azure Repos-Projekte enthalten Git-Repositorys zum Verwalten Ihres Quellcodes, wenn Ihr Projekt umfangreicher wird. Sie können ein neues Repository erstellen oder ein vorhandenes Repository verwenden, das sich bereits in Ihrem Projekt befindet. <your Azure Repos code repository name>
Collaboration branch (Kollaborationsbranch) Ihr Branch für die Azure Repos-Kollaboration, der für die Veröffentlichung verwendet wird. Dieser lautet standardmäßig main. Ändern Sie diese Einstellung, falls Sie Ressourcen eines anderen Branchs veröffentlichen möchten. <your collaboration branch name>
Branch für die Veröffentlichung Der Branch für die Veröffentlichung ist der Branch in Ihrem Repository, unter dem ARM-Vorlagen für Veröffentlichungsaufgaben gespeichert und aktualisiert werden. Dieser lautet standardmäßig adf_publish. <your publish branch name>
Stammordner Ihr Stammordner im Branch für die Azure Repos-Kollaboration. <your root folder name>
Vorhandene Data Factory-Ressourcen in Repository importieren Gibt an, ob vorhandene Data Factory-Ressourcen aus dem Dokumenterstellungsbereich in ein Azure Repos Git-Repository importiert werden sollen. Aktivieren Sie das Kontrollkästchen, um Ihre Data Factory-Ressourcen in das zugehörige Git-Repository im JSON-Format zu importieren. Diese Aktion exportiert jede Ressource einzeln (d. h. die verknüpften Dienste und Datasets werden in separate JSONs exportiert). Ist dieses Kontrollkästchen nicht aktiviert, werden die vorhandenen Ressourcen nicht importiert. Aktiviert (Standardeinstellung)
Branch zum Importieren der Ressource Gibt an, in welchen Branch die Data Factory-Ressourcen (Pipelines, Datasets, verknüpfte Dienste usw.) importiert werden. Sie können Ressourcen in einen der folgenden Branches importieren: a. Kollaboration b. Neu erstellen c. Vorhandene verwenden

Hinweis

Wenn Sie Microsoft Edge verwenden und in der Dropdownliste Ihres Azure DevOps-Kontos keine Werte sehen, fügen Sie https://*.visualstudio.com zur Liste der vertrauenswürdigen Sites hinzu.

Bearbeiten von Repositoryeinstellungen

Wenn Anpassungen an den Einstellungen Ihres konfigurierten Azure Repos-Git-Repository vorgenommen werden müssen, können Sie Bearbeiten auswählen.

Screenshot: Schaltfläche „Bearbeiten“ zum Bearbeiten eines Azure  Repos-Git-Repositorys

Sie können Ihren Branch für die Veröffentlichung aktualisieren und entscheiden, ob die Schaltfläche „Veröffentlichen“ in ADF Studio deaktiviert werden soll. Wenn Sie die Schaltfläche „Veröffentlichen“ in Studio deaktivieren, wird sie in Studio abgeblendet. Dadurch wird vermieden, dass die letzte automatisierte Veröffentlichungsbereitstellung überschrieben wird.

Screenshot: Kontrollkästchen zum Deaktivieren der Schaltfläche „Veröffentlichen“ für Data Factory Studio

Verwenden eines anderen Microsoft Entra-Mandanten

Das Azure Repos-Git-Repository kann sich in einem anderen Microsoft Entra-Mandanten befinden. Zum Angeben eines anderen Microsoft Entra-Mandanten müssen Sie über Administratorberechtigungen für das verwendete Azure-Abonnement verfügen. Weitere Informationen finden Sie unter Ändern des Abonnementadministrators.

Wichtig

Um eine Verbindung mit einer anderen Microsoft Entra ID-Instanz herstellen zu können, muss der/die angemeldete Benutzer*in zu diesem Verzeichnis gehören.

Verwenden Ihres persönlichen Microsoft-Kontos

Um ein persönliches Microsoft-Konto für die Git-Integration zu verwenden, können Sie Ihr persönliches Azure-Repository mit dem Active Directory Ihrer Organisation verknüpfen.

  1. Fügen Sie Ihr persönliches Microsoft-Konto als Gast zum Active Directory Ihrer Organisation hinzu. Weitere Informationen finden Sie unter Hinzufügen von Microsoft Entra-B2B Collaboration-Benutzer*innen über das Azure-Portal.

  2. Melden Sie sich mit Ihrem persönlichen Microsoft-Konto beim Azure-Portal an. Wechseln Sie dann zum Active Directory Ihrer Organisation.

  3. Wechseln Sie zum Abschnitt für Azure DevOps – dort wird jetzt Ihr persönliches Repository angezeigt. Wählen Sie das Repository aus, und verbinden Sie es mit Active Directory.

Nach diesen Konfigurationsschritten ist Ihr persönliches Repository verfügbar, wenn Sie die Git-Integration auf der Data Factory-Benutzeroberfläche einrichten.

Weitere Informationen zum Verbinden von Azure Repos mit dem Active Directory Ihrer Organisation finden Sie unter Verbinden Ihrer Azure DevOps-Organisation mit Microsoft Entra ID.

Erstellen der GitHub-Integration

Das visuelle Erstellen mit GitHub-Integration unterstützt Quellcodeverwaltung und Kollaboration beim Arbeiten an den Data Factory-Pipelines. Sie können eine Data Factory einem GitHub-Kontorepository für die Quellcodeverwaltung, Kollaboration und Versionsverwaltung zuordnen. Ein einzelnes GitHub-Konto kann mehrere Repositorys hosten, und jedes Repository kann mehreren Data Factorys zugeordnet werden. Durch die Konfiguration jeder Data Factory für die Verwendung eines anderen Branches innerhalb desselben Repositorys können Sie separate Umgebungen (z. B. Entwicklung, Staging und Produktion) verwalten und gleichzeitig ihre Konfigurationen unabhängig verwalten. Wenn Sie noch nicht über ein GitHub-Konto oder -Repository verfügen, folgen Sie diesen Anweisungen zum Erstellen der Ressourcen.

Die GitHub-Integration mit Data Factory unterstützt sowohl das öffentliche GitHub (also https://github.com) als auch GitHub Enterprise Cloud und GitHub Enterprise Server. Sie können öffentliche und private GitHub-Repositorys mit Data Factory verwenden, sofern Sie über Lese- und Schreibberechtigungen für das Repository in GitHub verfügen. Um eine Verbindung mit einem öffentlichen Repository herzustellen, wählen Sie die Option Linkrepository verwenden aus, da sie im Dropdownmenü Repositoryname nicht angezeigt werden. Die Integration von GitHub Enterprise Server in ADF funktioniert nur mit offiziell unterstützten Versionen von GitHub Enterprise Server.

Bei Repositorys im Besitz eines GitHub-Organisationskontos muss der Administrator die ADF-App autorisieren. Bei Repositorys im Besitz von GitHub-Benutzerkonten kann ein*e Benutzer*in, der bzw. die mindestens über die Berechtigung „Projektmitarbeiter“ verfügt, die ADF-App autorisieren. Durch diese Berechtigung erhält die ADF-App keinen direkten Zugriff auf alle Repositorys im Besitz des Kontos bzw. der Organisation. Die ADF-App kann nur im Auftrag des Benutzers und basierend auf den Zugriffsberechtigungen des Benutzers auf Repositorys zugreifen.

Hinweis

Wenn Sie Microsoft Edge verwenden, funktionieren niedrigere GitHub Enterprise-Versionen als 2.1.4 nicht. GitHub unterstützt offiziell Versionen >=3.0, und diese sollten alle für ADF geeignet sein. Wenn GitHub die Mindestversion ändert, ändern sich auch die von ADF unterstützten Versionen.

GitHub-Einstellungen

 Screenshot des GitHub-Bereichs zum Konfigurieren eines Repositorys

Hinweis

Wenn der Fehler beim Auflisten von GitHub-Repositorys. Stellen Sie sicher, dass der Kontoname korrekt ist und Sie über die Berechtigung zum Ausführen der Aktion verfügen auftritt, stellen Sie sicher, dass Sie den richtigen Besitzernamen und nicht die GitHub-Repository-URL verwenden. Wenn beispielsweise die Repository-URL https://github.com/contoso/contoso-ads lautet, ist der Besitzer contoso, nicht die vollständige URL.

Screenshot des GitHub-Bereichs zum Konfigurieren eines Repositorys mithilfe von Enterprise Server

GitHub-Repositoryeinstellungen

Im Konfigurationsbereich werden die folgenden Einstellungen für das GitHub-Repository angezeigt:

Einstellung Beschreibung Wert
Repositorytyp Der Typ des Coderepositorys für Azure Repos. GitHub
Verwenden von GitHub Enterprise Server Kontrollkästchen zum Auswählen von GitHub Enterprise Server nicht ausgewählt (Standard)
GitHub Enterprise Server-URL Die GitHub Enterprise-URL des Stamms (muss für den lokalen GitHub Enterprise-Server „HTTPS“ lauten). Beispiel: https://github.mydomain.com. Nur erforderlich, wenn GitHub Enterprise Server verwenden ausgewählt ist <your GitHub Enterprise Server URL>
Besitzer des GitHub-Repositorys GitHub-Organisation oder -Konto, die bzw. das das Repository besitzt. Sie finden diesen Namen in „https://github.com/{owner}/{repository name}“. Beim Navigieren zu dieser Seite werden Sie zur Eingabe der GitHub-OAuth-Anmeldeinformationen Ihrer GitHub-Organisation oder Ihres GitHub-Kontos aufgefordert. Wenn Sie GitHub Enterprise Server verwenden auswählen, wird ein Dialogfeld angezeigt, in dem Sie Ihr Zugriffstoken eingeben können. <your GitHub repository owner name>
Repositoryname Der Name Ihres GitHub-Coderepositorys. GitHub-Konten enthalten Git-Repositorys zum Verwalten Ihres Quellcodes. Sie können ein neues Repository erstellen oder ein vorhandenes Repository verwenden, das sich bereits in Ihrem Konto befindet. Geben Sie den Namen Ihres GitHub-Coderepositorys an, wenn Sie Repository auswählen auswählen. <your repository name>
Link zum Git-Repository Der Link zu Ihrem GitHub-Coderepository. Geben Sie den Link zu Ihrem GitHub-Coderepository an, wenn Sie Repositorylink verwenden auswählen. <your repository link>
Collaboration branch (Kollaborationsbranch) Ihr Branch für die GitHub-Kollaboration, der für die Veröffentlichung verwendet wird. Standardmäßig ist dies der Mainbranch. Ändern Sie diese Einstellung, falls Sie Ressourcen eines anderen Branchs veröffentlichen möchten. Sie können hier auch einen neuen Kollaborationsbranch erstellen. <your collaboration branch>
Branch für die Veröffentlichung Dies ist der Branch in Ihrem Repository, unter dem ARM-Vorlagen für Veröffentlichungsaufgaben gespeichert und aktualisiert werden. <your publish branch name>
Stammordner Ihr Stammordner im Branch für die GitHub-Kollaboration. <your root folder name>
Vorhandene Ressourcen in Repository importieren Gibt an, ob vorhandene Data Factory-Ressourcen aus dem Erstellungsbereich auf der Benutzeroberfläche in ein GitHub-Repository importiert werden sollen. Aktivieren Sie das Kontrollkästchen, um Ihre Data Factory-Ressourcen in das zugehörige Git-Repository im JSON-Format zu importieren. Diese Aktion exportiert jede Ressource einzeln (d. h. die verknüpften Dienste und Datasets werden in separate JSONs exportiert). Ist dieses Kontrollkästchen nicht aktiviert, werden die vorhandenen Ressourcen nicht importiert. Aktiviert (Standardeinstellung)
Ressource in diesen Branch importieren Gibt an, in welchen Branch die Data Factory-Ressourcen (Pipelines, Datasets, verknüpfte Dienste usw.) importiert werden.

Bearbeiten von Repositoryeinstellungen

Wenn Anpassungen an den Einstellungen Ihres konfigurierten GitHub-Repository vorgenommen werden müssen, können Sie Bearbeiten auswählen.

Screenshot: Schaltfläche „Bearbeiten“ zum Bearbeiten eines GitHub-Repository

Sie können Ihren Branch für die Veröffentlichung aktualisieren und entscheiden, ob die Schaltfläche „Veröffentlichen“ in ADF Studio deaktiviert werden soll. Wenn Sie die Schaltfläche „Veröffentlichen“ in Studio deaktivieren, wird sie in Studio abgeblendet. Dadurch wird vermieden, dass die letzte automatisierte Veröffentlichungsbereitstellung überschrieben wird.

Screenshot: Kontrollkästchen zum Deaktivieren der Schaltfläche „Veröffentlichen“ für Azure Data Factory Studio

GitHub-Organisationen

Um eine Verbindung mit einer GitHub-Organisation herstellen zu können, muss die Organisation eine Berechtigung für Azure Data Factory erteilen. Ein Benutzer mit Administratorberechtigungen in der Organisation muss die folgenden Schritte ausführen, damit Data Factory eine Verbindung herstellen kann.

Erstmaliges Herstellen einer Verbindung mit dem öffentlichen GitHub oder GitHub Enterprise Cloud in Azure Data Factory

Wenn Sie zum ersten Mal eine Verbindung zwischen Azure Data Factory und dem öffentlichen GitHub oder GitHub Enterprise Cloud herstellen, führen Sie die folgenden Schritte aus, um eine Verbindung mit einer GitHub-Organisation herzustellen.

  1. Geben Sie im Bereich für die Git-Konfiguration den Namen der Organisation im Feld GitHub-Konto ein. Sie werden zur Anmeldung bei GitHub aufgefordert.
  2. Melden Sie sich mit Ihren Benutzeranmeldeinformationen an.
  3. Sie werden aufgefordert, Azure Data Factory als Anwendung namens AzureDataFactory zu autorisieren. Auf diesem Bildschirm sehen Sie eine Option, mit der Sie ADF die Berechtigung zum Zugriff auf die Organisation erteilen können. Wenn diese Option nicht angezeigt wird, bitten Sie einen Administrator, die Berechtigung manuell über GitHub zu erteilen.

Nachdem Sie diese Schritte ausgeführt haben, kann Ihre Factory sowohl mit den privaten als auch mit den öffentlichen Repositorys in Ihrer Organisation eine Verbindung herstellen. Wenn keine Verbindung hergestellt werden kann, löschen Sie den Browsercache und versuchen es noch mal.

Verbindung mit öffentlichem GitHub oder GitHub Enterprise Cloud bereits über ein persönliches Konto hergestellt

Wenn Sie bereits mit öffentlichem GitHub oder mit GitHub Enterprise Cloud verbunden sind und nur Zugriffsberechtigungen für ein persönliches Konto erteilt haben, führen Sie die folgenden Schritte aus, um Berechtigungen für eine Organisation zu erteilen.

  1. Wechseln Sie zu GitHub, und öffnen Sie die Einstellungen.

    Öffnen der GitHub-Einstellungen

  2. Wählen Sie Anwendungen aus. Auf der Registerkarte Autorisierte OAuth-Apps sollte AzureDataFactory angezeigt werden.

    Auswählen von OAuth-Apps

  3. Wählen Sie die Anwendung aus, und erteilen Sie ihr Zugriff auf Ihre Organisation.

    Gewähren von Zugriff

Nachdem Sie diese Schritte ausgeführt haben, kann Ihre Factory sowohl mit den privaten als auch mit den öffentlichen Repositorys in Ihrer Organisation eine Verbindung herstellen.

Herstellen einer Verbindung mit GitHub Enterprise Server

Wenn Sie eine Verbindung mit GitHub Enterprise Server herstellen, müssen Sie für die Authentifizierung ein persönliches Zugriffstoken verwenden. Unter Erstellen eines persönlichen Zugriffstokens erfahren Sie, wie Sie ein persönliches Zugriffstoken erstellen.

Hinweis

GitHub Enterprise Server befindet sich in Ihrer selbstgehosteten privaten Umgebung, sodass Sie die vollständige Kontrolle über die Firewall, die Netzwerkrichtlinien und das VPN haben, wenn Sie diese Authentifizierung verwenden. Weitere Informationen finden Sie unter Informationen zu GitHub Enterprise Server.

Screenshot des GitHub-Bereichs zum Konfigurieren eines Repositorys mithilfe von Enterprise Server

Screenshot der Authentifizierung mit einem Enterprise Server-Zugriffstoken

Bekannte GitHub-Einschränkungen

  • Sie können Skript- und Datendateien in einem GitHub-Repository speichern. Allerdings müssen Sie die Dateien manuell in Azure Storage hochladen. Eine Data Factory-Pipeline lädt Skript- oder Datendateien, die in einem GitHub-Repository gespeichert sind, nicht automatisch in Azure Storage hoch.

  • GitHub Enterprise-Versionen vor 2.14.0 funktionieren nicht im Browser Microsoft Edge.

  • Die GitHub-Integration in die visuellen Data Factory-Erstellungstools funktioniert nur in der allgemein verfügbaren Version von Data Factory.

Verbindung mit Azure DevOps Server 2022 wird hergestellt

Wenn Sie eine Verbindung mit Azure DevOps Server 2022 herstellen, müssen Sie ein persönliches Zugriffstoken für die Authentifizierung verwenden. Erfahren Sie, wie Sie ein persönliches Zugriffstoken erstellen.

Stellen Sie eine Verbindung mit lokalen Azure DevOps her, indem Sie die Azure DevOps Server URL und Azure DevOps Project Collection bereitstellen

Screenshot: ADO-Konfiguration eines Repositorys unter Verwendung des Servers

Stellen Sie das Token mit Zugriffsbereich als Lese-/Schreibzugriff für Code bereit.

Screenshot: ADO-Konfiguration des Zugriffstokens

Versionskontrolle

Versionskontrollsysteme (auch als Quellcodeverwaltung bezeichnet) ermöglichen Entwicklern die Zusammenarbeit an Code und das Nachverfolgen von an der Codebasis vorgenommenen Änderungen. Quellcodeverwaltung ist ein unverzichtbares Tool für Projekte, an denen mehrere Entwickler arbeiten.

Erstellen von Featurebranches

Jedes Azure Repos Git-Repository, das einer Data Factory zugeordnet ist, verfügt über einen Branch für die Kollaboration. (main ist der Standardbranch für die Kollaboration.) Benutzer können auch Featurebranches erstellen, indem sie im Dropdownmenü „Branch“ auf + Neuer Branch klicken.

Neuen Branch erstellen

Sobald der neue Zweigbereich erscheint, geben Sie den Namen Ihres Feature-Zweiges ein und wählen einen Zweig aus, auf dem die Arbeit basieren soll.

Screenshot, der zeigt, wie man eine Verzweigung auf der Grundlage der privaten Verzweigung erstellt.

Wenn Sie bereit sind, die Änderungen in Ihrem Featurebranch mit Ihrem Kollaborationsbranch zu mergen, klicken Sie auf das Dropdownmenü „Branch“ und dann auf Pull Request erstellen. Dann gelangen Sie zu Azure Repos Git und können Pull Requests auslösen, Codereviews durchführen und Änderungen an Ihrem Kollaborationsbranch zusammenführen. (main ist die Standardeinstellung.) Sie können nur Veröffentlichungen für den Data Factory-Dienst Ihres Kollaborationsbranchs durchführen.

Erstellen eines neuen Pull Requests

Konfigurieren von Veröffentlichungseinstellungen

Standardmäßig generiert Data Factory die Resource Manager-Vorlagen der veröffentlichten Factory und speichert sie in einem Branch mit dem Namen adf_publish. Um einen benutzerdefinierten Veröffentlichungsbranch zu konfigurieren, fügen Sie dem Stammordner im Kollaborationsbranch die Datei publish_config.json hinzu. Beim Veröffentlichen liest ADF diese Datei, sucht nach dem Feld publishBranch und speichert alle Resource Manager-Vorlagen am angegebenen Speicherort. Wenn der Branch nicht vorhanden ist, wird er von Data Factory automatisch erstellt. Das folgende Beispiel zeigt, wie diese Datei aussieht:

{
    "publishBranch": "factory/adf_publish"
}

In Azure Data Factory kann jeweils nur ein Veröffentlichungsbranch vorhanden sein. Wenn Sie einen neuen Branch für die Veröffentlichung angeben, löscht die Data Factory den vorherigen Branch für die Veröffentlichung nicht. Wenn Sie den vorherigen Branch für die Veröffentlichung entfernen möchten, löschen Sie ihn manuell.

Hinweis

Die Data Factory liest die publish_config.json-Datei nur, wenn diese die Factory lädt. Wenn die Factory bereits im Portal geladen ist, aktualisieren Sie den Browser, damit Ihre Änderungen übernommen werden.

Veröffentlichen von Codeänderungen

Nachdem Sie die Änderungen mit dem Kollaborationsbranch gemergt haben (main ist die Standardeinstellung), klicken Sie auf Veröffentlichen, um Ihre Codeänderungen manuell im Mainbranch im Data Factory-Dienst zu veröffentlichen.

Veröffentlichen von Änderungen für den Data Factory-Dienst

Ein Seitenbereich wird geöffnet, in dem Sie bestätigen, dass der Branch für die Veröffentlichung und ausstehende Änderungen korrekt sind. Nachdem Sie Ihre Änderungen überprüft haben, klicken Sie auf OK, um die Veröffentlichung zu bestätigen.

Überprüfen des Branch für die Veröffentlichung

Wichtig

Der Mainbranch ist nicht repräsentativ für das, was im Data Factory-Dienst bereitgestellt wird. Der Mainbranch muss manuell im Data Factory-Dienst veröffentlicht werden.

Bewährte Methoden für die Git-Integration

Berechtigungen

In der Regel soll nicht jedes Teammitglied zum Aktualisieren der Data Factory berechtigt sein. Die folgenden Berechtigungseinstellungen werden empfohlen:

  • Alle Teammitglieder sollten über Leseberechtigungen für die Data Factory verfügen.
  • Nur eine ausgewählte Gruppe von Personen sollte in der Data Factory veröffentlichen dürfen. Zu diesem Zweck muss diesen Personen die Rolle Data Factory-Mitwirkender für die Ressourcengruppe zugewiesen sein, die die Data Factory enthält. Weitere Informationen zu Berechtigungen finden Sie unter Rollen und Berechtigungen für Azure Data Factory.

Es wird empfohlen, keine direkten Eincheckvorgänge im Kollaborationsbranch zuzulassen. Diese Einschränkung kann dazu beitragen, Fehler zu vermeiden, da jeder Eincheckvorgang einen Pull Request-Prozess durchläuft, der unter Erstellen von Featurebranches beschrieben ist.

Verwenden von Kennwörtern aus Azure Key Vault

Es wird empfohlen, Azure Key Vault zum Speichern von Verbindungszeichenfolgen oder Kennwörtern oder zur Authentifizierung verwalteter Identitäten für verknüpfte Data Factory-Dienste zu verwenden. Aus Sicherheitsgründen speichert Data Factory Geheimnisse nicht in Git. Alle Änderungen an verknüpften Diensten mit Geheimnissen wie Kennwörtern werden sofort im Azure Data Factory-Dienst veröffentlicht.

Durch die Verwendung von Key Vault oder der MSI-Authentifizierung werden Continuous Integration und Continuous Deployment vereinfacht, da Sie diese Geheimnisse nicht bei der Bereitstellung von Resource Manager-Vorlagen angeben müssen.

Problembehandlung bei der Git-Integration

Veralteter Branch für die Veröffentlichung

Im Folgenden werden einige Beispielsituationen veranschaulicht, die zu einem veralteten Branch für die Veröffentlichung führen können:

  • Ein Benutzer verfügt über mehrere Branches. In einem Featurebranch hat er einen verknüpften Dienst gelöscht, der nicht mit Azure Key Vault verbunden ist (nicht mit Azure Key Vault verknüpfte Dienste werden sofort veröffentlicht, unabhängig davon, ob sie sich in Git befinden). Der Featurebranch wurde nicht mit dem Zusammenarbeitsbranch zusammengeführt.
  • Ein Benutzer hat die Data Factory über das SDK oder über PowerShell bearbeitet.
  • Ein Benutzer hat alle Ressourcen zu einem neuen Branch migriert und zum ersten Mal versucht, eine Veröffentlichung durchzuführen. Verknüpfte Dienste sollten beim Importieren von Ressourcen manuell erstellt werden.
  • Ein Benutzer lädt einen nicht mit Azure Key Vault verknüpften Dienst oder eine Integration Runtime-JSON-Datei manuell hoch. Er verweist aus einer anderen Ressource auf diese Ressource, z. B. in einem Dataset, einem verknüpften Dienst oder einer Pipeline. Ein über die Benutzeroberfläche erstellter, nicht mit Azure Key Vault verknüpfter Dienst wird sofort veröffentlicht, da die Anmeldeinformationen verschlüsselt werden müssen. Wenn Sie ein Dataset hochladen, das auf diesen verknüpften Dienst verweist, und versuchen, die Veröffentlichung durchzuführen, wird dies von der Benutzeroberfläche zugelassen, da er in der Git-Umgebung vorhanden ist. Es wird zum Zeitpunkt der Veröffentlichung abgelehnt, da es nicht im Data Factory-Dienst vorhanden ist.

Wenn der Branch für die Veröffentlichung nicht mit dem Mainbranch synchron ist und trotz einer aktuellen Veröffentlichung veraltete Ressourcen enthält, können Sie eine der folgenden Lösungen verwenden:

Option 1: Verwenden der Funktion Livemodus überschreiben

Der Code aus Ihrem Kollaborationsbranch wird im Livemodus veröffentlicht oder überschrieben. Der Code in Ihrem Repository wird als Source of Truth betrachtet.

Codefluss: Kollaborationsbranch –> Livemodus

Erzwingen der Veröffentlichung von Code aus dem Kollaborationsbranch

Option 2: Trennen und erneutes Verbinden des Git-Repository

Der Code wird aus dem Livemodus in den Kollaborationsbranch importiert. Er betrachtet den Code im Livemodus als Quelle der Wahrheit.

Codefluss: Livemodus –> Kollaborationsbranch

  1. Entfernen des aktuellen Git-Repositorys
  2. Konfigurieren Sie Git mit denselben Einstellungen neu. Stellen Sie jedoch sicher, dass Vorhandene Data Factory-Ressourcen in Repository importieren ausgewählt ist, und wählen Sie Collaboration branch (same branch) (Kollaborationsbranch (gleicher Branch)) aus.
  3. Erstellen Sie einen Pull Request, um die Änderungen im Kollaborationsbranch zusammenzuführen.

Hinweis

Es ist nur erforderlich, eine Pullanforderung zu erstellen und zusammenzuführen, wenn Sie in einem Repository arbeiten, das keine direkten Commits zulässt. In den meisten Organisationen müssen Übermittlungen an das Repository vor dem Zusammenführen überprüft werden. Daher wird in der Regel empfohlen, diesen Ansatz zu verwenden. In einigen Fällen ist jedoch keine Überprüfung erforderlich, sodass keine Pullanforderung erstellt und zusammengeführt werden muss, sondern Änderungen direkt an den Kollaborationsbranch committet werden.

Wählen Sie eine der beiden Methoden entsprechend nach Bedarf aus.

Alle Ressourcen werden bei der Veröffentlichung als neu angezeigt

Bei der Veröffentlichung werden alle Ressourcen ggf. auch dann als neu angezeigt, wenn sie bereits zuvor veröffentlicht wurden. Dieser Fall kann eintreten, wenn die Eigenschaft lastCommitId für die Eigenschaft repoConfiguration der Factory zurückgesetzt wird, indem entweder eine ARM-Vorlage der Factory erneut bereitgestellt oder die Eigenschaft repoConfiguration der Factory über PowerShell oder die REST-API aktualisiert wird. Das Problem wird behoben, wenn Sie mit der Veröffentlichung der Ressourcen fortfahren. Vermeiden Sie jedoch, die repoConfiguration-Eigenschaft der Factory zu aktualisieren, damit das Problem nicht erneut auftritt.

Wechseln zu einem anderen Git-Repository

Wenn Sie zu einem anderen Git-Repository wechseln möchten, navigieren Sie im Verwaltungshub unter Quellcodeverwaltung zur Seite mit der Git-Konfiguration. Wählen Sie Trennen aus.

Git-Symbol

Geben Sie Ihren Data Factory Namen ein, und klicken Sie auf Bestätigen, um das Git-Repository zu entfernen, das Ihrer Data Factory-Instanz zugeordnet ist.

Entfernen der Zuordnung zum aktuellen Git-Repository

Nachdem Sie die Zuordnung zum aktuellen Repository entfernt haben, können Sie Ihre Git-Einstellungen zur Verwendung eines anderen Repositorys konfigurieren und dann vorhandene Data Factory-Ressourcen in das neue Repository importieren.

Wichtig

Beim Entfernen einer Git-Konfiguration aus einer Data Factory wird nichts aus dem Repository gelöscht. Die Factory enthält alle veröffentlichten Ressourcen. Sie können die Factory weiterhin direkt für den Dienst bearbeiten.