Questa pagina descrive il repository che memorizza il codice di Apache Airflow patchato utilizzato in Cloud Composer.
Informazioni sul repository
Il repository Composer-Airflow è un repository di sola lettura che contiene il codice di Apache Airflow con patch in esecuzione in Cloud Composer.
Una determinata versione di Apache Airflow trovata in Cloud Composer non è sempre una corrispondenza esatta della versione corrispondente in Airflow a monte perché Cloud Composer utilizza una versione con patch di Airflow. Questo repository contiene il codice di ogni versione con patch di Airflow utilizzata in Cloud Composer. Per informazioni sulle versioni di Airflow disponibili in Cloud Composer, consulta l'elenco delle versioni di Cloud Composer.
Contributi
Questo codice non è un fork di Apache Airflow. Il codice trovato in questo repository proviene direttamente dal repository di Apache Airflow, ma con una tempistica diversa rispetto alle normali release di Apache Airflow.
Se vuoi contribuire a questo codice di base, contribuisci direttamente ad Airflow. Non farlo in questo repository perché le richieste pull non sono accettate.
Problemi e assistenza
- Se riscontri un problema con il codice trovato in questo repository, puoi creare un problema direttamente nel repository Airflow.
- In caso di problemi con Cloud Composer, utilizza i canali di assistenza Cloud Composer.
Navigazione nel repository
Il repository ha un ramo per ogni versione di Airflow disponibile in Cloud Composer. Non tutte le versioni di Airflow sono supportate in Cloud Composer. Puoi vedere quali versioni di Airflow sono supportate da una determinata versione di Cloud Composer nell'elenco delle versioni di Cloud Composer.
Esempi di utilizzo
Questa sezione elenca esempi di utilizzo del repository.
Questo commit del repository Airflow è presente nella mia versione di Cloud Composer?
Gli SHA1 dei commit nel repository Composer-Airflow non corrispondono agli SHA1 dei commit nel repository Airflow a monte. Uno dei modi per cercare un commit specifico è cercare il messaggio di commit corrispondente.
Non è possibile utilizzare l'interfaccia utente di GitHub per cercare i messaggi dei commit in branch diversi dal branch predefinito, ma è possibile farlo utilizzando la CLI git
. Per cercare un determinato commit in questo repository, devi avere git
installato.
Per cercare un messaggio di commit utilizzando l'interfaccia a riga di comando git
:
Clona il repository e passa alla relativa directory utilizzando il seguente comando:
git clone git@github.com:GoogleCloudPlatform/composer-airflow.git && \ cd composer-airflow
Cerca il messaggio di commit:
git log --source --grep="COMMIT_MESSAGE" --all
In questo comando:
--source
mostra il ramo in cui è stato trovato il commit--grep
specifica il messaggio in cui deve essere eseguita la ricerca nel log--all
esegue ricerche in tutti i branch
Il ramo si trova accanto all'hash del commit nella prima riga di ogni risultato. Se il comando restituisce un commit, significa che è presente nella tua versione di Cloud Composer. Inoltre, se la versione di Airflow nel tuo ambiente è successiva alla versione del ramo, il commit viene utilizzato nella versione di Airflow del tuo ambiente.
Ad esempio, se vuoi cercare il messaggio del commitForce explicit choice on GPL dependency
, il comando sarà:
git log --source --grep="Force explicit choice on GPL dependency" --all
Se esiste un commit corrispondente, i risultati saranno simili all'esempio di output riportato di seguito. Potrebbero essere presenti più risultati.
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
Che aspetto ha questo operatore Airflow nella mia versione di Cloud Composer?
Gli operatori di Airflow e il codice aggiuntivo vengono pacchettizzati e rilasciati separatamente dall'Airflow principale nei pacchetti PyPI chiamati pacchetti del provider.
Alcuni di questi pacchetti sono installati per impostazione predefinita in Cloud Composer. Per sapere quale versione è installata nel tuo ambiente, controlla l'elenco dei pacchetti per la versione di Cloud Composer del tuo ambiente nell'elenco delle versioni.
Interfaccia utente di GitHub
Per esaminare il codice di un operatore in una determinata versione del pacchetto del fornitore:
Vai al repo Airflow upstream.
Inserisci il nome dell'operatore che stai cercando nella barra di ricerca di GitHub.
Se viene restituito più di un file, fai clic sul file di codice con un percorso che inizia con
airflow/providers
.Ad esempio, se cerchi
GoogleCloudStorageCreateBucketOperator
, scegliairflow/providers/google/cloud/operators/gcs.py
.Fai clic sul selettore di branch, che apre l'elenco a discesa Cambia branch/tag.
Fai clic sulla scheda Tag.
Per i pacchetti
providers
, cerca il nome del provider e la versione digitandoproviders-PROVIDER_NAME/PROVIDER_VERSION
nella barra di ricerca dell'elenco a discesa, dovePROVIDER_NAME
è il nome del provider ePROVIDER_VERSION
è il nome della versione che stai cercando.Ad esempio, se vuoi vedere la versione
10.0.0
delapache-airflow-providers-google
pacchetto, devi cercareproviders-google/10.0.0
.Per i pacchetti
backport-providers
, utilizzati in Airflow 1, cercabackport-providers-PROVIDER_VERSION
nella barra di ricerca dell'elenco a discesa.Ad esempio, se vuoi vedere la versione
2021.3.3
delapache-airflow-backport-providers-google
pacchetto, cercabackport-providers-2021.3.3
.Fai clic sul risultato corrispondente alla tua query.
Il codice sullo schermo è quello in esecuzione nella tua versione dell'operatore. Puoi anche fare clic su Cronologia per visualizzare la cronologia dei commit fino a questo punto.
Interfaccia a riga di comando git
Per esaminare il codice di un operatore in una determinata versione del pacchetto del fornitore:
Clona il repository Airflow a monte.
Per i pacchetti
providers
, eseguigit checkout providers-PROVIDER_NAME/PROVIDER_VERSION
, dovePROVIDER_NAME
è il nome del provider ePROVIDER_VERSION
è il nome della versione che stai cercando.Ad esempio, se vuoi visualizzare la versione
10.0.0
del pacchettoapache-airflow-providers-google
, eseguigit checkout providers-google/10.0.0
.Per i pacchetti
backport-providers
, utilizzati in Airflow 1, eseguigit checkout backport-providers-PROVIDER_VERSION
.Ad esempio, se vuoi visualizzare la versione
2021.3.3
del pacchettoapache-airflow-backport-providers-google
,eseguigit checkout backport-providers-2021.3.3
.Se non conosci il percorso del file dell'operatore, puoi cercarlo con il comando
git grep
. L'esempio seguente mostra come eseguire la ricerca di GoogleCloudStorageCreateBucketOperator.git grep GoogleCloudStorageCreateBucketOperator
L'output è un elenco di file in cui è possibile trovare la stringa (in questo caso, il nome dell'operatore). Da questo elenco, vai al file ed esaminane ulteriormente i contenuti.
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(
Passaggi successivi
- Esegui un ambiente Airflow locale con lo strumento CLI Composer Local Development