Pipelines mit Versionsverwaltung verwalten

Auf dieser Seite wird beschrieben, wie Sie Pipelines mit der Versionsverwaltung in Cloud Data Fusion über Git-Repositories verwalten.

Versionsverwaltung

Cloud Data Fusion bietet die Möglichkeit, Pipelines für ETL- und ELT-Integrationen visuell zu entwerfen. Zur besseren Verwaltung von Pipelines zwischen Entwicklung und Produktion ermöglicht Cloud Data Fusion die Versionsverwaltung der Pipelines über GitHub.

Mit der Versionsverwaltungsverwaltung in Cloud Data Fusion können Sie Folgendes tun:

  • Integrieren Sie jeden Cloud Data Fusion-Namespace in GitHub.
  • Verwalten Sie Ihre Pipelines in einem zentralen Git-Repository.
  • Prüfen und prüfen Sie Pipelineänderungen.
  • Pipelineänderungen rückgängig machen.
  • Effektiv mit dem Team zusammenarbeiten und gleichzeitig für eine zentrale Kontrolle sorgen

Hinweise

  • Versionsverwaltungsverwaltung unterstützt nur die Einbindung in GitHub-Repositories.
  • GitHub OAuth wird nicht unterstützt.
  • Versionsverwaltungsverwaltung unterstützt nur Batchpipelines.
  • Source Control Management unterstützt nur Pipelinedesign-JSONs für Push- und Pull-Vorgänge. Ausführungskonfigurationen werden nicht unterstützt.
  • Die Größenbeschränkung des verknüpften Repositorys beträgt 5 GB.

Erforderliche Rollen und Berechtigungen

Die Versionsverwaltungsverwaltung in Cloud Data Fusion besteht aus zwei wichtigen Vorgängen:

  • Repositories zur Versionsverwaltung konfigurieren
  • Pipelines mit Git-Repositories mithilfe von Push- und Pull-Vorgängen synchronisieren

Bitten Sie Ihren Administrator, Ihnen eine der folgenden vordefinierten Rollen für Ihr Projekt zu gewähren, um die Berechtigungen zu erhalten, die Sie für das Feature zur Versionsverwaltung benötigen:

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.

Möglicherweise können Sie die erforderlichen Berechtigungen auch über andere vordefinierte Rollen erhalten.

Git-Repository einrichten

Folgen Sie der Anleitung unter Repository erstellen, um ein Git-Repository in GitHub zu erstellen.

Weitere Informationen zu persönlichen Zugriffstokens in GitHub finden Sie in den folgenden Dokumenten:

Git-Repository mit Cloud Data Fusion verbinden

Mit Cloud Data Fusion können Sie Ihr Git-Repository auf dem Tab für Versionsverwaltungsverwaltung für jeden Namespace konfigurieren und verbinden. So verknüpfen Sie einen Namespace mit Ihrem Git-Repository:

Console

  1. Klicken Sie in der Weboberfläche von Cloud Data Fusion auf Menü.
  2. Klicken Sie auf Namespace-Administrator.
  3. Klicken Sie auf der Seite Namespace-Administrator auf den Tab Verwaltung der Quellensteuerung.
  4. Klicken Sie auf Repository verknüpfen.
  5. Geben Sie die folgenden Informationen ein:

    • Provider (Anbieter): Wählen Sie einen Git-Dienstanbieter aus. Wählen Sie GitHub aus, da Source Control Management nur die Integration in GitHub-Repositories unterstützt.
    • Repository-URL: Geben Sie die URL ein, über die auf das Repository zugegriffen werden kann. Für GitHub lautet die Repository-URL https://github.com/HOST/REPO.
    • Standardzweig (optional): Geben Sie den ersten Zweig von Git ein. Dieser Zweig kann sich vom Standardzweig unterscheiden, der auf GitHub konfiguriert ist. Dieser Zweig wird unabhängig vom Standardzweig auf GitHub zum Synchronisieren von Pipelines verwendet.
    • Pfadpräfix (optional): Geben Sie ein Präfix für den Pipelinenamen ein, der im Git-Repository gespeichert wird. Wenn der Pipelinename beispielsweise DataFusionQuickStart lautet und Sie das Präfix als namespaceName angeben, wird die Pipeline als namespaceName/DataFusionQuickStart im Git-Repository gespeichert.
    • Authentifizierungstyp: Mit Cloud Data Fusion können Sie das personalisierte Zugriffstoken als Authentifizierungstyp verwenden. Dies ist automatisch ausgewählt.
    • Tokenname: Geben Sie einen Namen ein, der mit dem Token verknüpft werden kann.
    • Token: Geben Sie das vom GitHub-Repository bereitgestellte Token ein.
    • Nutzername (optional): Geben Sie einen Nutzernamen oder einen Inhaber für das Token ein.
  6. Klicke auf Validieren. Warten Sie, bis die Verbindung überprüft wurde.

  7. Wenn die Konfiguration abgeschlossen ist, klicken Sie zur Bestätigung der Konfiguration auf Speichern und schließen.

