Esta página describe el repositorio que almacena el código de Apache Airflow modificado que se utiliza en Managed Airflow.
Acerca del repositorio
El repositorio Composer-Airflow es un repositorio de solo lectura que contiene el código parcheado de Apache Airflow que se ejecuta en Managed Airflow.
Una versión particular de Apache Airflow que se encuentra en Managed Airflow no siempre es una coincidencia exacta de la versión correspondiente en Airflow upstream porque Managed Airflow usa una versión con parche de Airflow. Este repositorio contiene el código para cada versión con parche de Airflow que se usa en Managed Airflow. Para obtener información sobre qué versiones de Airflow se encuentran en Managed Airflow, consulte Lista de versiones de Managed Airflow.
Contribuyendo
Este código no es una bifurcación de Apache Airflow. El código que se encuentra en este repositorio proviene directamente del repositorio de Apache Airflow, pero con una periodicidad diferente a la de las versiones habituales de Apache Airflow.
Si desea contribuir a esta base de código, entonces contribuya directamente a Airflow en su lugar. No lo hagas en este repositorio porque no se aceptan solicitudes de extracción (Pull Requests).
Problemas y soporte
- Si tiene algún problema con el código que se encuentra en este repositorio, puede crear un problema directamente en el repositorio de Airflow.
- Si tienes problemas con Managed Airflow, usa los canales de asistencia de Managed Airflow.
Cómo navegar por el repositorio
El repositorio tiene una rama para cada versión de Airflow disponible en Managed Service para Apache Airflow. No todas las versiones de Airflow son compatibles con Managed Airflow. Puedes ver qué versiones de Airflow son compatibles con una versión específica de Managed Airflow en la lista de versiones de Managed Airflow.
Ejemplos de uso
Esta sección enumera ejemplos de uso del repositorio.
¿Esta confirmación proviene del repositorio de Airflow en mi versión de Managed Airflow?
Los SHA1 de las confirmaciones en el repositorio de Composer-Airflow no corresponden a los SHA1 de las confirmaciones en el repositorio de Airflow upstream. Una de las formas de buscar una confirmación específica es buscar el mensaje de confirmación correspondiente.
No es posible usar la IU de GitHub para buscar mensajes de confirmación en ramas que no sean la rama predeterminada; sin embargo, es posible hacerlo con la CLI de git. Para buscar una confirmación en particular en este repositorio, debes tener git instalado.
Para buscar un mensaje de confirmación con la CLI de git, haz lo siguiente:
Clona el repositorio y cambia al directorio del repositorio con el siguiente comando:
git clone git@github.com:GoogleCloudPlatform/composer-airflow.git && \ cd composer-airflowBusca el mensaje de confirmación:
git log --source --grep="COMMIT_MESSAGE" --allEste comando incluye lo siguiente:
--sourcemuestra la rama en la que se encuentra la confirmación--grepespecifica el mensaje que se debe buscar en el registro--allbusca en todas las ramas
La rama se encuentra junto al hash de confirmación en la primera línea de cada resultado. Si el comando muestra una confirmación, esto significa que está en tu versión de Managed Airflow. Además, si la versión de Airflow en tu entorno es posterior a la versión de rama, la confirmación se usa en la versión de Airflow de tu entorno.
Por ejemplo, si deseas buscar el mensaje de confirmación Force explicit choice on GPL dependency, el comando sería el siguiente:
git log --source --grep="Force explicit choice on GPL dependency" --all
Si hay una confirmación coincidente, los resultados se verán como el siguiente ejemplo de resultado. Puede haber más de un resultado.
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
¿Cómo se ve este operador de Airflow en mi versión de Managed Airflow?
Los operadores de Airflow y el código que los acompaña se empaquetan y lanzan por separado del Airflow principal en paquetes de PyPI llamados paquetes de proveedores.
Algunos de estos paquetes se instalan de forma predeterminada en Managed Airflow. Para saber qué versión está instalada en tu entorno, consulta la lista de paquetes para la versión de tu entorno de Managed Airflow en la lista de versiones.
IU de GitHub
Para ver el código de un operador en una versión particular del paquete del proveedor, haz lo siguiente:
Ingresa el nombre del operador que buscas en la barra de búsqueda de GitHub.
Si se muestra más de un archivo, haz clic en el archivo de código con una ruta de acceso que comienza con
airflow/providers.Por ejemplo, si busca
GoogleCloudStorageCreateBucketOperator, elijaairflow/providers/google/cloud/operators/gcs.py.Haz clic en el selector de ramas, que abre la lista desplegable Cambiar ramas/etiquetas.
Haz clic en la pestaña Etiquetas.
Para los paquetes
providers, escribe el nombre de tu proveedor y la versión. Para ello, escribeproviders-PROVIDER_NAME/PROVIDER_VERSIONen la barra de búsqueda de la lista desplegable, dondePROVIDER_NAMEes el nombre del proveedor yPROVIDER_VERSIONes el nombre de la versión que buscas.Por ejemplo, si deseas ver la versión
10.0.0del paqueteapache-airflow-providers-google, debes buscarproviders-google/10.0.0.En el caso de los paquetes
backport-providers, que se usan en Airflow 1, buscabackport-providers-PROVIDER_VERSIONen la barra de búsqueda de la lista desplegable.Por ejemplo, si deseas ver la versión
2021.3.3del paqueteapache-airflow-backport-providers-google, buscabackport-providers-2021.3.3.Haz clic en el resultado que coincida con tu búsqueda.
El código en pantalla es lo que se ejecuta en tu versión de ese operador. También puedes hacer clic en Historial para ver el historial de confirmaciones hasta este punto.
CLI de git
Para ver el código de un operador en una versión particular del paquete del proveedor, haz lo siguiente:
Clona el repositorio de Airflow ascendente.
Para los paquetes
providers, ejecutagit checkout providers-PROVIDER_NAME/PROVIDER_VERSION, dondePROVIDER_NAMEes el nombre del proveedor yPROVIDER_VERSIONes el nombre de la versión que buscas.Por ejemplo, si deseas ver la versión
10.0.0del paqueteapache-airflow-providers-google, ejecutagit checkout providers-google/10.0.0.Para los paquetes
backport-providers, que se utilizan en Airflow 1, ejecutegit checkout backport-providers-PROVIDER_VERSION.Por ejemplo, si deseas ver la versión
2021.3.3del paqueteapache-airflow-backport-providers-google,ejecutagit checkout backport-providers-2021.3.3.Si no conoce la ruta de archivo del operador, puede buscarla con el comando
git grep. El siguiente ejemplo muestra cómo buscar GoogleCloudStorageCreateBucketOperator.git grep GoogleCloudStorageCreateBucketOperatorEl resultado es una lista de archivos donde se puede encontrar la cadena (en este caso, el nombre del operador). En esa lista, navega al archivo y examina su contenido.
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(
¿Qué sigue?
- Ejecuta un entorno local de Airflow con la herramienta de CLI de desarrollo local de Composer