Este é o Guia do Desenvolvedor AWS CDK v2. A CDK v1 mais antiga 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
Observe continuamente um projeto AWS CDK local em busca de mudanças para realizar 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órionode_modules
.
A configuração mínima a ser configurada no watch
é "watch": {}
.
Se o código do CDK ou o código do aplicativo exigirem uma etapa de criação antes da implantação, o cdk watch
trabalha com a chave "build"
no arquivo cdk.json
.
nota
Esse comando é considerado experimental e pode ter alterações significativas no futuro.
As mesmas limitações do cdk deploy --hotswap
se aplicam ao cdk watch
. Para ter mais informações, consulte cdk deploy --hotswap
.
Uso
$
cdk watch
<arguments>
<options>
Argumentos
- ID da pilha CDK
-
O ID de constructo da pilha de CDK do seu aplicativo a observar.
Tipo: string
Obrigatório: não
Opções
Para obter uma lista das opções globais que funcionam com todos os comandos do CDK CLI, consulte Opções globais.
--build-exclude, -E
ARRAY
-
Não reconstrua o ativo com o ID fornecido.
Esta opção pode ser especificada várias vezes em um único comando.
Valor padrão:
[]
--change-set-name
STRING
-
O nome do conjunto de alterações do CloudFormation a ser criado.
--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 o CloudFormation e outras limitações de taxa Conta da AWS.
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
--exclusively, -e
BOOLEAN
-
Implante somente as pilhas solicitadas e não inclua dependências.
--force, -f
BOOLEAN
-
Sempre implante pilhas, mesmo que os modelos sejam idênticos.
Valor padrão:
false
--help, -h
BOOLEAN
-
Mostrar as informações de referência do comando
cdk watch
. --hotswap
BOOLEAN
-
Por padrão, o
cdk watch
usa implantações de hotswap quando possível para atualizar seus recursos. O CDK CLI tentará realizar uma implantação de hotswap e não retornará a uma implantação completa do CloudFormation 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
--hotswap-fallback
BOOLEAN
-
Por padrão, o
cdk watch
tenta realizar implantações de hotswap e ignora as alterações que exigem implantações do CloudFormation. Forneça ao--hotswap-fallback
uma alternativa e execute uma implantação completa do CloudFormation se a implantação do hotswap não for bem-sucedida. --logs
BOOLEAN
-
Por padrão, o
cdk watch
monitora todos os grupos de log do CloudWatch em seu aplicativo e transmite os eventos de log localmente para ostdout
.Valor padrão:
true
--progress
STRING
-
Configure como o CDK CLI exibe o progresso da implantação.
-
bar
– Exibir os eventos de implantação da pilha como uma barra de progresso, com os eventos do recurso que está sendo implantado no momento. -
events
– Fornecer um histórico completo, incluindo todos os eventos do CloudFormation.
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
-
--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 o CDK CLI 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, o CDK CLI manterá as alterações feitas até aquele momento e retornará. Isso pode ser útil em ambientes de desenvolvimento em que você está iterando rapidamente.nota
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
--toolkit-stack-name
STRING
-
O nome da pilha existente do CDK Toolkit.
Por padrão, o
cdk bootstrap
implanta uma pilha chamadaCDKToolkit
no ambiente AWS especificado. Use essa opção para fornecer um nome diferente para sua pilha de inicialização.O CDK CLI usa esse valor para verificar a versão da pilha de inicialização.
Exemplos
Observar uma pilha de CDK com ID lógico DevelopmentStack para ver as mudanças
$
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
{ "app": "mvn -e -q compile exec:java", "watch": { "include": "src/main/**", "exclude": "target/*" } }
Criar um projeto CDK usando o Java antes da implantação configurando o arquivo cdk.json
{ "app": "mvn -e -q exec:java", "build": "mvn package", "watch": { "include": "src/main/**", "exclude": "target/*" } }