Como instalar plug-ins personalizados

O gerenciador de plug-ins do Apache Airflow permite que você crie operadores, hooks, sensores ou interfaces internos personalizados do Apache Airflow. Para mais informações, veja plug-ins personalizados (em inglês) na documentação do Airflow. Nesta página, você aprende a instalar plug-ins personalizados no ambiente do Cloud Composer.

Quando você cria um ambiente, um bucket do Cloud Storage gerado pelo Cloud Composer é associado a ele. Você usa a pasta plugins no bucket associado para instalar plug-ins personalizados. Para determinar o bucket do Cloud Storage anexado ao ambiente, consulte Como adicionar e atualizar DAGs.

Antes de começar

  • As permissões a seguir são necessárias para adicionar e atualizar plug-ins no bucket do Cloud Storage do ambiente do Cloud Composer:
    • storage.objectAdmin para fazer upload de arquivos.
    • composer.environments.get para pesquisar o bucket de destino do DAG. Essa permissão não é necessária ao usar a API Cloud Storage ou gsutil.
  • Este método de instalação se aplica apenas aos plug-ins do Airflow (em inglês). Por exemplo, não é possível usá-lo para instalar módulos comuns do Python ou outras bibliotecas.

  • Os plug-ins precisam estar em conformidade com as diretrizes do modelo de plug-ins do Airflow (em inglês).

Como instalar um plug-in

Para instalar um plug-in personalizado no ambiente do Cloud Composer, copie o código do plug-in para a pasta plugins no bucket do Cloud Storage anexado ao ambiente do Cloud Composer.

Para instalar um plugin, escolha uma opção a seguir:

gcloud composer environments storage plugins import --environment ENVIRONMENT_NAME \
    --location LOCATION \
    --source PATH_TO_LOCAL_FILE \
    --destination PATH_IN_SUBFOLDER

em que:

  • ENVIRONMENT_NAME é o nome do ambiente;
  • LOCATION é a região do Compute Engine em que o ambiente está localizado;
  • PATH_TO_LOCAL_FILE é o caminho do arquivo para upload;
  • --destination é uma opção para fazer o upload de um plug-in para uma subpasta na pasta plugins; PATH_IN_SUBFOLDER é o caminho da subpasta, como foo/bar.

Como ver uma lista de plug-ins

Para ver uma lista de plug-ins, escolha uma opção a seguir:

gcloud composer environments storage plugins list --environment ENVIRONMENT_NAME \
    --location LOCATION

Como excluir um plug-in

Para excluir um plug-in do ambiente do Cloud Composer, exclua o código do plug-in da pasta plugins no bucket do Cloud Storage anexado ao ambiente do Cloud Composer.

Para excluir um plug-in, escolha uma opção abaixo:

gcloud composer environments storage plugins delete --environment ENVIRONMENT_NAME \
    --location LOCATION PLUGIN_TO_DELETE

Como fazer o download de plug-ins

Para fazer o download de plug-ins, escolha uma opção a seguir:

gcloud composer environments storage plugins export --environment ENVIRONMENT_NAME \
    --location LOCATION \
    --destination PATH_TO_LOCAL_DESTINATION \
    --source PATH_IN_FOLDER

em que:

  • ENVIRONMENT_NAME é o nome do ambiente;
  • LOCATION é a região do Compute Engine em que o ambiente está localizado;
  • PATH_TO_LOCAL_DESTINATION é o destino do arquivo transferido;
  • --source é uma opção para fazer o download de apenas um plug-in; PATH_IN_FOLDER é o caminho da pasta, como "/foo".

A seguir