

Este é o Guia do desenvolvedor do AWS CDK v2. O CDK v1 antigo entrou em manutenção em 1º de junho de 2022 e encerrou o suporte em 1º de junho de 2023.

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á.

# `cdk watch`
<a name="ref-cli-cmd-watch"></a>

Observe continuamente um projeto local de AWS CDK em busca de mudanças na realização de implantações e hotswaps.

Esse comando é semelhante ao `cdk deploy`, exceto que ele pode realizar implantações contínuas e hotswaps por meio de um único comando.

Esse comando é um atalho para `cdk deploy --watch`.

Para finalizar uma sessão `cdk watch`, interrompa o processo pressionando `Ctrl+C`.

Os arquivos observados são determinados pela configuração `"watch"` em seu arquivo `cdk.json`. Ele tem duas subchaves, `"include"` e `"exclude"`, que aceitam uma única string ou uma matriz de strings. Cada entrada é interpretada como um caminho relativo à localização do arquivo `cdk.json`. Tanto `*` quanto `**` são aceitos.

Se você criar um projeto usando o comando `cdk init`, o seguinte comportamento padrão será configurado para o `cdk watch` no arquivo `cdk.json` do seu projeto:
+  `"include"` é definido como `"**/*"`, o que inclui todos os arquivos e diretórios na raiz do projeto.
+  `"exclude"` é opcional, exceto para arquivos e pastas já ignorados por padrão. Isso consiste em arquivos e diretórios começando com `.`, o diretório de saída do CDK e o diretório `node_modules`.

A configuração mínima a ser configurada no `watch` é `"watch": {}`.

Se o código do CDK ou o código da aplicação exigirem uma etapa de compilação antes da implantação, o `cdk watch` trabalha com a chave `"build"` no arquivo `cdk.json`.

**Importante**  
Esse comando é destinado à implantação rápida durante a fase de desenvolvimento do CDK Apps e não é recomendado para implantações de produção.

As mesmas limitações do `cdk deploy --hotswap` se aplicam ao `cdk watch`. Para obter mais informações, consulte ` cdk deploy --hotswap `.

## Usage
<a name="ref-cli-cmd-watch-usage"></a>

```
$ cdk watch <arguments> <options>
```

## Argumentos
<a name="ref-cli-cmd-watch-args"></a><a name="ref-cli-cmd-watch-args-stack-name"></a>

 **ID da pilha CDK**   
O ID de constructo da pilha do CDK da sua aplicação a observar.  
 *Tipo:* string  
 *Obrigatório*: não

## Opções
<a name="ref-cli-cmd-watch-options"></a>