Git-Repository mit Cloud Data Fusion verbinden

REST API

  1. Erstellen Sie einen geheimen Schlüssel in Cloud Data Fusion, der das persönliche Zugriffstoken enthält.

  2. Führen Sie dazu diesen Befehl aus:

    curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"
    ${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/securekeys/PASSWORD_SECRET_KEY -X PUT -d '{ "description": "Example Secure Key","data": "PERSONAL_ACCESS_TOKEN"}'
    

    Ersetzen Sie Folgendes:

    • NAMESPACE_ID: die ID des Namespace
    • PASSWORD_SECRET_KEY: der Name des geheimen Schlüssels, der das persönliche Zugriffstoken enthält
    • PERSONAL_ACCESS_TOKEN: persönliches Zugriffstoken von GitHub
  3. Führen Sie dazu diesen Befehl aus:

    curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"
    ${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/repository -X PUT -d '{"test": "TEST_ONLY", "config": {"provider": "PROVIDER_TYPE", "link": "REPO_URL", "defaultBranch": "DEFAULT_BRANCH", "pathPrefix": "PATH_TO_DIRECTORY", "auth": {"type": "AUTH_TYPE", "patConfig": {"passwordName": "PASSWORD_SECRET_KEY", "username": "USER_NAME"}}}}'
    

    Ersetzen Sie Folgendes:

    • NAMESPACE_ID: die ID des Namespace
    • TEST_ONLY: Legen Sie diesen Wert auf true fest, wenn Sie nur die Konfiguration validieren und nicht hinzufügen möchten.
    • PROVIDER_TYPE: der Name des Git-Anbieters, also GITHUB
    • REPO_URL: zu verknüpfende Repository-URL. Verwenden Sie eine https-URL, z. B. https://github.com/user/repo.git.
    • DEFAULT_BRANCH: Zweig, der für Push- und Pull-Vorgänge verwendet wird. Wenn nicht angegeben, wird der standardmäßig konfigurierte Zweig im Repository verwendet, z. B. der Hauptzweig
    • PATH_TO_DIRECTORY: Pfad zum Verzeichnis im Repository, in dem die Konfigurationsdateien gespeichert werden sollen
    • AUTH_TYPE: der Authentifizierungstyp. Es wird nur PAT unterstützt. Siehe Detailgenaues persönliches Zugriffstoken in GitHub
    • PASSWORD_SECRET_KEY: der Name des geheimen Schlüssels, der das persönliche Zugriffstoken für den Authentifizierungstyp PAT enthält
    • USER_NAME: Sie können diesen Wert für den Authentifizierungstyp PAT weglassen

Cloud Data Fusion-Pipelines mit einem Remote-Repository synchronisieren

Nachdem Sie ein Git-Repository mit einem Namespace konfiguriert haben, können Sie Pipelines per Push und Pull konfigurieren und mit dem Git-Repository synchronisieren.

Pipelines von Cloud Data Fusion in das Git-Repository übertragen

So synchronisieren Sie mehrere bereitgestellte Pipelines aus einem Namespace mit einem Git-Repository:

Console

  1. Klicken Sie in der Weboberfläche von Cloud Data Fusion auf Menü.
  2. Klicken Sie auf Namespace-Administrator.
  3. Klicken Sie auf der Seite Namespace-Administrator auf den Tab Verwaltung der Quellensteuerung.
  4. Suchen Sie das Git-Repository, mit dem Sie synchronisieren möchten, und klicken Sie auf Pipelines synchronisieren.
  5. Klicken Sie auf den Tab Namespace-Pipelines.
  6. Suchen Sie nach den Pipelines, die Sie in das Git-Repository übertragen möchten, und wählen Sie sie aus.

    Wenn die neueste Version der Pipeline in das Git-Repository übertragen oder daraus abgerufen wird, lautet der Status Mit Git verbunden den Status Connected. Wenn die Pipeline noch nie an GitHub übertragen wurde, wird der Status Mit Git verbunden leer (-) angezeigt.

    Wenn Sie eine neuere Version einer Pipeline bereitstellen, die bereits mit dem Git-Repository synchronisiert ist, ändert sich der Status Mit Git verbunden von Connected in leer (-).

  7. Klicken Sie auf An Repository senden.

  8. Geben Sie eine Commit-Nachricht ein und klicken Sie auf OK.

    Der Push-Vorgang wird gestartet und es wird eine Meldung angezeigt, dass die ausgewählten Pipelines per Push an das Remote-Repository übertragen werden.

Pipelines von Cloud Data Fusion in das Git-Repository übertragen.

Wenn der Push-Vorgang erfolgreich abgeschlossen wurde, wird eine Erfolgsmeldung mit der Anzahl der Pipelines angezeigt, die an das Remote-Repository übertragen wurden.

Wenn der Push-Vorgang fehlschlägt, prüfen Sie in GitHub, ob es sich um die neueste Version in der Pipeline handelt. Für jeden fehlgeschlagenen Push-Vorgang wird eine Fehlermeldung angezeigt. Maximieren Sie die Fehlermeldung, um sich die Details zum Fehler anzusehen.

Sie können auch einzelne Pipelines von Pipeline Design Studio in ein Git-Repository übertragen:

  1. Klicken Sie in der Weboberfläche von Cloud Data Fusion auf Menü.
  2. Klicken Sie auf Liste.
  3. Klicken Sie auf die Pipeline, die Sie in das Git-Repository übertragen möchten.
  4. Klicken Sie auf der Pipelineseite auf Aktionen > An Repository senden.
  5. Geben Sie eine Commit-Nachricht ein und klicken Sie auf OK.

Pipelines per Push aus dem Pipeline Design Studio übertragen.

REST API

  1. Übertragen Sie eine Reihe von Pipelines von Cloud Data Fusion in das Git-Repository:

    curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"
    ${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/repository/apps/push -X POST
    -d '{"apps": ["PIPELINE_NAME_1", "PIPELINE_NAME_2"]}, "commitMessage": "COMMIT_MESSAGE"'
    

    Ersetzen Sie Folgendes:

    • NAMESPACE_ID: die ID des Namespace
    • PIPELINE_NAME_1, PIPELINE_NAME_2: die Namen der Pipelines, die übertragen werden sollen
    • COMMIT_MESSAGE: Commit-Nachricht für den Git-Commit

    Die Antwort enthält die ID des Push-Vorgangs. Beispiel:

    RESPONSE
    {
    "id": OPERATION_ID
    }
    
  2. Führen Sie den folgenden Befehl aus, um den Status des Push-Vorgangs abzufragen:

    curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"
    ${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/operations/OPERATION_ID
    

    Ersetzen Sie Folgendes:

    • NAMESPACE_ID: die ID des Namespace
    • OPERATION_ID: durch den Push-Vorgang empfangene Vorgangs-ID.

    Die Antwort enthält den Status des Push-Vorgangs. Beispiel:

    RESPONSE
    {
    "id": OPERATION_ID
    "done": True/False
    "status": STARTING/RUNNING/SUCCEEDED/FAILED
    "error": {"message": ERROR_MESSAGE, "details":[{"resourceUri": RESOURCE, "message": ERROR_MESSAGE}]}
    }
    

    Wenn Sie wissen möchten, ob der Push-Vorgang abgeschlossen ist, prüfen Sie das Attribut done in der Antwort. Wenn der Vorgang fehlgeschlagen ist, prüfen Sie das Attribut error, um weitere Informationen zu erhalten.

Pipelines aus dem Git-Repository in Cloud Data Fusion abrufen

So synchronisieren Sie mehrere Pipelines aus einem Git-Repository mit Ihrem Namespace:

Console

  1. Klicken Sie in der Weboberfläche von Cloud Data Fusion auf Menü.
  2. Klicken Sie auf Namespace-Administrator.
  3. Klicken Sie auf der Seite Namespace-Administrator auf den Tab Verwaltung der Quellensteuerung.
  4. Suchen Sie das Git-Repository, mit dem Sie synchronisieren möchten, und klicken Sie auf Pipelines synchronisieren.
  5. Klicken Sie auf den Tab Repository-Pipelines. Alle im Git-Repository gespeicherten Pipelines werden angezeigt.
  6. Suchen Sie nach den Pipelines, die Sie aus dem Git-Repository in Ihren Cloud Data Fusion-Namespace abrufen möchten, und wählen Sie sie aus.
  7. Klicken Sie auf Aus Repository abrufen.

    Der Pull-Vorgang wird gestartet und es wird eine Meldung angezeigt, dass die ausgewählten Pipelines aus dem Remote-Repository abgerufen werden. Cloud Data Fusion sucht unter dem konfigurierten Pfad nach JSON-Dateien, ruft sie ab und stellt sie als Pipelines in Cloud Data Fusion bereit.

Pipelines aus dem Git-Repository per Pull in Cloud Data Fusion übertragen.

Wenn der Pull-Vorgang erfolgreich abgeschlossen wurde, wird eine Erfolgsmeldung mit der Anzahl der Pipelines angezeigt, die aus dem Remote-Repository abgerufen wurden.

Wenn der Pull-Vorgang fehlschlägt, wird eine Fehlermeldung angezeigt. Maximieren Sie die Fehlermeldung, um die Details zum Fehler anzusehen.

Sie können auch einzelne Pipelines aus einem Git-Repository in einen Namespace von Pipeline Design Studio abrufen:

  1. Klicken Sie in der Weboberfläche von Cloud Data Fusion auf Menü.
  2. Klicken Sie auf Liste.
  3. Klicken Sie auf die Pipeline, die Sie aus dem Git-Repository abrufen möchten.
  4. Klicken Sie auf der Pipelineseite auf Aktionen > Aus Repository abrufen.

Pull-Pipelines aus dem Pipeline Design Studio abrufen.

REST API

  1. Rufen Sie eine Reihe von Pipelines aus dem Git-Repository in Cloud Data Fusion ab:

    curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"
    ${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/repository/apps/pull -X POST -d '{"apps": ["PIPELINE_NAME_1", "PIPELINE_NAME_2"]}'
    

    Ersetzen Sie Folgendes:

    • NAMESPACE_ID: die ID des Namespace
    • PIPELINE_NAME_1, PIPELINE_NAME_2: die Namen der abzurufenden Pipelines

    Die Antwort enthält die ID des Pull-Vorgangs. Beispiel:

    RESPONSE
    {
    "id": OPERATION_ID
    }
    
  2. Führen Sie den folgenden Befehl aus, um den Status des Pull-Vorgangs abzufragen:

    curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"
    ${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/operations/OPERATION_ID
    

    Ersetzen Sie Folgendes:

    • NAMESPACE_ID: die ID des Namespace
    • OPERATION_ID: Die vom Pull-Vorgang erhaltene Vorgangs-ID.

    Die Antwort enthält den Status des Pull-Vorgangs. Beispiel:

    RESPONSE
    {
    "id": OPERATION_ID
    "done": True/False
    "status": STARTING/RUNNING/SUCCEEDED/FAILED
    "error": {"message": ERROR_MESSAGE, "details":[{"resourceUri": RESOURCE, "message": ERROR_MESSAGE}]}
    }
    

    Prüfen Sie das Attribut done in der Antwort, um festzustellen, ob der Pull-Vorgang abgeschlossen ist. Wenn der Vorgang fehlgeschlagen ist, prüfen Sie das Attribut error, um weitere Informationen zu erhalten.

Git-Repository-Konfiguration löschen

So löschen Sie die Git-Repository-Konfiguration aus einem Namespace:

Console

  1. Klicken Sie in der Weboberfläche von Cloud Data Fusion auf Menü .
  2. Klicken Sie auf Namespace-Administrator.
  3. Klicken Sie auf der Seite Namespace-Administrator auf den Tab Verwaltung der Quellensteuerung.
  4. Klicken Sie für die Git-Repository-Konfiguration, die Sie löschen möchten, auf > Löschen.

REST API

Löschen Sie die Git-Repository-Konfiguration:

curl -H "Authorization: Bearer $(gcloud auth print-access-token)"
${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/repository -X DELETE

Ersetzen Sie NAMESPACE_ID durch die ID des Namespace.

Nächste Schritte