Cette page décrit le dépôt qui stocke le code Apache Airflow corrigé utilisé dans Cloud Composer.
À propos du dépôt
Le dépôt Composer-Airflow est un dépôt en lecture seule contenant le code Apache Airflow corrigé qui s'exécute dans Cloud Composer.
Une version particulière d'Apache Airflow trouvée dans Cloud Composer n'est pas toujours une correspondance exacte de la version correspondante en amont, car Cloud Composer utilise une version corrigée d'Airflow. Ce dépôt contient le code de chaque version corrigée d'Airflow utilisée dans Cloud Composer. Pour en savoir plus sur les versions d'Airflow disponibles dans Cloud Composer, consultez la page Liste des versions Cloud Composer.
Contribution
Ce code n'est pas une copie d'Apache Airflow. Le code trouvé dans ce dépôt provient directement du dépôt Apache Airflow. Il est issu d'une chronologie différente de celle des versions normales d'Apache Airflow.
Si vous souhaitez contribuer à ce codebase, contribuez directement à Airflow. Ne le faites pas dans ce dépôt, car les requêtes pull ne sont pas acceptées.
Problèmes et assistance
- Si vous rencontrez un problème avec le code trouvé dans ce dépôt, vous pouvez créer un problème directement dans le dépôt Airflow.
- Si vous rencontrez un problème avec Cloud Composer, veuillez utiliser les canaux d'assistance Cloud Composer.
Parcourir le dépôt
Le dépôt dispose d'une branche pour chaque version d'Airflow disponible dans Cloud Composer. Les versions d'Airflow ne sont pas toutes compatibles avec Cloud Composer. Vous pouvez consulter les versions d'Airflow compatibles avec une version Cloud Composer spécifique dans la liste des versions Cloud Composer.
Exemples d'utilisation
Cette section répertorie des exemples d'utilisation du dépôt.
Ce commit provient-il du dépôt Airflow dans ma version de Cloud Composer ?
Les SHA1 des commits dans le dépôt Composer-Airflow ne correspondent pas aux SHA1 des commits dans le dépôt Airflow en amont. Pour rechercher un commit spécifique, vous pouvez rechercher le message de commit correspondant.
Il n'est pas possible d'utiliser l'interface utilisateur GitHub pour effectuer une recherche dans les messages de commit dans des branches autres que la branche par défaut. Toutefois, cela est possible à l'aide de la CLI git
. Pour rechercher un commit particulier dans ce dépôt, vous devez avoir installé git
.
Pour rechercher un message de commit à l'aide de la CLI git
:
Clonez le dépôt et accédez au répertoire du dépôt à l'aide de la commande suivante:
git clone git@github.com:GoogleCloudPlatform/composer-airflow.git && \ cd composer-airflow
Recherchez le message de commit :
git log --source --grep="COMMIT_MESSAGE" --all
Dans cette commande :
--source
indique la branche où se trouve le commit.--grep
spécifie le message à rechercher dans le journal.--all
recherche dans toutes les branches.
La branche est située à côté du hachage de commit sur la première ligne de chaque résultat. Si la commande renvoie un commit, cela signifie qu'elle se trouve dans votre version de Cloud Composer. En outre, si la version d'Airflow de votre environnement est ultérieure à la version de la branche, le commit est utilisé dans la version d'Airflow de votre environnement.
Par exemple, si vous souhaitez rechercher le message de commit Force explicit choice on GPL dependency
, votre commande est la suivante:
git log --source --grep="Force explicit choice on GPL dependency" --all
S'il existe un commit correspondant, vos résultats ressemblent à l'exemple de sortie suivant. Il peut y avoir plusieurs résultats.
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
À quoi ressemble cet opérateur Airflow dans ma version de Cloud Composer ?
Les opérateurs Airflow et le code associé sont empaquetés et publiés séparément d'Airflow dans des packages PyPI appelés packages fournisseur.
Certains de ces packages sont installés par défaut dans Cloud Composer. Pour savoir quelle version est installée dans votre environnement, consultez la liste des packages de la version de Cloud Composer de votre environnement dans la liste des versions.
UI GitHub
Pour examiner le code d'un opérateur dans une version spécifique du package du fournisseur:
Accédez au dépôt Airflow en amont.
Saisissez le nom de l'opérateur que vous recherchez dans la barre de recherche GitHub.
Si plusieurs fichiers sont renvoyés, cliquez sur le fichier de code dont le chemin commence par
airflow/providers
.Par exemple, si vous recherchez la valeur
GoogleCloudStorageCreateBucketOperator
, choisissezairflow/providers/google/cloud/operators/gcs.py
.Cliquez sur le sélecteur de branche pour ouvrir la liste déroulante Changer de branche/tags.
Cliquez sur l'onglet Tags (Étiquettes).
Pour les packages
providers
, recherchez le nom de votre fournisseur et la version en saisissantproviders-PROVIDER_NAME/PROVIDER_VERSION
dans la barre de recherche de la liste déroulante, oùPROVIDER_NAME
est le nom du fournisseur etPROVIDER_VERSION
est le nom de la version que vous recherchez.Par exemple, si vous souhaitez afficher la version
10.0.0
du packageapache-airflow-providers-google
, vous devez rechercherproviders-google/10.0.0
.Pour les packages
backport-providers
, qui sont utilisés dans Airflow 1, recherchezbackport-providers-PROVIDER_VERSION
dans la barre de recherche de la liste déroulante.Par exemple, si vous souhaitez afficher la version
2021.3.3
du packageapache-airflow-backport-providers-google
, recherchezbackport-providers-2021.3.3
.Cliquez sur le résultat correspondant à votre requête.
Le code à l'écran est ce qui s'exécute dans votre version de cet opérateur. Vous pouvez également cliquer sur Historique pour afficher l'historique des commits jusqu'à ce point.
CLI git
Pour examiner le code d'un opérateur dans une version spécifique du package du fournisseur:
Clonez le dépôt Airflow en amont.
Pour les packages
providers
, exécutezgit checkout providers-PROVIDER_NAME/PROVIDER_VERSION
, oùPROVIDER_NAME
est le nom du fournisseur etPROVIDER_VERSION
est le nom de la version que vous recherchez.Par exemple, si vous souhaitez afficher la version
10.0.0
du packageapache-airflow-providers-google
, exécutezgit checkout providers-google/10.0.0
.Pour les packages
backport-providers
, qui sont utilisés dans Airflow 1, exécutezgit checkout backport-providers-PROVIDER_VERSION
.Par exemple, si vous souhaitez afficher la version
2021.3.3
du packageapache-airflow-backport-providers-google
,exécutezgit checkout backport-providers-2021.3.3
.Si vous ne connaissez pas le chemin d'accès de l'opérateur, vous pouvez le rechercher à l'aide de la commande
git grep
. L'exemple suivant montre comment rechercher GoogleCloudStorageCreateBucketOperator.git grep GoogleCloudStorageCreateBucketOperator
Le résultat est une liste de fichiers dans lesquels se trouve la chaîne (dans ce cas, le nom de l'opérateur). Depuis cette liste, accédez au fichier et examinez son contenu plus en détail.
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(
Étape suivante
- Exécuter un environnement Airflow local avec l'outil de CLI de développement local Composer