Para obter uma lista das opções globais que funcionam com todos os comandos da CLI do CDK, consulte [Opções globais](ref-cli-cmd.md#ref-cli-cmd-options).<a name="ref-cli-cmd-watch-options-build-exclude"></a>

 `--build-exclude, -E <ARRAY>`   
Não recompile o ativo com o ID fornecido.  
Esta opção pode ser especificada várias vezes em um único comando.  
 *Valor padrão*: `[]` <a name="ref-cli-cmd-watch-options-change-set-name"></a>

 `--change-set-name <STRING>`   
O nome do conjunto de CloudFormation alterações a ser criado.<a name="ref-cli-cmd-watch-options-concurrency"></a>

 `--concurrency <NUMBER>`   
Implantar e fazer o hotswap de várias pilhas em paralelo enquanto contabiliza as dependências entre pilhas. Use essa opção para acelerar as implantações. Você ainda deve considerar qualquer outra limitação AWS da taxa da conta. CloudFormation   
Forneça um número para especificar o número máximo de implantações simultâneas (se a dependência permitir) a serem executadas.  
 *Valor padrão*: `1` <a name="ref-cli-cmd-watch-options-exclusively"></a>

 `--exclusively, -e <BOOLEAN>`   
Implante somente as pilhas solicitadas e não inclua dependências.<a name="ref-cli-cmd-watch-options-force"></a>

 `--force, -f <BOOLEAN>`   
Sempre implante pilhas, mesmo que os modelos sejam idênticos.  
 *Valor padrão*: `false` <a name="ref-cli-cmd-watch-options-help"></a>

 `--help, -h <BOOLEAN>`   
Mostrar as informações de referência do comando `cdk watch`.<a name="ref-cli-cmd-watch-options-hotswap"></a>

 `--hotswap <BOOLEAN>`   
Por padrão, o `cdk watch` usa implantações de hotswap quando possível para atualizar seus recursos. A CLI do CDK tentará realizar uma implantação de hotswap e não retornará a uma CloudFormation implantação completa se não for bem-sucedida. Quaisquer alterações detectadas que não possam ser atualizadas por meio de um hotswap são ignoradas.  
 *Valor padrão*: `true` <a name="ref-cli-cmd-watch-options-hotswap-fallback"></a>

 `--hotswap-fallback <BOOLEAN>`   
Por padrão, `cdk watch` tenta realizar implantações de hotswap e ignora as alterações que exigem implantações. CloudFormation `--hotswap-fallback`Forneça uma alternativa e execute uma CloudFormation implantação completa se a implantação do hotswap não for bem-sucedida.<a name="ref-cli-cmd-watch-options-logs"></a>

 `--logs <BOOLEAN>`   
Por padrão, `cdk watch` monitora todos os grupos de CloudWatch log em seu aplicativo e transmite os eventos de log localmente para o. `stdout`  
 *Valor padrão*: `true` <a name="ref-cli-cmd-watch-options-progress"></a>

 `--progress <STRING>`   
Configure como a CLI do CDK exibe o andamento da implantação.  
+  `bar` – Exibir os eventos de implantação da pilha como uma barra de andamento, com os eventos do recurso que está sendo implantado no momento.
+  `events`— Forneça um histórico completo, incluindo todos os CloudFormation eventos.
Você também pode configurar essa opção no arquivo `cdk.json` do projeto ou em `~/.cdk.json` na sua máquina de desenvolvimento local:  

```
{
   "progress": "events"
}
```
 *Valores válidos*: `bar`, `events`   
 *Valor padrão*: `bar` <a name="ref-cli-cmd-watch-options-rollback"></a>

 `--rollback <BOOLEAN>`   
Durante a implantação, se um recurso não for criado ou atualizado, a implantação voltará ao estado estável mais recente antes que a CLI do CDK retorne. Todas as alterações feitas até esse ponto serão desfeitas. Os recursos criados serão excluídos e as atualizações feitas serão revertidas.  
Use `--no-rollback` ou `-R` para desativar esse comportamento. Se um recurso não for criado ou atualizado, a CLI do CDK manterá as alterações feitas até aquele momento e retornará. Isso pode ser útil em ambientes de desenvolvimento em que você está iterando rapidamente.  
Quando `false`, implantações que causam substituições de recursos sempre falharão. Você só pode usar esse valor para implantações que atualizam ou criam novos recursos.
 *Valor padrão*: `true` <a name="ref-cli-cmd-watch-options-toolkit-stack-name"></a>

 `--toolkit-stack-name <STRING>`   
O nome da pilha existente do CDK Toolkit.  
Por padrão, `cdk bootstrap` implanta uma pilha nomeada `CDKToolkit` no ambiente especificado AWS . Use essa opção para fornecer um nome diferente para sua pilha de bootstrapping.  
A CLI do CDK usa esse valor para verificar a versão da pilha de bootstrapping.

## Exemplos
<a name="ref-cli-cmd-watch-examples"></a>

### Veja as alterações em uma pilha de CDK com ID DevelopmentStack lógica
<a name="ref-cli-cmd-watch-examples-1"></a>

```
$ cdk watch DevelopmentStack
Detected change to 'lambda-code/index.js' (type: change). Triggering 'cdk deploy'
DevelopmentStack: deploying...

 ✅  DevelopmentStack
```

### Configure um arquivo cdk.json para saber o que incluir e excluir da observação de alterações
<a name="ref-cli-cmd-watch-examples-2"></a>

```
{
   "app": "mvn -e -q compile exec:java",
   "watch": {
    "include": "src/main/**",
    "exclude": "target/*"
   }
}
```

### Criação de um projeto do CDK usando Java antes da implantação com a configuração do arquivo cdk.json
<a name="ref-cli-cmd-watch-examples-3"></a>

```
{
  "app": "mvn -e -q exec:java",
  "build": "mvn package",
  "watch": {
    "include": "src/main/**",
    "exclude": "target/*"
  }
}
```