Sobre o repositório
O repositório Composer-Airflow é um repositório somente leitura que contém o código do Apache Airflow em patch no Cloud Composer. Ele pode ser usado como referência e para testes e desenvolvimento locais.
Uma versão específica do Apache Airflow encontrada no Cloud Composer nem sempre é uma correspondência exata com a versão correspondente no upstream do Airflow porque ele usa uma versão com patch do Airflow. Esse repositório contém o código para cada versão com patch do Airflow usada no Cloud Composer. Para informações sobre quais versões do Airflow são encontradas no Cloud Composer, consulte a lista de versões do Cloud Composer.
Contribuição
Esse código não é uma bifurcação do Apache Airflow. O código encontrado nesse repositório vem diretamente do repositório Apache Airflow, mas está em uma linha do tempo diferente das versões normais do Apache Airflow. Caso queira contribuir com esta base de código, não faça isso aqui. As solicitações de envio não são aceitas neste repositório e, em vez disso, devem ser contribuídas para o Airflow diretamente.
Problemas + suporte
Se você tiver um problema com o código encontrado neste repositório, siga as instruções de relatórios de bugs do Airflow. Se você tiver um problema com o Cloud Composer, use os canais de suporte do Cloud Composer.
Como navegar no repositório
O repositório tem uma ramificação para cada versão do Airflow disponível no Cloud Composer. Nem todas as versões do Airflow são compatíveis com o Cloud Composer. Para mais informações sobre o suporte às versões, consulte Controle de versões do Cloud Composer.
Casos de uso
Esta confirmação está disponível no repositório do Airflow na minha versão do Cloud Composer?
Os commit SHA1s no repo composer-airflow não correspondem ao commit SHA1s no repositório upstream do Airflow. A maneira mais fácil de pesquisar uma confirmação específica é pesquisar pelo mensagem de confirmação correspondente.
No momento, não é possível usar a IU do GitHub para pesquisar mensagens de confirmação em branches além da ramificação padrão. No entanto, é possível fazer isso usando a CLI git
. Para pesquisar uma confirmação específica neste repositório, você precisa ter o git
(em inglês) instalado.
- Clone o repositório e altere para o diretório do repositório usando o comando a seguir:
git clone git@github.com:GoogleCloudPlatform/composer-airflow.git && cd composer-airflow
Procure a mensagem de confirmação:
git log --source --grep="COMMIT_MESSAGE" --all
onde:
--source
mostra a ramificação em que a confirmação foi encontrada;- O
--grep
informa aogit
qual mensagem será pesquisada no registro. --all
informa aogit
para pesquisar todas as ramificações
A ramificação está localizada ao lado do hash de confirmação na primeira linha de cada resultado. Se o comando retornar uma confirmação, isso significa que ele está na sua versão do Cloud Composer. Além disso, se a versão do Airflow no seu ambiente for posterior à versão da ramificação, a confirmação será usada na versão do Airflow do ambiente.
Por exemplo, se você quiser pesquisar a mensagem de confirmação "Force explicit option on GPL dependentes", o comando será:
git log --source --grep="Force explicit choice on GPL dependency" --all
e se houver uma confirmação correspondente, os resultados serão semelhantes a este (pode haver mais de um 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
Como é esse operador na minha versão do Composer?
Se você não estiver usando os pacotes providers
Se você souber o caminho do arquivo de um operador específico, por exemplo, GoogleCloudStorageCreateBucketOperator
, navegue até ele usando a IU do GitHub ou a CLI.
Se você não souber o caminho do arquivo, pesquise-o com o seguinte comando:
git grep GoogleCloudStorageCreateBucketOperator
A saída será uma lista de arquivos em que a string (neste caso, o nome do operador) pode ser encontrada. Nessa lista, navegue até o arquivo apropriado e analise o conteúdo.
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.GoogleCloudStorageCreateBucketOperator
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(
Se você estiver usando os pacotes providers
Começando com algumas versões do Airflow 1.10.x, determinados operadores e códigos que as acompanham são empacotados e lançados separadamente dos principais pacotes do Airflow em pacotes PyPI, chamados de "pacotes de provedores de backport" (Airflow 1.10.x) ou "provider". pacotes" (Airflow 2.0 e superior). Consulte a documentação do provedor de backport do Cloud Composer para ver mais informações sobre esses provedores no Cloud Composer.
Algumas versões desses pacotes são instaladas por padrão no Cloud Composer. Para saber qual versão está instalada no seu ambiente, verifique os "Pacotes PyPI para Python 3" coluna da lista de versões.
Para analisar o código de um operador em uma versão específica:
IU do GitHub
- Acesse o repositório upstream do Airflow.
- Digite o nome do operador que você está procurando na barra de pesquisa do GitHub, na parte superior da página.
- Se mais de um arquivo for retornado, clique no arquivo de código com um caminho que começa em
airflow/providers
. Por exemplo, se você pesquisarGoogleCloudStorageCreateBucketOperator
, escolhaairflow/providers/google/cloud/operators/gcs.py
. - Clique no seletor de ramificação, que abre a lista suspensa "Alternar ramificações/tags".
- Clique na guia "Tags".
- Para pacotes
providers
, pesquise o nome do seu provedor e a versão digitando: na barra de pesquisa da lista suspensa, em queproviders-PROVIDER_NAME/PROVIDER_VERSION
PROVIDER_NAME
é o nome do provedor ePROVIDER_VERSION
é o nome da versão que você está procurando. Por exemplo, se você quiser ver a versão4.0.0
do pacoteapache-airflow-providers-google
, pesquiseproviders-google/4.0.0
. - Para pacotes
backport-providers
, pesquise na barra de pesquisa da lista suspensa. Por exemplo, se você quiser ver a versãobackport-providers-PROVIDER_VERSION
2021.3.3
do pacoteapache-airflow-backport-providers-google
, pesquisebackport-providers-2021.3.3
. - Clique no resultado que corresponde à consulta.
- O código na tela é exatamente o que está sendo executado na sua versão desse operador. Também é possível clicar em Histórico para ver o histórico de confirmações até esse ponto.
CLI do git
- Clone o repositório upstream do Airflow.
- Para pacotes
providers
, execute , em quegit checkout providers-PROVIDER_NAME/PROVIDER_VERSION
PROVIDER_NAME
é o nome do provedor, ePROVIDER_VERSION
é o nome da versão que você está procurando. Por exemplo, se você quiser conferir a versão4.0.0
do pacoteapache-airflow-providers-google
, executegit checkout providers-google/4.0.0
. - Para pacotes
backport-providers
, execute na barra de pesquisa da lista suspensa. Por exemplo, se você quiser conferir a versãogit checkout backport-providers-PROVIDER_VERSION
2021.3.3
do pacoteapache-airflow-backport-providers-google
, executegit checkout backport-providers-2021.3.3
.
Em seguida, siga as instruções em Se você não estiver usando os pacotes providers