Auf dieser Seite wird das Repository beschrieben, in dem der gepatchte Apache Airflow-Code gespeichert ist, der in Managed Airflow verwendet wird.
Informationen zum Repository
Das Composer-Airflow-Repository ist ein schreibgeschütztes Repository, das den gepatchten Apache Airflow-Code enthält, der in Managed Airflow ausgeführt wird.
Eine bestimmte Version von Apache Airflow, die in Managed Airflow gefunden wird, ist nicht immer genau die entsprechende Version in Upstream-Airflow, da Managed Airflow eine Patchversion von Airflow verwendet. Dieses Repository enthält den Code für jede Patchversion von Airflow, die in Managed Airflow verwendet wird. Informationen dazu, welche Versionen von Airflow in Managed Airflow gefunden werden, finden Sie in der Liste der Managed Airflow-Versionen.
Beiträge
Dieser Code ist keine Verzweigung von Apache Airflow. Der in diesem Repository gefundene Code stammt direkt aus dem Apache Airflow-Repository, jedoch zu einer anderen Zeitachse als normale Apache Airflow-Releases.
Wenn Sie zu dieser Codebasis beitragen möchten, dann tragen Sie stattdessen direkt zu Airflow bei. Tun Sie dies nicht in diesem Repository, da Pull-Anfragen darin nicht akzeptiert werden.
Probleme und Support
- Wenn Sie ein Problem mit dem Code in diesem Repository haben, können Sie direkt im Airflow-Repository ein Problem erstellen.
- Wenn Sie ein Problem mit Managed Airflow haben, verwenden Sie die Managed Airflow-Supportkanäle.
Im Repository navigieren
Das Repository hat einen Zweig für jede in Managed Service for Apache Airflow verfügbare Version von Airflow. Nicht alle Versionen von Airflow werden in Managed Airflow unterstützt. In der Liste der Managed Airflow-Versionen sehen Sie, welche Airflow-Versionen von einer bestimmten Managed Airflow-Version unterstützt werden.
Beispiele für die Verwendung
In diesem Abschnitt sind Beispiele für die Verwendung des Repositorys aufgeführt.
Wird dieses Commit aus dem Airflow-Repository in meiner Version von Managed Airflow ausgeführt?
SHA1s von Commits im Composer-Airflow-Repository entsprechen nicht Commit-SHA1s im Upstream-Airflow-Repository. Eine Möglichkeit, nach einem bestimmten Commit zu suchen, besteht darin, nach der entsprechenden Commit-Nachricht zu suchen.
Es ist nicht möglich, mit der GitHub-Benutzeroberfläche Commit-Nachrichten in anderen Branches als dem Standardzweig zu suchen. Dies ist jedoch mithilfe der git-Befehlszeile möglich. Wenn Sie in diesem Repository nach einem bestimmten Commit suchen möchten, müssen Sie
git installiert haben.
So suchen Sie mit der git-Befehlszeile nach einer Commit-Nachricht:
Klonen Sie das Repository und wechseln Sie mit dem folgenden Befehl in das Repository-Verzeichnis:
git clone git@github.com:GoogleCloudPlatform/composer-airflow.git && \ cd composer-airflowSuchen Sie nach der Commit-Nachricht:
git log --source --grep="COMMIT_MESSAGE" --allDabei gilt:
--sourcezeigt den Zweig, in dem das Commit gefunden wird--grepgibt die Nachricht an, nach der im Log gesucht werden muss--allsucht in allen Branches
Der Zweig befindet sich neben dem Commit-Hash in der ersten Zeile jedes Ergebnisses. Wenn der Befehl ein Commit zurückgibt, bedeutet dies, dass es sich in Ihrer Version von Managed Airflow befindet. Wenn die Airflow-Version in Ihrer Umgebung später als die Branch-Version ist, wird der Commit in der Airflow-Version Ihrer Umgebung verwendet.
Wenn Sie beispielsweise nach der Commit-Nachricht Force explicit choice on GPL dependency suchen möchten, lautet der Befehl:
git log --source --grep="Force explicit choice on GPL dependency" --all
Wenn ein übereinstimmender Commit vorhanden ist, sehen Ihre Ergebnisse wie im folgenden Beispiel aus. Es kann mehr als ein Ergebnis geben.
commit 64ff1089e30e80b08bf5155edd9e49f5293ebbe4 refs/heads/<strong>1.10.2</strong>
Author: example_airflow_committer <example_airflow_committer@users.noreply.github.com>
Date: Wed Aug 1 11:25:31 2018 +0200
[AIRFLOW-2817] Force explicit choice on GPL dependency (#3660)
By default one of Apache Airflow's dependencies pulls in a GPL
library. Airflow should not install (and upgrade) without an explicit choice.
This is part of the Apache requirements as we cannot depend on Category X
software.
(cherry picked from commit c37fc0b6ba19e3fe5656ae37cef9b59cef3c29e8)
Signed-off-by: Example Airflow Committer <example_airflow_committer@users.noreply.github.com>
(cherry picked from commit b39e4532d9d1086c60b31553d08972bcc68df641)
Signed-off-by: Example Airflow Committer <example_airflow_committer@users.noreply.github.com>
GitOrigin-RevId: cefcf4c61f64be3792cbfed509b82a9eb4cc47be
Wie sieht dieser Airflow-Operator in meiner Version von Managed Airflow aus?
Airflow-Operatoren und der zugehörige Code werden außerhalb von zentralen Airflow in PyPI-Paketen verpackt und freigegeben, die als Anbieterpaketebezeichnet werden.
Einige dieser Pakete werden standardmäßig in Managed Airflow installiert. In der Liste der Pakete für die Version von Managed Airflow in Ihrer Umgebung in der Versionslistesehen Sie, welche Version in Ihrer Umgebung installiert ist.
GitHub-UI
So suchen Sie den Code für einen Operator in einer bestimmten Version eines Anbieterpakets:
Rufen Sie das Upstream-Airflow-Repository auf.
Geben Sie den Namen des Operators, nach dem Sie suchen, in die GitHub-Suchleiste ein.
Wenn mehrere Dateien zurückgegeben werden, klicken Sie auf die Codedatei mit einem Pfad, der mit
airflow/providersbeginnt.Wenn Sie beispielsweise nach
GoogleCloudStorageCreateBucketOperatorsuchen, wählen Sieairflow/providers/google/cloud/operators/gcs.pyaus.Klicken Sie auf die Zweigauswahl, um die Drop-down-Liste Branches/Tags wechseln zu öffnen.
Klicken Sie auf den Tab Tags.
Suchen Sie bei
providersPaketen nach dem Namen Ihres Anbieters und der Version, indem Sieproviders-PROVIDER_NAME/PROVIDER_VERSIONin die Suchleiste der Drop-down-Liste eingeben. Dabei istPROVIDER_NAMEder Name des Anbieters undPROVIDER_VERSIONder Name der gewünschten Version.Wenn Sie beispielsweise Version
10.0.0desapache-airflow-providers-googlePakets sehen möchten, suchen Sie nachproviders-google/10.0.0.Suchen Sie bei
backport-providers-Paketen, die in Airflow 1 verwendet werden, in der Suchleiste der Drop-down-Liste nachbackport-providers-PROVIDER_VERSION.Wenn Sie beispielsweise Version
2021.3.3desapache-airflow-backport-providers-googlePakets sehen möchten, suchen Sie nachbackport-providers-2021.3.3.Klicken Sie auf das Ergebnis, das Ihrer Abfrage entspricht.
Der Code auf dem Bildschirm ist das, was in Ihrer Version dieses Operators ausgeführt wird. Sie können auch auf Verlauf klicken, um den Commit-Verlauf bis zu diesem Zeitpunkt aufzurufen.
Git-Befehlszeile
So suchen Sie den Code für einen Operator in einer bestimmten Version eines Anbieterpakets:
Klonen Sie das Upstream-Airflow-Repository.
Führen Sie für
providersPaketegit checkout providers-PROVIDER_NAME/PROVIDER_VERSIONaus, wobeiPROVIDER_NAMEder Name des Anbieters undPROVIDER_VERSIONder Name der gewünschten Version ist.Wenn Sie beispielsweise Version
10.0.0desapache-airflow-providers-googlePakets sehen möchten, führen Siegit checkout providers-google/10.0.0aus.Führen Sie für
backport-providers-Pakete, die in Airflow 1 verwendet werden,git checkout backport-providers-PROVIDER_VERSIONaus.Wenn Sie beispielsweise Version
2021.3.3desapache-airflow-backport-providers-googlePakets sehen möchten, führen Siegit checkout backport-providers-2021.3.3aus.Wenn Sie den Dateipfad für den Operator nicht kennen, können Sie mit dem Befehl
git grepdanach suchen. Im folgenden Beispiel wird gezeigt, wie Sie nach GoogleCloudStorageCreateBucketOperator suchen.git grep GoogleCloudStorageCreateBucketOperatorDie Ausgabe ist eine Liste von Dateien, in denen der String (in diesem Fall der Name des Operators) gefunden wird. Rufen Sie in dieser Liste die Datei auf und untersuchen Sie ihren Inhalt weiter.
airflow/contrib/operators/gcs_operator.py:class GoogleCloudStorageCreateBucketOperator(BaseOperator): airflow/contrib/operators/gcs_operator.py: CreateBucket = GoogleCloudStorageCreateBucketOperator( airflow/contrib/operators/gcs_operator.py: super( GoogleCloudStorageCreateBucketOperator, self).__init__(*args, **kwargs) docs/code.rst:.. autoclass:: airflow.contrib.operators.gcs_operator.Google CloudStorageCreateBucketOperator docs/integration.rst:- :ref:`GoogleCloudStorageCreateBucketOperator` : Creates a new cloud storage bucket. docs/integration.rst:.. _GoogleCloudStorageCreateBucketOperator: docs/integration.rst:GoogleCloudStorageCreateBucketOperator docs/integration.rst:.. autoclass:: airflow.contrib.operators.gcs_operator .GoogleCloudStorageCreateBucketOperator tests/contrib/operators/test_gcs_operator.py:from airflow.contrib.operators.gcs_operator import GoogleCloudStorageCreateBucketOperator tests/contrib/operators/test_gcs_operator.py: operator = GoogleCloudStorageCreateBucketOperator(
Nächste Schritte
- Lokale Airflow-Umgebung mit dem Composer Local Development CLI-Tool ausführen