In diesem Dokument erfahren Sie, wie Sie ein Remote-Repository mit einem Dataform-Repository verbinden. Nachdem Sie die Repositories verbunden haben, können die Änderungen, die Sie in einem Dataform-Entwicklungsarbeitsbereich vornehmen, in das Remote-Git-Repository übertragen und daraus abgerufen werden.
Sie können ein Remote-Repository über HTTPS oder SSH verbinden.
In der folgenden Tabelle sind die unterstützten Git-Anbieter und die für ihre Repositories verfügbaren Verbindungsmethoden aufgeführt:
| Git-Provider | Verbindungsmethode |
|---|---|
| Azure DevOps Services | SSH |
| Bitbucket | Developer Connect (empfohlen), SSH |
| GitHub | Developer Connect (empfohlen), SSH oder HTTPS |
| GitLab | Developer Connect (empfohlen), SSH oder HTTPS |
Hinweis
- Wenn in Ihrer Organisation oder Ihrem Projekt Remote-Git-Repositories mit der
dataform.restrictGitRemotes-Organisationsrichtlinie eingeschränkt werden, muss das Remote-Git-Repository der Zulassungsliste in der Richtlinie hinzugefügt werden, bevor Sie das Dataform-Repository erstellen, das Sie mit einem Remote-Repository verbinden möchten. Weitere Informationen finden Sie unter Remote-Repositories einschränken. Wählen Sie ein Dataform-Repository aus oder erstellen Sie eines. Sie benötigen das Repository später, um ein Secret für Ihren standardmäßigen Dataform-Dienst-Agent freizugeben.
Achten Sie darauf, dass Sie die erforderlichen Berechtigungen bei Ihrem Git-Anbieter haben und dass sich Ihr Dataform-Repository in einer unterstützten Region befindet.
Wenn Sie Developer Connect mit einem Bitbucket-Repository verbinden, muss das Zugriffstoken des Autorisierers Schreibzugriff auf Ihre Repositories haben, damit Dataform Änderungen übertragen kann. Weitere Informationen finden Sie unter Zugriffstokens erstellen.
Anforderungen an die Netzwerkverbindung und Einschränkungen
Bevor Sie Ihr Remote-Git-Repository mit Dataform verbinden, müssen Sie dafür sorgen, dass Ihre Netzwerkkonfiguration die Anforderungen für die von Ihnen ausgewählte Verbindungsmethode erfüllt.
Private Netzwerkverbindungen
Dataform unterstützt keine direkten Verbindungen zu privaten IP-Adressen (z. B. 10.x.x.x, 172.16.x.x-172.31.x.x oder 192.168.x.x) von lokalen Git-Hosts oder ‑Repositories in privaten Netzwerken über HTTPS oder SSH. Dazu gehört der Zugriff über eine Virtual Private Cloud (VPC), ein VPN oder Cloud Interconnect.
Wenn Sie eine Verbindung zu einem Repository in einem privaten Netzwerk herstellen möchten oder Ihr Git-Host sich hinter einer Firewall befindet, müssen Sie Developer Connect verwenden.
Verbindungen mit öffentlichen Netzwerken
Wenn Sie eine Verbindung zu einem Remote-Git-Repository über HTTPS oder SSH herstellen möchten, muss Ihr Git-Host eine öffentliche IP-Adresse haben.
Wenn Sie über HTTPS oder SSH eine Verbindung zu einem geschützten Remote-Repository mit einer öffentlichen IP-Adresse herstellen, müssen Sie die erforderlichen Dataform-IP-Adressbereiche für ausgehenden Traffic zu Ihren Firewallregeln hinzufügen.
Anforderungen von VPC Service Controls
Wenn Ihr Projekt VPC Service Controls verwendet, müssen Sie die dataform.restrictGitRemotes-Organisationsrichtlinie festlegen, um eine Verbindung zu einem beliebigen Drittanbieter-Git-Repository herzustellen. Weitere Informationen finden Sie unter Remote-Repositories einschränken.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Repositories zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Verbinden eines Dataform-Repositorys mit einem Remote-Git-Repository benötigen:
- Dataform Admin (
roles/dataform.admin) - Developer Connect-Administrator (
roles/developerconnect.admin)
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Wenn Sie ein Remote-Repository über Developer Connect verbinden möchten, weisen Sie dem standardmäßigen Dataform-Dienst-Agent die Rollen Developer Connect Token Accessor (roles/developerconnect.tokenAccessor) und Developer Connect Git Proxy User (roles/developerconnect.gitProxyUser) zu. Die ID Ihres standardmäßigen Dataform-Dienst-Agents hat das folgende Format:
service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
Remote-Repository über Developer Connect verbinden
Developer Connect vereinfacht die Integration externer Git-Anbieter in Dataform-Repositories. Die geführte Benutzeroberfläche macht die manuelle Verwaltung von Secrets überflüssig.
Mit Developer Connect können Sie eine Verbindung zu Remote-Repositories in privat gehosteten Netzwerken wie lokalen Umgebungen oder Virtual Private Clouds (VPCs) herstellen, ohne sie dem öffentlichen Internet auszusetzen.
Private Netzwerkverbindungen vorbereiten
Wenn Sie eine Verbindung zu einem Remote-Repository in einem privaten Netzwerk herstellen, sollten Sie vor Beginn der Einrichtung die folgenden Informationen und Ressourcen bereithalten:
- Der Namespace und der Dienstname des Service Directory-Dienstes, der auf Ihren internen Git-Host verweist.
- Ein Zertifikat der Zertifizierungsstelle im PEM-Format (mit einer maximalen Größe von 10 KB), wenn Ihr Host eine private oder selbst signierte Zertifizierungsstelle verwendet.
- Prüfung, ob das SSL-Zertifikat Ihres Git-Hosts einen SAN (Subject Alternative Name) enthält, der mit der Host-URI übereinstimmt.
Weitere Informationen zum Konfigurieren von Verbindungen für privat gehostete Netzwerke finden Sie unter:
- Developer Connect-Proxy konfigurieren und verwenden
- Verbindung zu GitHub Enterprise in einem privaten Netzwerk herstellen
- Verbindung zu GitLab Enterprise-Repositories in einem privaten Netzwerk herstellen
- Verbindung zu Bitbucket Data Center-Repositories herstellen, die in einem privaten Netzwerk gehostet werden
Neue Developer Connect-Verbindung erstellen
Wählen Sie eine der folgenden Optionen aus, um ein Remote-Repository mit einer neuen Developer Connect-Verbindung zu verbinden:
Bitbucket
Rufen Sie in der Google Cloud Console die Seite Dataform auf.
Wählen Sie Ihr Repository aus.
Klicken Sie auf Einstellungen und dann auf Mit Git verbinden.
Wählen Sie im Bereich Mit Remote-Repository verknüpfen im Abschnitt Protokoll des Remote-Git-Repositorys die Option Developer Connect aus.
Klicken Sie im Menü zur Auswahl des Repositorys auf Neues Repository verknüpfen.
Wählen Sie im Bereich Git-Repositories über Developer Connect verknüpfen die Option Neue Verbindung erstellen aus.
Wählen Sie Bitbucket als Anbieter aus.
Geben Sie die Verbindungsregion und den Verbindungsnamen an.
Geben Sie den Namen des Arbeitsbereichs, das Zugriffstoken des Autorisierenden und das Lesezugriffstoken an.
Klicken Sie auf Weiter, wählen Sie die zu verknüpfenden Remote-Repositories aus und klicken Sie auf Verknüpfen.
Wählen Sie in Dataform Ihr Remote-Repository und den Standardzweig aus.
Klicken Sie auf Verknüpfen, um die Einrichtung abzuschließen.
GitHub
Rufen Sie in der Google Cloud Console die Seite Dataform auf.
Wählen Sie Ihr Repository aus.
Klicken Sie auf Einstellungen und dann auf Mit Git verbinden.
Wählen Sie im Bereich Mit Remote-Repository verknüpfen im Abschnitt Protokoll des Remote-Git-Repositorys die Option Developer Connect aus.
Klicken Sie im Menü zur Auswahl des Repositorys auf Neues Repository verknüpfen.
Wählen Sie im Bereich Git-Repositories über Developer Connect verknüpfen die Option Neue Verbindung erstellen aus.
Wählen Sie GitHub als Anbieter aus.
Geben Sie die Verbindungsregion und den Verbindungsnamen an.
Klicken Sie auf Weiter, um den OAuth-Authentifizierungsablauf auszulösen, und gehen Sie dann so vor:
- Klicken Sie auf Verstanden und fortfahren.
- Wählen Sie GitHub-Anwendung in anderem GitHub-Konto installieren aus und folgen Sie der Anleitung, um den Zugriff auf Ihr GitHub-Konto und bestimmte Repositorys zu autorisieren.
- Wählen Sie das Konto aus, in dem Sie die Dataform GitHub-Anwendung installieren möchten.
- Wählen Sie im Abschnitt Repository-Zugriff aus, ob Sie Zugriff auf alle oder nur auf ausgewählte Repositories gewähren möchten.
- Klicken Sie auf Speichern.
Wählen Sie die zu verknüpfenden Remote-Repositories aus und klicken Sie auf Verknüpfen.
Wählen Sie in Dataform Ihr Remote-Repository und den Standardzweig aus.
Klicken Sie auf Verknüpfen, um die Einrichtung abzuschließen.
GitLab
Rufen Sie in der Google Cloud Console die Seite Dataform auf.
Wählen Sie Ihr Repository aus.
Klicken Sie auf Einstellungen und dann auf Mit Git verbinden.
Wählen Sie im Bereich Mit Remote-Repository verknüpfen im Abschnitt Protokoll des Remote-Git-Repositorys die Option Developer Connect aus.
Klicken Sie im Menü zur Auswahl des Repositorys auf Neues Repository verknüpfen.
Wählen Sie im Bereich Git-Repositories über Developer Connect verknüpfen die Option Neue Verbindung erstellen aus.
Wählen Sie GitLab als Anbieter aus.
Geben Sie die Verbindungsregion und den Verbindungsnamen an.
Geben Sie das API-Zugriffstoken und das API-Zugriffstoken mit Leseberechtigung an. Informationen dazu finden Sie unter Zugriffstokens erstellen.
Klicken Sie auf Weiter, wählen Sie die zu verknüpfenden Remote-Repositories aus und klicken Sie auf Verknüpfen.
Wählen Sie in Dataform Ihr Remote-Repository und den Standardzweig aus.
Klicken Sie auf Verknüpfen, um die Einrichtung abzuschließen.
Vorhandene Developer Connect-Verbindung verwenden
So verbinden Sie ein Remote-Repository mit einer vorhandenen Developer Connect-Verbindung:
Rufen Sie in der Google Cloud Console die Seite Dataform auf.
Wählen Sie Ihr Repository aus.
Rufen Sie die Einstellungen auf und klicken Sie auf Mit Git verbinden.
Wählen Sie im Bereich Mit Remote-Repository verknüpfen im Abschnitt Protokoll des Remote-Git-Repositorys die Option Developer Connect aus.
Wählen Sie im Menü zur Repository-Auswahl ein Repository aus, das zu einer bestehenden Developer Connect-Verbindung gehört.