

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Como adicionar ou atualizar DAGs
<a name="configuring-dag-folder"></a>

Gráficos acíclicos direcionados (Directed Acyclic Graphs, DAGs) são definidos em um arquivo Python que define a estrutura do DAG como código. É possível usar a AWS CLI, ou o console do Amazon S3, para fazer upload de DAGs para o ambiente. Este tópico descreve as etapas para adicionar ou atualizar DAGs do Apache Airflow em seu ambiente Amazon Managed Workflows para Apache Airflow usando a pasta `dags` em seu bucket do Amazon S3.

**Topics**
+ [Pré-requisitos](#configuring-dag-folder-prereqs)
+ [Como funciona](#configuring-dag-folder-how)
+ [O que mudou?](#configuring-dag-folder-changed)
+ [Como testar DAGs usando o utilitário Amazon MWAA CLI](#working-dag-folder-cli-utility)
+ [Como fazer upload do código do DAG para o Amazon S3](#configuring-dag-folder-uploading)
+ [Como especificar o caminho para sua pasta DAGs no console Amazon MWAA (pela primeira vez)](#configuring-dag-folder-mwaaconsole)
+ [Como acessar as alterações na IU do Apache Airflow](#configuring-dag-folder-mwaaconsole-view)
+ [Próximas etapas](#configuring-dag-folder-next-up)

## Pré-requisitos
<a name="configuring-dag-folder-prereqs"></a>

Você precisará do seguinte antes de concluir as etapas nesta página.
+ **Permissões**: sua Conta da AWS deve ter o acesso concedido por seu administrador para a política de controle de acesso [AmazonMWAAFullConsoleAccess](access-policies.md#console-full-access) para seu ambiente. Além disso, seu ambiente Amazon MWAA deve ser autorizado pela seu [perfil de execução](mwaa-create-role.md) para acessar os recursos da AWS usados pelo seu ambiente.
+ **Acesso**: se você precisar de acesso a repositórios públicos para instalar dependências diretamente no servidor web, seu ambiente deverá ser configurado com acesso ao servidor Web de **rede pública**. Para obter mais informações, consulte [Modos de acesso do Apache Airflow](configuring-networking.md).
+ **Configuração do Amazon S3**: o [bucket do Amazon S3](mwaa-s3-bucket.md) usado para armazenar seus DAGs, plug-ins personalizados em `plugins.zip` e dependências do Python em `requirements.txt` deve ser configurado com *Acesso público bloqueado* e *Versionamento habilitado*.

## Como funciona
<a name="configuring-dag-folder-how"></a>

Um Gráfico acíclico direcionado (Directed Acyclic Graphs, DAGs) é definido em um único arquivo Python que define a estrutura do DAG como código. Ele consiste em:
+ Uma definição de [DAG](https://airflow.apache.org/docs/stable/concepts.html#dags).
+ [Operadores](https://airflow.apache.org/concepts.html#operators) que descrevem como executar o DAG e as [tarefas](https://airflow.apache.org/docs/stable/concepts.html#tasks) a serem executadas.
+ [Relações entre operadores](https://airflow.apache.org/concepts.html#bitshift-composition) que descrevem a ordem na qual as tarefas devem ser executadas.

Para executar uma plataforma Apache Airflow em um ambiente Amazon MWAA, você precisa copiar sua definição de DAG para a pasta `dags` em seu bucket de armazenamento. Por exemplo, a pasta DAG em seu bucket de armazenamento deve ter a seguinte aparência:

**Example Pasta do DAG**  

```
dags/
└ dag_def.py
```

O Amazon MWAA sincroniza automaticamente objetos novos e alterados do seu bucket do Amazon S3 para a pasta `/usr/local/airflow/dags` dos contêineres de scheduler e operador do Amazon MWAA a cada 30 segundos, preservando a hierarquia de arquivos da fonte do Amazon S3, independentemente do tipo de arquivo. O tempo que os novos DAGs levam para aparecer na sua IU do Apache Airflow é controlado por `scheduler.dag\$1dir\$1list\$1interval`. As alterações nos DAGs existentes serão coletadas no próximo [ciclo de processamento do DAG](best-practices-tuning.md#best-practices-tuning-scheduler).

**nota**  
Você não precisa incluir o arquivo de configuração `airflow.cfg` na pasta do DAG. É possível substituir as configurações padrão do Apache Airflow no console do Amazon MWAA. Para obter mais informações, consulte [Como usar opções de configuração do Apache Airflow no Amazon MWAA](configuring-env-variables.md).

## O que mudou?
<a name="configuring-dag-folder-changed"></a>

Para revisar as alterações em uma versão específica do Apache Airflow, consulte a página [Notas de versão](https://airflow.apache.org/docs/apache-airflow/stable/release_notes.html#release-notes).
+ Configurações do Apache Airflow v3: [Referência de configuração](https://airflow.apache.org/docs/apache-airflow/3.0.6/configurations-ref.html)
+ Informações da interface pública do Apache Airflow v2: [Interface pública do Airflow](https://airflow.apache.org/docs/apache-airflow/2.10.3/public-airflow-interface.html)

## Como testar DAGs usando o utilitário Amazon MWAA CLI
<a name="working-dag-folder-cli-utility"></a>
+ O utilitário da interface de linha de comandos (CLI) replica localmente um ambiente do Amazon Managed Workflows for Apache Airflow.
+ A CLI cria localmente uma imagem de contêiner Docker semelhante a uma imagem de produção do Amazon MWAA. Você pode usá-la para executar um ambiente local do Apache Airflow para desenvolver e testar DAGs, plug-ins personalizados e dependências antes da implantação no Amazon MWAA.
+ Para executar a CLI, consulte [aws-mwaa-docker-images](https://github.com/aws/amazon-mwaa-docker-images) no GitHub.

## Como fazer upload do código do DAG para o Amazon S3
<a name="configuring-dag-folder-uploading"></a>

É possível usar o console do Amazon S3 ou a AWS Command Line Interface (AWS CLI) para fazer upload do código do DAG para o bucket do Amazon S3. As etapas a seguir pressupõem que você esteja fazendo upload do código (`.py`) em uma pasta chamada `dags` em seu bucket do Amazon S3.

### Como usar o AWS CLI
<a name="configuring-dag-folder-cli"></a>

A AWS Command Line Interface (AWS CLI) é uma ferramenta de código aberto que pode ser usada para interagir com os serviços da AWS por meio de comandos no shell da linha de comando. Para concluir as etapas nesta página, é necessário o seguinte:
+ [AWS CLI – instalar a versão 2](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html).
+ [AWS CLI – configuração rápida com `aws configure`](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html).

**Para fazer o upload usando AWS CLI**

1. Use o comando a seguir para listar todos os seus buckets do Amazon S3.

   ```
   aws s3 ls
   ```

1. Use o seguinte comando para listar os arquivos e pastas no bucket do Amazon S3 para seu ambiente.

   ```
   aws s3 ls s3://YOUR_S3_BUCKET_NAME
   ```

1. Os comandos a seguir fazem upload de um arquivo `dag_def.py` para uma pasta `dags`. 

   ```
   aws s3 cp dag_def.py s3://amzn-s3-demo-bucket/dags/
   ```

   Se uma pasta chamada `dags` ainda não existir em seu bucket do Amazon S3, este comando cria a pasta `dags` e faz upload do arquivo denominado `dag_def.py` para a nova pasta.

### Usar o console do Amazon S3
<a name="configuring-dag-folder-console"></a>

O console do Amazon S3 é uma interface de usuário baseada na Web que permite criar e gerenciar os recursos no bucket do Amazon S3. As etapas a seguir pressupõem que você tenha uma pasta DAGs chamada `dags`.

**Fazer o upload usando o console do Amazon S3**

1. Abra a [página Ambientes](https://console.aws.amazon.com/mwaa/home#/environments) no console do Amazon MWAA.

1. Escolha um ambiente.

1. Selecione o link do **bucket do S3** no **código do DAG no painel do S3** para abrir seu bucket de armazenamento no console.

1. Escolha a pasta `dags`.

1. Escolha **Carregar**.

1. Escolha **Adicionar arquivo**.

1. Selecione a cópia local do seu `dag_def.py` e escolha **Carregar**.

## Como especificar o caminho para sua pasta DAGs no console Amazon MWAA (pela primeira vez)
<a name="configuring-dag-folder-mwaaconsole"></a>

As etapas a seguir pressupõem que você está especificando o caminho para uma pasta do bucket do Amazon S3 chamada `dags`.

1. Abra a [página Ambientes](https://console.aws.amazon.com/mwaa/home#/environments) no console do Amazon MWAA.

1. Escolha o ambiente em que você deseja executar DAGs.

1. Escolha **Editar**.

1. No painel **código DAG no painel Amazon S3**, escolha **Navegar pelo S3** ao lado do campo **pasta DAG**.

1. Selecione sua pasta `dags`.

1. Selecione **Escolher**.

1. Selecione **Avançar**, **Atualizar ambiente**.

## Como acessar as alterações na IU do Apache Airflow
<a name="configuring-dag-folder-mwaaconsole-view"></a>

Você precisa de permissões [Política de acesso ao Apache Airflow UI: Amazon MWAAWeb ServerAccess](access-policies.md#web-ui-access) para sua Conta da AWS no AWS Identity and Access Management (IAM) para acessar sua IU do Apache Airflow.

**Para acessar sua IU do Apache Airflow**

1. Abra a [página Ambientes](https://console.aws.amazon.com/mwaa/home#/environments) no console do Amazon MWAA.

1. Escolha um ambiente.

1. Escolha **Abrir a IU do Airflow**.

## Próximas etapas
<a name="configuring-dag-folder-next-up"></a>

Teste seus DAGs, plug-ins personalizados e dependências do Python localmente usando [aws-mwaa-docker-images](https://github.com/aws/amazon-mwaa-docker-images) no GitHub.